diff --git a/build/frontend-legacy/package-lock.json b/build/frontend-legacy/package-lock.json index 9f839a9699710..d29ab95e114cf 100644 --- a/build/frontend-legacy/package-lock.json +++ b/build/frontend-legacy/package-lock.json @@ -84,7 +84,7 @@ "@babel/preset-typescript": "^7.29.7", "@nextcloud/babel-config": "^1.3.0", "@nextcloud/typings": "^1.10.0", - "@nextcloud/webpack-vue-config": "^7.0.2", + "@nextcloud/webpack-vue-config": "^7.0.4", "@pinia/testing": "^0.1.7", "@testing-library/jest-dom": "^6.6.4", "@testing-library/user-event": "^14.6.3", @@ -2570,9 +2570,9 @@ } }, "node_modules/@jsonjoy.com/buffers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/buffers/-/buffers-1.0.0.tgz", - "integrity": "sha512-NDigYR3PHqCnQLXYyoLbnEdzMMvzeiCWo1KOut7Q0CoIqg9tUAPKJ1iq/2nFhc5kZtexzutNY0LFjdwWL3Dw3Q==", + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/buffers/-/buffers-17.67.0.tgz", + "integrity": "sha512-tfExRpYxBvi32vPs9ZHaTjSP4fHAfzSmcahOfNxtvGHcyJel+aibkPlGeBB+7AoC6hL7lXIE++8okecBxx7lcw==", "dev": true, "license": "Apache-2.0", "peer": true, @@ -2605,21 +2605,312 @@ "tslib": "2" } }, + "node_modules/@jsonjoy.com/fs-core": { + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-core/-/fs-core-4.68.1.tgz", + "integrity": "sha512-V5oZ4Gt9WJKyQef0n9cAd0N9qjSkIBm3E4MYsgNIWBk5aINCDPKxMPo1i29rBxqiT4Ixf1epklqV9VJMKIxwlw==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/fs-node-builtins": "4.68.1", + "@jsonjoy.com/fs-node-utils": "4.68.1", + "thingies": "^2.5.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-fsa": { + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-fsa/-/fs-fsa-4.68.1.tgz", + "integrity": "sha512-HCG72UioncuO7Gw09XNVG+S85e3cq2hrUC/mexBrsWsa3mI7eePkkqWie3uVYbtsb64OR9YGQs5SqaufDRYBcg==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/fs-core": "4.68.1", + "@jsonjoy.com/fs-node-builtins": "4.68.1", + "@jsonjoy.com/fs-node-utils": "4.68.1", + "thingies": "^2.5.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-node": { + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node/-/fs-node-4.68.1.tgz", + "integrity": "sha512-R5D9mWtqdURzcOWj1vdXr3APCwX0xchtFT+kmW7fXLNDifWdDrnh26jSID8pdnUfFBxTyfHtFtTL/NWKzIH7kQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/fs-core": "4.68.1", + "@jsonjoy.com/fs-node-builtins": "4.68.1", + "@jsonjoy.com/fs-node-utils": "4.68.1", + "@jsonjoy.com/fs-print": "4.68.1", + "@jsonjoy.com/fs-snapshot": "4.68.1", + "glob-to-regex.js": "^1.0.0", + "thingies": "^2.5.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-node-builtins": { + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-builtins/-/fs-node-builtins-4.68.1.tgz", + "integrity": "sha512-HK1BTksysokNZxNspqDH0yPaqN9YgR/AYIlYiIaU2Ys4BOk5CdybI7r6BgiZuiiPiV8n4sK/kZdice7Znpy2Kw==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-node-to-fsa": { + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-to-fsa/-/fs-node-to-fsa-4.68.1.tgz", + "integrity": "sha512-lpKmU4X9e/oh8GIuAI7EXaS5QiLNM3KD15CkdhfS6PYmrGvoJqKQcyEfnLgnnaGslh/PFUMYSIZBCf2ejJGw8g==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/fs-fsa": "4.68.1", + "@jsonjoy.com/fs-node-builtins": "4.68.1", + "@jsonjoy.com/fs-node-utils": "4.68.1" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-node-utils": { + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-utils/-/fs-node-utils-4.68.1.tgz", + "integrity": "sha512-/GxfW1DWm9SCdkfbvqevLO/P5duobQfmKkHXxdMIDbcZMQeAgooAstIfZhkXpATzq9QbCQsnoWFM/dGHdZfndw==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/fs-node-builtins": "4.68.1", + "glob-to-regex.js": "^1.0.1" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-print": { + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-print/-/fs-print-4.68.1.tgz", + "integrity": "sha512-oGeZOGPYKK9v1CgeVeEDsLomH1lCnslSpqUN5GmPzrmAVGQlsmsdcXNA2O4lV8Y4xkuSuynx2ITBkUHJVaTbow==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/fs-node-utils": "4.68.1", + "tree-dump": "^1.1.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot": { + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-snapshot/-/fs-snapshot-4.68.1.tgz", + "integrity": "sha512-XZfP0FDZN32bbc4t2bZN2qRrYHg5AktJnzk22HRoKGK4BprrbNRH2k5ceSNS/kupKYcofCs+O841+xaAbjnxwQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/buffers": "^17.65.0", + "@jsonjoy.com/fs-node-utils": "4.68.1", + "@jsonjoy.com/json-pack": "^17.65.0", + "@jsonjoy.com/util": "^17.65.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/base64": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/base64/-/base64-17.67.0.tgz", + "integrity": "sha512-5SEsJGsm15aP8TQGkDfJvz9axgPwAEm98S5DxOuYe8e1EbfajcDmgeXXzccEjh+mLnjqEKrkBdjHWS5vFNwDdw==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/codegen": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/codegen/-/codegen-17.67.0.tgz", + "integrity": "sha512-idnkUplROpdBOV0HMcwhsCUS5TRUi9poagdGs70A6S4ux9+/aPuKbh8+UYRTLYQHtXvAdNfQWXDqZEx5k4Dj2Q==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/json-pack": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-17.67.0.tgz", + "integrity": "sha512-t0ejURcGaZsn1ClbJ/3kFqSOjlryd92eQY465IYrezsXmPcfHPE/av4twRSxf6WE+TkZgLY+71vCZbiIiFKA/w==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/base64": "17.67.0", + "@jsonjoy.com/buffers": "17.67.0", + "@jsonjoy.com/codegen": "17.67.0", + "@jsonjoy.com/json-pointer": "17.67.0", + "@jsonjoy.com/util": "17.67.0", + "hyperdyperid": "^1.2.0", + "thingies": "^2.5.0", + "tree-dump": "^1.1.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/json-pointer": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pointer/-/json-pointer-17.67.0.tgz", + "integrity": "sha512-+iqOFInH+QZGmSuaybBUNdh7yvNrXvqR+h3wjXm0N/3JK1EyyFAeGJvqnmQL61d1ARLlk/wJdFKSL+LHJ1eaUA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/util": "17.67.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/fs-snapshot/node_modules/@jsonjoy.com/util": { + "version": "17.67.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/util/-/util-17.67.0.tgz", + "integrity": "sha512-6+8xBaz1rLSohlGh68D1pdw3AwDi9xydm8QNlAFkvnavCJYSze+pxoW2VKP8p308jtlMRLs5NTHfPlZLd4w7ew==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/buffers": "17.67.0", + "@jsonjoy.com/codegen": "17.67.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, "node_modules/@jsonjoy.com/json-pack": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.14.0.tgz", - "integrity": "sha512-LpWbYgVnKzphN5S6uss4M25jJ/9+m6q6UJoeN6zTkK4xAGhKsiBRPVeF7OYMWonn5repMQbE5vieRXcMUrKDKw==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.21.0.tgz", + "integrity": "sha512-+AKG+R2cfZMShzrF2uQw34v3zbeDYUqnQ+jg7ORic3BGtfw9p/+N6RJbq/kkV8JmYZaINknaEQ2m0/f693ZPpg==", "dev": true, "license": "Apache-2.0", "peer": true, "dependencies": { "@jsonjoy.com/base64": "^1.1.2", - "@jsonjoy.com/buffers": "^1.0.0", + "@jsonjoy.com/buffers": "^1.2.0", "@jsonjoy.com/codegen": "^1.0.0", - "@jsonjoy.com/json-pointer": "^1.0.1", + "@jsonjoy.com/json-pointer": "^1.0.2", "@jsonjoy.com/util": "^1.9.0", "hyperdyperid": "^1.2.0", - "thingies": "^2.5.0" + "thingies": "^2.5.0", + "tree-dump": "^1.1.0" }, "engines": { "node": ">=10.0" @@ -2632,6 +2923,24 @@ "tslib": "2" } }, + "node_modules/@jsonjoy.com/json-pack/node_modules/@jsonjoy.com/buffers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/buffers/-/buffers-1.2.1.tgz", + "integrity": "sha512-12cdlDwX4RUM3QxmUbVJWqZ/mrK6dFQH4Zxq6+r1YXKXYBNgZXndx2qbCJwh3+WWkCSn67IjnlG3XYTvmvYtgA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, "node_modules/@jsonjoy.com/json-pointer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pointer/-/json-pointer-1.0.2.tgz", @@ -2676,6 +2985,24 @@ "tslib": "2" } }, + "node_modules/@jsonjoy.com/util/node_modules/@jsonjoy.com/buffers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/buffers/-/buffers-1.2.1.tgz", + "integrity": "sha512-12cdlDwX4RUM3QxmUbVJWqZ/mrK6dFQH4Zxq6+r1YXKXYBNgZXndx2qbCJwh3+WWkCSn67IjnlG3XYTvmvYtgA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, "node_modules/@leichtgewicht/ip-codec": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", @@ -3101,21 +3428,6 @@ "vue": "^3.5.0" } }, - "node_modules/@nextcloud/dialogs/node_modules/chokidar": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", - "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", - "license": "MIT", - "dependencies": { - "readdirp": "^5.0.0" - }, - "engines": { - "node": ">= 20.19.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/@nextcloud/dialogs/node_modules/floating-vue": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/floating-vue/-/floating-vue-5.2.2.tgz", @@ -3183,19 +3495,6 @@ } } }, - "node_modules/@nextcloud/dialogs/node_modules/readdirp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz", - "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==", - "license": "MIT", - "engines": { - "node": ">= 20.19.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/@nextcloud/dialogs/node_modules/rehype-react": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/rehype-react/-/rehype-react-8.0.0.tgz", @@ -3696,21 +3995,6 @@ "vue": "^3.5.0" } }, - "node_modules/@nextcloud/password-confirmation/node_modules/chokidar": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", - "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", - "license": "MIT", - "dependencies": { - "readdirp": "^5.0.0" - }, - "engines": { - "node": ">= 20.19.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/@nextcloud/password-confirmation/node_modules/floating-vue": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/floating-vue/-/floating-vue-5.2.2.tgz", @@ -3778,19 +4062,6 @@ } } }, - "node_modules/@nextcloud/password-confirmation/node_modules/readdirp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz", - "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==", - "license": "MIT", - "engines": { - "node": ">= 20.19.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/@nextcloud/password-confirmation/node_modules/rehype-react": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/rehype-react/-/rehype-react-8.0.0.tgz", @@ -4183,9 +4454,9 @@ } }, "node_modules/@nextcloud/webpack-vue-config": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-7.0.2.tgz", - "integrity": "sha512-7pzQptkQ4XEi9hyhLjdJLAyG4ZnnHuDNsOnMBc1RcRniMCTBp8xD5T1H3gCm4lKmB5/pEyuTK52/rj1w/xqmKw==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-7.0.4.tgz", + "integrity": "sha512-JM4gHZZCLGVtxiILjb0RvQQRjBFbau0hQHQyNrLR+wkY3UaLMXkj9P8dT+w8/d6WIOnwLbQFY2Duox6crbgh5Q==", "dev": true, "hasInstallScript": true, "license": "AGPL-3.0-or-later", @@ -4196,16 +4467,17 @@ "@babel/core": "^7.22.9", "babel-loader": "^10.0.0", "css-loader": "^7.1.1", + "minimizer-webpack-plugin": "^5.6.1", "node-polyfill-webpack-plugin": "4.0.0", "sass": "^1.64.2", - "sass-loader": "^16.0.2", + "sass-loader": "^17.0.0", "style-loader": "^4.0.0", "ts-loader": "^9.4.4", "vue": "^2.7.16 || ^3.5.13", "vue-loader": "^15.11.1 || ^17.4.2", "webpack": "^5.88.2", "webpack-cli": "^6.0.1", - "webpack-dev-server": "^5.0.2" + "webpack-dev-server": "^6.0.0" } }, "node_modules/@noble/hashes": { @@ -4577,114 +4849,114 @@ } }, "node_modules/@peculiar/asn1-cms": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-cms/-/asn1-cms-2.8.0.tgz", - "integrity": "sha512-NgekZOrSJFSBFLFoLfwePguAWAx7z1+f2TEsWFUMyiqqfntZ4+S/S5hzqME3q4pCA0iOsFKdwiQ35dwY24eVqA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-cms/-/asn1-cms-2.9.0.tgz", + "integrity": "sha512-VKQz6sJYgSxtGaK6UdnNBUx7hmSdg0K331qrEWh5qxpQsyZGWBjxbq05AJ2bTWWjd7d+nJIxFzwvsR5T7DWC/A==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-schema": "^2.8.0", - "@peculiar/asn1-x509": "^2.8.0", - "@peculiar/asn1-x509-attr": "^2.8.0", + "@peculiar/asn1-schema": "^2.9.0", + "@peculiar/asn1-x509": "^2.9.0", + "@peculiar/asn1-x509-attr": "^2.9.0", "asn1js": "^3.0.10", "tslib": "^2.8.1" } }, "node_modules/@peculiar/asn1-csr": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-csr/-/asn1-csr-2.8.0.tgz", - "integrity": "sha512-akbF8+uvleHs8sejNPQxwmVFuInAg6FMNHOwMILXfP518YfFJwdR3jr6oNUPOaEJfuEhn/vkNOCIT6ASUd4mbg==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-csr/-/asn1-csr-2.9.0.tgz", + "integrity": "sha512-SbxRzHiWnRdiDuiiji/RLsJxu2au4hmSZSKK7GQOgNr2BVvheAlFQST9qqzRchUcZ6wvcyRuPXIfYXVzLoZ/5g==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-schema": "^2.8.0", - "@peculiar/asn1-x509": "^2.8.0", + "@peculiar/asn1-schema": "^2.9.0", + "@peculiar/asn1-x509": "^2.9.0", "asn1js": "^3.0.10", "tslib": "^2.8.1" } }, "node_modules/@peculiar/asn1-ecc": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-ecc/-/asn1-ecc-2.8.0.tgz", - "integrity": "sha512-ohwlk+u9Rv2NOAY1c6MfHj45ATVF8R1DUN/WCgABiRtLi2ZftlZWZX7KvpAbU8v9xPcmoILfELeEABj/rn18AQ==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-ecc/-/asn1-ecc-2.9.0.tgz", + "integrity": "sha512-vNspHtTd9h6e8c2lMW+B/VHEUD+HRFV0fj/Gvz7SaJbwiecA8dxd96UTFPYI1PR8k7qwjjW9AFEyI+LuyVi4Kw==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-schema": "^2.8.0", - "@peculiar/asn1-x509": "^2.8.0", + "@peculiar/asn1-schema": "^2.9.0", + "@peculiar/asn1-x509": "^2.9.0", "asn1js": "^3.0.10", "tslib": "^2.8.1" } }, "node_modules/@peculiar/asn1-pfx": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-pfx/-/asn1-pfx-2.8.0.tgz", - "integrity": "sha512-5yof1ytoB++RQtaFbqSUJ8pxDJtZT6vbVqZ8XoJ61ph7UjNVvfFwAilnCodqkNsAodpy13gDhoxZXw00pghnyg==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pfx/-/asn1-pfx-2.9.0.tgz", + "integrity": "sha512-A6bX+gZr69U38Pg1mWvPrM1eRba6L6kLR8iVG+bJtKj3qSv2rSNmlXLtej7ZOkEWt6xL6PiJD73uFEdQI3BXCg==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-cms": "^2.8.0", - "@peculiar/asn1-pkcs8": "^2.8.0", - "@peculiar/asn1-rsa": "^2.8.0", - "@peculiar/asn1-schema": "^2.8.0", + "@peculiar/asn1-cms": "^2.9.0", + "@peculiar/asn1-pkcs8": "^2.9.0", + "@peculiar/asn1-rsa": "^2.9.0", + "@peculiar/asn1-schema": "^2.9.0", "asn1js": "^3.0.10", "tslib": "^2.8.1" } }, "node_modules/@peculiar/asn1-pkcs8": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-pkcs8/-/asn1-pkcs8-2.8.0.tgz", - "integrity": "sha512-qAKXtLpBEw9LqhKpjw3ajZSXlBur+ipW+y2ivVBQAG6F6qRx94yO+1ZR4mvw+YaCfKSaOzLeYEzsPaBp4SJELA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pkcs8/-/asn1-pkcs8-2.9.0.tgz", + "integrity": "sha512-1JH4FliKQ3trkMD17X+bKGsph5TsiM+AiiqnVKr1wxA/GoUSDHiWG/zROzLAbDIA7eclBCjQsp8hrBEJk7LRUQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-schema": "^2.8.0", - "@peculiar/asn1-x509": "^2.8.0", + "@peculiar/asn1-schema": "^2.9.0", + "@peculiar/asn1-x509": "^2.9.0", "asn1js": "^3.0.10", "tslib": "^2.8.1" } }, "node_modules/@peculiar/asn1-pkcs9": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-pkcs9/-/asn1-pkcs9-2.8.0.tgz", - "integrity": "sha512-b5nDWCnkV60+cQ141D6sVVwK9nz64R5n3zSVnklGd+ECdkW2Ol3U1a6yYFlalpSOaD557yuJB64A+q42jG7lUQ==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pkcs9/-/asn1-pkcs9-2.9.0.tgz", + "integrity": "sha512-igArY6bpCI6tOPm2EU9QPrXuKq2s1iraLCTym4UlooYdzcRDIPCRUN9TAEcqZ5rZhA+HiPdFKTbDP9vneN/tsg==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-cms": "^2.8.0", - "@peculiar/asn1-pfx": "^2.8.0", - "@peculiar/asn1-pkcs8": "^2.8.0", - "@peculiar/asn1-schema": "^2.8.0", - "@peculiar/asn1-x509": "^2.8.0", - "@peculiar/asn1-x509-attr": "^2.8.0", + "@peculiar/asn1-cms": "^2.9.0", + "@peculiar/asn1-pfx": "^2.9.0", + "@peculiar/asn1-pkcs8": "^2.9.0", + "@peculiar/asn1-schema": "^2.9.0", + "@peculiar/asn1-x509": "^2.9.0", + "@peculiar/asn1-x509-attr": "^2.9.0", "asn1js": "^3.0.10", "tslib": "^2.8.1" } }, "node_modules/@peculiar/asn1-rsa": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-rsa/-/asn1-rsa-2.8.0.tgz", - "integrity": "sha512-zHEUlCqB2mk7x2lxDwHHJy7hWZOPdGHVlsmITWKB5/PbQo61atbu9PJ/0r9dQNMwFzbKPXZ8uK8/91eUhRznSg==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-rsa/-/asn1-rsa-2.9.0.tgz", + "integrity": "sha512-vOD7Q4UmQWhlMYuWJawS2sD+/JcPKJNtyQuFZx09r+KFhm5/HxfGak63y/m56cpBjmb5k6PeRlQf1fvLQAieUA==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-schema": "^2.8.0", - "@peculiar/asn1-x509": "^2.8.0", + "@peculiar/asn1-schema": "^2.9.0", + "@peculiar/asn1-x509": "^2.9.0", "asn1js": "^3.0.10", "tslib": "^2.8.1" } }, "node_modules/@peculiar/asn1-schema": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.8.0.tgz", - "integrity": "sha512-7YT0U/ze0tF2QOBbE15gKZwy5tvgGyLRiRHLzhlbOpf7BT032oBSd0haZqXn5W6l26WLlu3dyxzjM+2638/z2Q==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.9.0.tgz", + "integrity": "sha512-AKvPMOM7LfK0uFe1m7o7+veOa8xQGPqsqOrKi3QKgCElzwjGp39mbhr2g7mt/v/mXQHiIvJmDj5cJS173x8Q9Q==", "dev": true, "license": "MIT", "peer": true, @@ -4695,29 +4967,29 @@ } }, "node_modules/@peculiar/asn1-x509": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-x509/-/asn1-x509-2.8.0.tgz", - "integrity": "sha512-N0CMuhWUzsWEVq6F1q9X6+VKUnWzSW+cSVg+aPaGGwDdbFoFWTYgin5MHwXgpWd6y9COMBxnfy/Qc+Xc7F0Zwg==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-x509/-/asn1-x509-2.9.0.tgz", + "integrity": "sha512-b9Na83rhRFQBd5CuMmuEqokYhmyWUbG7mNZl/thGhBwLpCdiZ85TZ3WFhF7OVgOekC5uKhLk4C3HKtdiScCMdQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-schema": "^2.8.0", + "@peculiar/asn1-schema": "^2.9.0", "@peculiar/utils": "^2.0.2", "asn1js": "^3.0.10", "tslib": "^2.8.1" } }, "node_modules/@peculiar/asn1-x509-attr": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-x509-attr/-/asn1-x509-attr-2.8.0.tgz", - "integrity": "sha512-tHjkfS/qhMnmrlB2J9NhflQlQ7In3khO3CfmVrriOlpTeErY9ZIKOso1hQ5JQiyrJ7ShvqVPk7E5fQmbclkSKA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-x509-attr/-/asn1-x509-attr-2.9.0.tgz", + "integrity": "sha512-f+u+EyGjfPvPzvr0+rlh/TFEO7LWt84mEwQynCUYr4F6urf/8s6+ESJ23qfSn1aamkZR6AuBNaC62iEsGvp0+w==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@peculiar/asn1-schema": "^2.8.0", - "@peculiar/asn1-x509": "^2.8.0", + "@peculiar/asn1-schema": "^2.9.0", + "@peculiar/asn1-x509": "^2.9.0", "asn1js": "^3.0.10", "tslib": "^2.8.1" } @@ -5494,23 +5766,22 @@ } }, "node_modules/@types/express": { - "version": "4.17.25", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.25.tgz", - "integrity": "sha512-dVd04UKsfpINUnK0yBoYHDF3xu7xVH4BuDotC/xGuycx4CgbP48X/KF/586bcObxT0HENHXEU8Nqtu6NR+eKhw==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/express/-/express-5.0.6.tgz", + "integrity": "sha512-sKYVuV7Sv9fbPIt/442koC7+IIwK5olP1KWeD88e/idgoJqDm3JV/YUiPwkoKK92ylff2MGxSz1CSjsXelx0YA==", "dev": true, "license": "MIT", "peer": true, "dependencies": { "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "^1" + "@types/express-serve-static-core": "^5.0.0", + "@types/serve-static": "^2" } }, "node_modules/@types/express-serve-static-core": { - "version": "4.19.6", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", - "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.1.3.tgz", + "integrity": "sha512-dPfW8NFiOF4wOHc7+N/QSxlY9cfSsenewGbAz8C8U/MULPd/YZ27LvJUIlzaXie7e6Ove9YunJGgC9tbHD2cKw==", "dev": true, "license": "MIT", "peer": true, @@ -5538,17 +5809,6 @@ "license": "MIT", "peer": true }, - "node_modules/@types/http-proxy": { - "version": "1.17.16", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.16.tgz", - "integrity": "sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/jquery": { "version": "3.5.16", "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.16.tgz", @@ -5580,14 +5840,6 @@ "@types/unist": "*" } }, - "node_modules/@types/mime": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", - "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/@types/ms": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", @@ -5605,9 +5857,9 @@ } }, "node_modules/@types/qs": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.14.0.tgz", - "integrity": "sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==", + "version": "6.15.1", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.15.1.tgz", + "integrity": "sha512-GZHUBZR9hckSUhrxmp1nG6NwdpM9fCunJwyThLW1X3AyHgd9IlHb6VANpQQqDr2o/qQp6McZ3y/IA2rVzKzSbw==", "dev": true, "license": "MIT", "peer": true @@ -5637,14 +5889,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/retry": { - "version": "0.12.2", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.2.tgz", - "integrity": "sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/@types/semver": { "version": "7.7.1", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz", @@ -5652,14 +5896,13 @@ "license": "MIT" }, "node_modules/@types/send": { - "version": "0.17.5", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.5.tgz", - "integrity": "sha512-z6F2D3cOStZvuk2SaP6YrwkNO65iTZcwA2ZkSABegdkAh/lf+Aa/YQndZVfmEXT5vgAp6zv06VQ3ejSVjAny4w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/send/-/send-1.2.1.tgz", + "integrity": "sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@types/mime": "^1", "@types/node": "*" } }, @@ -5675,16 +5918,15 @@ } }, "node_modules/@types/serve-static": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.8.tgz", - "integrity": "sha512-roei0UY3LhpOJvjbIP6ZZFngyLKl5dskOtDhxY5THRSpO+ZI+nzJ+m5yUMzGrp89YRa7lvknKkMYjqQFGwA7Sg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-2.2.0.tgz", + "integrity": "sha512-8mam4H1NHLtu7nmtalF7eyBH14QyOASmcxHhSfEoRyr0nP/YdoesEtU+uSRvMe96TW/HPTtkoKqQLl53N7UXMQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { "@types/http-errors": "*", - "@types/node": "*", - "@types/send": "*" + "@types/node": "*" } }, "node_modules/@types/set-cookie-parser": { @@ -5703,17 +5945,6 @@ "integrity": "sha512-TC0dmN0K8YcWEAEfiPi5gJP14eJe30TTGjkvek3iM/1NdHHsdCA/Td6GvNndMOo/iSnIsZ4HuuhrYPDAmbxzww==", "license": "MIT" }, - "node_modules/@types/sockjs": { - "version": "0.3.36", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", - "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/statuses": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/@types/statuses/-/statuses-2.0.6.tgz", @@ -6548,20 +6779,60 @@ } }, "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz", + "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "mime-types": "^3.0.0", + "negotiator": "^1.0.0" }, "engines": { "node": ">= 0.6" } }, + "node_modules/accepts/node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/mime-types": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", + "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "mime-db": "^1.54.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/accepts/node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/acorn": { "version": "8.16.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", @@ -6693,21 +6964,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/argue-cli": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/argue-cli/-/argue-cli-2.1.0.tgz", @@ -6744,14 +7000,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/array.prototype.reduce": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.8.tgz", @@ -7141,20 +7389,6 @@ "node": "*" } }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/birpc": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/birpc/-/birpc-2.9.0.tgz", @@ -7182,89 +7416,52 @@ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.5.tgz", "integrity": "sha512-Vq886eXykuP5E6HcKSSStP3bJgrE6In5WKxVUvJ8XGpWWYs2xZHWqUwzCtGgEtBcxyd57KBFDPFoUfNzdaHCNg==", "license": "MIT" - }, - "node_modules/body-parser": { - "version": "1.20.5", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.5.tgz", - "integrity": "sha512-3grm+/2tUOvu2cjJkvsIxrv/wVpfXQW4PsQHYm7yk4vfpu7Ekl6nEsYBoJUL6qDwZUx8wUhQ8tR2qz+ad9c9OA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "bytes": "~3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "~1.2.0", - "http-errors": "~2.0.1", - "iconv-lite": "~0.4.24", - "on-finished": "~2.4.1", - "qs": "~6.15.1", - "raw-body": "~2.5.3", - "type-is": "~1.6.18", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/http-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", - "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", + }, + "node_modules/body-parser": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.3.0.tgz", + "integrity": "sha512-2cGmJupaNgg+QUwVLAucDuWuoMZ6EX9iHDRswZ5lsNYEmwPaRknMPCLZz07yTzVq/83p4o/wzbDZbBrTvGGTIw==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "depd": "~2.0.0", - "inherits": "~2.0.4", - "setprototypeof": "~1.2.0", - "statuses": "~2.0.2", - "toidentifier": "~1.0.1" + "bytes": "^3.1.2", + "content-type": "^2.0.0", + "debug": "^4.4.3", + "http-errors": "^2.0.1", + "iconv-lite": "^0.7.2", + "on-finished": "^2.4.1", + "qs": "^6.15.2", + "raw-body": "^3.0.2", + "type-is": "^2.1.0" }, "engines": { - "node": ">= 0.8" + "node": ">=18" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/express" } }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/body-parser/node_modules/statuses": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", - "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", + "node_modules/body-parser/node_modules/content-type": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz", + "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==", "dev": true, "license": "MIT", "peer": true, "engines": { - "node": ">= 0.8" + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/bonjour-service": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.3.0.tgz", - "integrity": "sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==", + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.4.4.tgz", + "integrity": "sha512-jCZcVv7eoc4QesRscwEZtSROBen+6LpKAmBIsQYQrsAeVHLyMXWX/t6eIV5KiRZYNUBl8eVqImEEMQ8L5+c/Kw==", "dev": true, "license": "MIT", "peer": true, @@ -7689,29 +7886,18 @@ } }, "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", "license": "MIT", - "peer": true, "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "readdirp": "^5.0.0" }, "engines": { - "node": ">= 8.10.0" + "node": ">= 20.19.0" }, "funding": { "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" } }, "node_modules/chrome-trace-event": { @@ -8009,17 +8195,6 @@ "license": "MIT", "peer": true }, - "node_modules/compression/node_modules/negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/condense-newlines": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz", @@ -8113,17 +8288,18 @@ "peer": true }, "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz", + "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==", "dev": true, "license": "MIT", "peer": true, - "dependencies": { - "safe-buffer": "5.2.1" - }, "engines": { - "node": ">= 0.6" + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/content-type": { @@ -8159,12 +8335,15 @@ } }, "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz", + "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==", "dev": true, "license": "MIT", - "peer": true + "peer": true, + "engines": { + "node": ">=6.6.0" + } }, "node_modules/core-js": { "version": "3.49.0", @@ -8577,9 +8756,9 @@ } }, "node_modules/default-browser": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz", - "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.5.0.tgz", + "integrity": "sha512-H9LMLr5zwIbSxrmvikGuI/5KGhZ8E2zH3stkMgM5LpOWDutGM2JZaj460Udnf1a+946zc7YBgrqEWwbk7zHvGw==", "dev": true, "license": "MIT", "peer": true, @@ -8595,9 +8774,9 @@ } }, "node_modules/default-browser-id": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.0.tgz", - "integrity": "sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.1.tgz", + "integrity": "sha512-x1VCxdX4t+8wVfd1so/9w+vQ4vx7lKd2Qp5tDRutErwmR85OgmfX7RlLRMWafRMY7hbEiXIbudNrjOAPa/hL8Q==", "dev": true, "license": "MIT", "peer": true, @@ -8725,18 +8904,6 @@ "minimalistic-assert": "^1.0.0" } }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, "node_modules/detect-libc": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", @@ -8751,14 +8918,6 @@ "node": ">=0.10" } }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/devlop": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", @@ -9018,9 +9177,9 @@ } }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, "license": "MIT", "peer": true, @@ -9406,14 +9565,6 @@ "node": ">=6" } }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", @@ -9465,47 +9616,44 @@ } }, "node_modules/express": { - "version": "4.22.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.22.2.tgz", - "integrity": "sha512-IuL+Elrou2ZvCFHs18/CIzy2Nzvo25nZ1/D2eIZlz7c+QUayAcYoiM2BthCjs+EBHVpjYjcuLDAiCWgeIX3X1Q==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz", + "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "~1.20.5", - "content-disposition": "~0.5.4", - "content-type": "~1.0.4", - "cookie": "~0.7.1", - "cookie-signature": "~1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.3.1", - "fresh": "~0.5.2", - "http-errors": "~2.0.0", - "merge-descriptors": "1.0.3", - "methods": "~1.1.2", - "on-finished": "~2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "~0.1.12", - "proxy-addr": "~2.0.7", - "qs": "~6.15.1", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "~0.19.0", - "serve-static": "~1.16.2", - "setprototypeof": "1.2.0", - "statuses": "~2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" + "accepts": "^2.0.0", + "body-parser": "^2.2.1", + "content-disposition": "^1.0.0", + "content-type": "^1.0.5", + "cookie": "^0.7.1", + "cookie-signature": "^1.2.1", + "debug": "^4.4.0", + "depd": "^2.0.0", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "etag": "^1.8.1", + "finalhandler": "^2.1.0", + "fresh": "^2.0.0", + "http-errors": "^2.0.0", + "merge-descriptors": "^2.0.0", + "mime-types": "^3.0.0", + "on-finished": "^2.4.1", + "once": "^1.4.0", + "parseurl": "^1.3.3", + "proxy-addr": "^2.0.7", + "qs": "^6.14.0", + "range-parser": "^1.2.1", + "router": "^2.2.0", + "send": "^1.1.0", + "serve-static": "^2.2.0", + "statuses": "^2.0.1", + "type-is": "^2.0.1", + "vary": "^1.1.2" }, "engines": { - "node": ">= 0.10.0" + "node": ">= 18" }, "funding": { "type": "opencollective", @@ -9523,73 +9671,33 @@ "node": ">= 0.6" } }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "node_modules/express/node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "dev": true, "license": "MIT", "peer": true, "engines": { - "node": ">= 0.8" + "node": ">= 0.6" } }, - "node_modules/express/node_modules/finalhandler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "node_modules/express/node_modules/mime-types": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", + "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" + "mime-db": "^1.54.0" }, "engines": { - "node": ">= 0.8" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.13.tgz", - "integrity": "sha512-A/AGNMFN3c8bOlvV9RreMdrv7jsmF9XIfDeCd87+I8RNg6s78BhJxMu69NEMHBSJFxKidViTEdruRwEk/WIKqA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/exsolve": { @@ -9730,20 +9838,6 @@ "dev": true, "license": "MIT" }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/fetch-blob": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", @@ -9823,6 +9917,29 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/finalhandler": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz", + "integrity": "sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "^4.4.0", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "on-finished": "^2.4.1", + "parseurl": "^1.3.3", + "statuses": "^2.0.1" + }, + "engines": { + "node": ">= 18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/find-babel-config": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/find-babel-config/-/find-babel-config-2.1.2.tgz", @@ -10015,14 +10132,14 @@ } }, "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz", + "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", "dev": true, "license": "MIT", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/fs-extra": { @@ -10213,24 +10330,10 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/glob-to-regex.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/glob-to-regex.js/-/glob-to-regex.js-1.0.1.tgz", - "integrity": "sha512-CG/iEvgQqfzoVsMUbxSJcwbG2JwyZ3naEqPkeltwl0BSS8Bp83k3xlGms+0QdWFUAwV+uvo80wNswKF6FWEkKg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/glob-to-regex.js/-/glob-to-regex.js-1.2.0.tgz", + "integrity": "sha512-QMwlOQKU/IzqMUOAZWubUOT8Qft+Y0KQWnX9nK3ch0CJg0tTp4TvGZsTfudYKv2NzoQSyPcnA6TYeIQ3jGichQ==", "dev": true, "license": "Apache-2.0", "peer": true, @@ -10316,14 +10419,6 @@ "node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0" } }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/handlebars": { "version": "4.7.9", "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.9.tgz", @@ -10690,20 +10785,6 @@ "integrity": "sha512-ECg1JFG0YzehicQaogenlcs2qg6WsXQsxtnbr1i696u5tLUjtJdQAh0u2g0Q5YV45f263Ta1GnUJsc8WIfJf4Q==", "license": "MIT" }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -10711,105 +10792,44 @@ "dev": true, "license": "MIT" }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-errors/node_modules/statuses": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-parser-js": { - "version": "0.5.10", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz", - "integrity": "sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/http-proxy-middleware": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.10.tgz", - "integrity": "sha512-RKzRWNPxUZqbuk3BC5mGVJbBnWgr+diEnjJexIOytFbBzDy88Fbh/YvBr3DsNrl1jYAfjWfpATEv0NO35FDuPQ==", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" + "depd": "~2.0.0", + "inherits": "~2.0.4", + "setprototypeof": "~1.2.0", + "statuses": "~2.0.2", + "toidentifier": "~1.0.1" }, "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" + "node": ">= 0.8" }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "node_modules/http-proxy-middleware": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-4.2.0.tgz", + "integrity": "sha512-ZA+oNOoM+GLoFTIzhkJptVQov73Srep2LBqhF8hG8CIPKO3nam1jonXVQ/QUH8RbwsmaaVz2SOJdzBNBHNtKbw==", "dev": true, "license": "MIT", "peer": true, - "engines": { - "node": ">=10" + "dependencies": { + "debug": "^4.4.3", + "httpxy": "^0.5.4", + "is-glob": "^4.0.3", + "is-plain-obj": "^4.1.0", + "micromatch": "^4.0.8" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^22.15.0 || ^24.0.0 || >=26.0.0" } }, "node_modules/https-browserify": { @@ -10833,6 +10853,14 @@ "node": ">= 6" } }, + "node_modules/httpxy": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/httpxy/-/httpxy-0.5.5.tgz", + "integrity": "sha512-uDjmnPyp1q4Sgzf3w+J/Fc6UqcCEj0x4Wjp7OqK5dGhNeDgpyrAmnS6ey8QWrX3SWDon2DMKf9sBa5X9+CVyMA==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/hyperdyperid": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/hyperdyperid/-/hyperdyperid-1.2.0.tgz", @@ -10845,17 +10873,21 @@ } }, "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.3.tgz", + "integrity": "sha512-IKXpvIzjnC9XTAUbVBcMfGS0EPaIXtW6v+zr+RRp+hqULEpo0owZax6wyRwPOJbWbzjYspQwusTsfVr0ifh4uQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { "node": ">=0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/icss-utils": { @@ -11045,9 +11077,9 @@ } }, "node_modules/ipaddr.js": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.4.0.tgz", - "integrity": "sha512-9VGk3HGanVE6JoZXHiCpnGy5X0jYDnN4EA4lntFPj+1vIWlFhIylq2CrrCOJH9EAhc5CYhq18F2Av2tgoAPsYQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.5.0.tgz", + "integrity": "sha512-aq+t5NAc+cS6rZQQVWC2x98CPqGtKKTMDd4Gaodv0wShnItdKg/51djkGJ1hqH+Oy0ivDftCbSLCQob8zso01w==", "dev": true, "license": "MIT", "peer": true, @@ -11162,20 +11194,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/is-boolean-object": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", @@ -11377,6 +11395,20 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/is-in-ssh": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-in-ssh/-/is-in-ssh-1.0.0.tgz", + "integrity": "sha512-jYa6Q9rH90kR1vKB6NM7qqd1mge3Fx4Dhw5TVlK1MUBqhEOuCagrEHMevNuCcbECmXZ0ThXkRm+Ymr51HwEPAw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-inside-container": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", @@ -11449,9 +11481,9 @@ } }, "node_modules/is-network-error": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-network-error/-/is-network-error-1.3.0.tgz", - "integrity": "sha512-6oIwpsgRfnDiyEDLMay/GqCl3HoAtH5+RUKW29gYkL0QA+ipzpDLA16yQs7/RHCSu+BwgbJaOUqa4A99qNVQVw==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-network-error/-/is-network-error-1.3.2.tgz", + "integrity": "sha512-PhBY86zaxNZUuWP6h13Vu5oFe0XY6/UlKzQnYFELzGVHygP3MxmvTfYSG7GN3aIab/iWudSMgjSnG9Dq+nHrgA==", "dev": true, "license": "MIT", "peer": true, @@ -11531,6 +11563,14 @@ "node": ">=0.10.0" } }, + "node_modules/is-promise": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", + "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/is-regex": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", @@ -12589,24 +12629,36 @@ } }, "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.1.tgz", + "integrity": "sha512-yz3xRaG20c6/BOzvYoDaGtPmGscs7YivItZEEqe6GbwNfHuxu9YNmvnEkMzKldAGY4/80pRcQRZSEnhquk9XuQ==", "dev": true, "license": "MIT", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/memfs": { - "version": "4.48.1", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.48.1.tgz", - "integrity": "sha512-vWO+1ROkhOALF1UnT9aNOOflq5oFDlqwTXaPg6duo07fBLxSH0+bcF0TY1lbA1zTNKyGgDxgaDdKx5MaewLX5A==", + "version": "4.68.1", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.68.1.tgz", + "integrity": "sha512-OD+IDRUvIxu3QHL+nFm9gdyugInD27FDJ+sl4B5QgomPHXMlbw+GP918P8VNKu2FkNlVeqBkpzkwROpamVifRw==", "dev": true, "license": "Apache-2.0", "peer": true, "dependencies": { + "@jsonjoy.com/fs-core": "4.68.1", + "@jsonjoy.com/fs-fsa": "4.68.1", + "@jsonjoy.com/fs-node": "4.68.1", + "@jsonjoy.com/fs-node-builtins": "4.68.1", + "@jsonjoy.com/fs-node-to-fsa": "4.68.1", + "@jsonjoy.com/fs-node-utils": "4.68.1", + "@jsonjoy.com/fs-print": "4.68.1", + "@jsonjoy.com/fs-snapshot": "4.68.1", "@jsonjoy.com/json-pack": "^1.11.0", "@jsonjoy.com/util": "^1.9.0", "glob-to-regex.js": "^1.0.1", @@ -12620,12 +12672,15 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", - "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz", + "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==", "dev": true, "license": "MIT", "peer": true, + "engines": { + "node": ">=18" + }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } @@ -12647,17 +12702,6 @@ "devOptional": true, "license": "MIT" }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/micromark": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", @@ -13444,15 +13488,6 @@ } } }, - "node_modules/msw/node_modules/statuses": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", - "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/muggle-string": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", @@ -13503,9 +13538,9 @@ } }, "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "dev": true, "license": "MIT", "peer": true, @@ -13733,17 +13768,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/nostics": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/nostics/-/nostics-1.1.4.tgz", @@ -13843,14 +13867,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/obug": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/obug/-/obug-2.1.1.tgz", @@ -13887,21 +13903,34 @@ "node": ">= 0.8" } }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "wrappy": "1" + } + }, "node_modules/open": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/open/-/open-10.2.0.tgz", - "integrity": "sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/open/-/open-11.0.1.tgz", + "integrity": "sha512-NzwMUB6C1D0+Kd+9iMS/H4k+Ck3cTX6Ckyfr/gAGlmvSE1LUQZnEZvWBi4PYmMwH/S5SMeTXnE+9uAz8uF+pWw==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "default-browser": "^5.2.1", + "default-browser": "^5.4.0", "define-lazy-prop": "^3.0.0", + "is-in-ssh": "^1.0.0", "is-inside-container": "^1.0.0", - "wsl-utils": "^0.1.0" + "powershell-utils": "^0.2.0", + "wsl-utils": "^1.0.0" }, "engines": { - "node": ">=18" + "node": ">=20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -14035,19 +14064,17 @@ "license": "MIT" }, "node_modules/p-retry": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-6.2.1.tgz", - "integrity": "sha512-hEt02O4hUct5wtwg4H4KcWgDdm+l1bOaEy/hWzd8xtXB9BqxTWBBhb+2ImAtH4Cv4rPjV76xN3Zumqk3k3AhhQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-8.0.0.tgz", + "integrity": "sha512-kFVqH1HxOHp8LupNsOys7bSV09VYTRLxarH/mokO4Rqhk6wGi70E0jh4VzvVGXfEVNggHoHLAMWsQqHyU1Ey9A==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "@types/retry": "0.12.2", - "is-network-error": "^1.0.0", - "retry": "^0.13.1" + "is-network-error": "^1.3.0" }, "engines": { - "node": ">=16.17" + "node": ">=22" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -14800,6 +14827,20 @@ "license": "MIT", "peer": true }, + "node_modules/powershell-utils": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/powershell-utils/-/powershell-utils-0.2.0.tgz", + "integrity": "sha512-ZlsFlG7MtSFCoc5xreOvBAozCJ6Pf06opgJjh9ONEv418xpZSAzNjstD36C6+JwOnfSqOW/9uDkqKjezTdxZhw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/prettier": { "version": "2.8.8", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", @@ -14986,9 +15027,9 @@ } }, "node_modules/pvutils": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.1.5.tgz", - "integrity": "sha512-KTqnxsgGiQ6ZAzZCVlJH5eOjSnvlyEgx1m8bkRJfOhmGRqfo5KLvmAlACQkrjEtOQ4B7wF9TdSLIs9O90MX9xA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.2.0.tgz", + "integrity": "sha512-BbubeCEyTuQjVMakvJQ/Sxbc93F2pwmbsxONT/ZRrwU7Ua38d8unYTwXpTVLAKJ4BDuH9IGztCjQcd/N/39Dvg==", "dev": true, "license": "MIT", "peer": true, @@ -15227,64 +15268,35 @@ } }, "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.3.0.tgz", + "integrity": "sha512-hek2mFQpPuI4E1BBKrSto+BU3e3x4xuarsbiwr3+lf7p44juvFMV0XFWQAP3xUyqXA4RrXLIoaSUGbSt056ZMw==", "dev": true, "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/raw-body": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.3.tgz", - "integrity": "sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz", + "integrity": "sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==", "dev": true, "license": "MIT", "peer": true, "dependencies": { "bytes": "~3.1.2", "http-errors": "~2.0.1", - "iconv-lite": "~0.4.24", + "iconv-lite": "~0.7.0", "unpipe": "~1.0.0" }, "engines": { - "node": ">= 0.8" - } - }, - "node_modules/raw-body/node_modules/http-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", - "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "depd": "~2.0.0", - "inherits": "~2.0.4", - "setprototypeof": "~1.2.0", - "statuses": "~2.0.2", - "toidentifier": "~1.0.1" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "node_modules/raw-body/node_modules/statuses": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", - "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" + "node": ">= 0.10" } }, "node_modules/raw-loader": { @@ -15346,17 +15358,16 @@ } }, "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.1.1.tgz", + "integrity": "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA==", "license": "MIT", - "peer": true, - "dependencies": { - "picomatch": "^2.2.1" - }, "engines": { - "node": ">=8.10.0" + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/rechoir": { @@ -15817,17 +15828,6 @@ "node": ">=8" } }, - "node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 4" - } - }, "node_modules/rettime": { "version": "0.11.11", "resolved": "https://registry.npmjs.org/rettime/-/rettime-0.11.11.tgz", @@ -15908,6 +15908,36 @@ "fsevents": "~2.3.2" } }, + "node_modules/router": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz", + "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "^4.4.0", + "depd": "^2.0.0", + "is-promise": "^4.0.0", + "parseurl": "^1.3.3", + "path-to-regexp": "^8.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/router/node_modules/path-to-regexp": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz", + "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==", + "dev": true, + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/run-applescript": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.1.0.tgz", @@ -16041,25 +16071,21 @@ } }, "node_modules/sass-loader": { - "version": "16.0.5", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-16.0.5.tgz", - "integrity": "sha512-oL+CMBXrj6BZ/zOq4os+UECPL+bWqt6OAC6DWS8Ln8GZRcMDjlJ4JC3FBDuHJdYaFWIdKNIBYmtZtK2MaMkNIw==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-17.0.0.tgz", + "integrity": "sha512-0Ybm8ohBQ9LcrycVrFQp/KQBNX5a3Wda9/smS0mE/xLffzEnwvV8nykOzrbiSWNzTE3IB/jiXx8O4QmDPG2+Gw==", "dev": true, "license": "MIT", "peer": true, - "dependencies": { - "neo-async": "^2.6.2" - }, "engines": { - "node": ">= 18.12.0" + "node": ">= 22.11.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "@rspack/core": "0.x || ^1.0.0 || ^2.0.0-0", "sass": "^1.3.0", "sass-embedded": "*", "webpack": "^5.0.0" @@ -16068,9 +16094,6 @@ "@rspack/core": { "optional": true }, - "node-sass": { - "optional": true - }, "sass": { "optional": true }, @@ -16082,36 +16105,6 @@ } } }, - "node_modules/sass/node_modules/chokidar": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", - "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", - "dev": true, - "license": "MIT", - "dependencies": { - "readdirp": "^5.0.0" - }, - "engines": { - "node": ">= 20.19.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/sass/node_modules/readdirp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz", - "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20.19.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/sax": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", @@ -16149,14 +16142,6 @@ "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==", "license": "MIT" }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/selfsigned": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-5.5.0.tgz", @@ -16183,93 +16168,99 @@ } }, "node_modules/send": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", - "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/send/-/send-1.2.1.tgz", + "integrity": "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" + "debug": "^4.4.3", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "etag": "^1.8.1", + "fresh": "^2.0.0", + "http-errors": "^2.0.1", + "mime-types": "^3.0.2", + "ms": "^2.1.3", + "on-finished": "^2.4.1", + "range-parser": "^1.2.1", + "statuses": "^2.0.2" }, "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.0.0" + "node": ">= 18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/send/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "node_modules/send/node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "dev": true, "license": "MIT", "peer": true, - "bin": { - "mime": "cli.js" - }, "engines": { - "node": ">=4" + "node": ">= 0.6" } }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "node_modules/send/node_modules/mime-types": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", + "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", "dev": true, "license": "MIT", "peer": true, + "dependencies": { + "mime-db": "^1.54.0" + }, "engines": { - "node": ">= 0.8" + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.2.tgz", + "integrity": "sha512-KDj11HScOaLmrPxl70KYNW1PksP4Nb/CLL2yvC+Qd2kHMPEEpfc4Re2e4FOay+bC/+XQl/7zAcWON3JVo5v3KQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "accepts": "~1.3.4", + "accepts": "~1.3.8", "batch": "0.6.1", "debug": "2.6.9", "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" + "http-errors": "~1.8.0", + "mime-types": "~2.1.35", + "parseurl": "~1.3.3" }, "engines": { "node": ">= 0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/serve-index/node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/serve-index/node_modules/debug": { @@ -16295,30 +16286,23 @@ } }, "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", "dev": true, "license": "MIT", "peer": true, "dependencies": { "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" }, "engines": { "node": ">= 0.6" } }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true, - "license": "ISC", - "peer": true - }, "node_modules/serve-index/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -16327,40 +16311,47 @@ "license": "MIT", "peer": true }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "node_modules/serve-index/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "dev": true, - "license": "ISC", - "peer": true + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } }, - "node_modules/serve-static": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", - "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", "dev": true, "license": "MIT", "peer": true, - "dependencies": { - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.19.0" - }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.6" } }, - "node_modules/serve-static/node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "node_modules/serve-static": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz", + "integrity": "sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==", "dev": true, "license": "MIT", "peer": true, + "dependencies": { + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "parseurl": "^1.3.3", + "send": "^1.2.0" + }, "engines": { - "node": ">= 0.8" + "node": ">= 18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/set-blocking": { @@ -16497,9 +16488,9 @@ } }, "node_modules/shell-quote": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.9.0.tgz", - "integrity": "sha512-Iov+JwFv/2HcTpcwNMKd8+IWNb8tboQJNQTkAY/LLVK7gGH9jy+LGkVqPxfekHl+yMmiqXszdGWXgkfml7hjqA==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.10.0.tgz", + "integrity": "sha512-w1aiOKwKuRgtwAReIIj89puqg+I7GvX4IbLrvmhXbzQsj1+Zwi4VO3+fa6ZF91TWSjIxoEkKnMeHcLEODK5ZXA==", "dev": true, "license": "MIT", "peer": true, @@ -16626,19 +16617,6 @@ "node": ">=20.0.0" } }, - "node_modules/sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, "node_modules/sortablejs": { "version": "1.10.2", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.10.2.tgz", @@ -16691,56 +16669,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "node_modules/spdy-transport/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/split-on-first": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", @@ -16767,14 +16695,13 @@ "license": "MIT" }, "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", + "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/std-env": { @@ -17443,9 +17370,9 @@ "license": "MIT" }, "node_modules/thingies": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/thingies/-/thingies-2.5.0.tgz", - "integrity": "sha512-s+2Bwztg6PhWUD7XMfeYm5qliDdSiZm7M7n8KjTkIsm3l/2lgVRc2/Gx/v+ZX8lT4FMA+i8aQvhcWylldc+ZNw==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/thingies/-/thingies-2.6.1.tgz", + "integrity": "sha512-cV/CMGTK3M4MlnJ/0At6ismOw/A0EEniDNScajjz/Br3c1sqE72YD01rGpPTKwd27wAxI5Pr+6+0w8yofzFRYw==", "dev": true, "license": "MIT", "peer": true, @@ -17842,20 +17769,69 @@ } }, "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.1.0.tgz", + "integrity": "sha512-faYHw0anBbc/kWF3zFTEnxSFOAGUX9GFbOBthvDdLsIlEoWOFOtS0zgCiQYwIskL9iGXZL3kAXD8OoZ4GmMATA==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" + "content-type": "^2.0.0", + "media-typer": "^1.1.0", + "mime-types": "^3.0.0" + }, + "engines": { + "node": ">= 18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/type-is/node_modules/content-type": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz", + "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=18" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/type-is/node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "dev": true, + "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } }, + "node_modules/type-is/node_modules/mime-types": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", + "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "mime-db": "^1.54.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/typed-array-buffer": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", @@ -18431,29 +18407,6 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "license": "MIT" }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/v-click-outside": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/v-click-outside/-/v-click-outside-3.2.0.tgz", @@ -19052,17 +19005,6 @@ "node": ">=10.13.0" } }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -19249,29 +19191,27 @@ } }, "node_modules/webpack-dev-middleware": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-7.4.5.tgz", - "integrity": "sha512-uxQ6YqGdE4hgDKNf7hUiPXOdtkXvBJXrfEGYSx7P7LC8hnUYGK70X6xQXUvXeNyBDDcsiQXpG2m3G9vxowaEuA==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-8.1.1.tgz", + "integrity": "sha512-JrxAE/HwNmEnTkzkUGHFItHpGalzuEIUDifXhjAkIEHZzHK/ZJFVoTQF5ubZQlgeRireqLdr2lZttrrmOH61IA==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "colorette": "^2.0.10", - "memfs": "^4.43.1", - "mime-types": "^3.0.1", - "on-finished": "^2.4.1", + "memfs": "^4.56.10", + "mime-types": "^3.0.2", "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" + "schema-utils": "^4.3.3" }, "engines": { - "node": ">= 18.12.0" + "node": ">= 20.9.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "webpack": "^5.0.0" + "webpack": "^5.101.0" }, "peerDependenciesMeta": { "webpack": { @@ -19370,54 +19310,51 @@ } }, "node_modules/webpack-dev-server": { - "version": "5.2.6", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.6.tgz", - "integrity": "sha512-HNLRmamRvVavZQ+avceZifmv8hmdUjg43t6MI4SqJDwFdW7RPQwH5vzGhDRZSX59SgfbeHhLnq3g+uooWo7pVw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-6.0.0.tgz", + "integrity": "sha512-q9SD4ItOGhZLeU6EGT10caDZdHjF50Pz1DtkRZZOPsfluMXOkacWKKOtSBSLVkPqKiF67eFUC0rI88U/tSFPEw==", "dev": true, "license": "MIT", "peer": true, "dependencies": { "@types/bonjour": "^3.5.13", "@types/connect-history-api-fallback": "^1.5.4", - "@types/express": "^4.17.25", - "@types/express-serve-static-core": "^4.17.21", + "@types/express": "^5.0.6", + "@types/express-serve-static-core": "^5.1.1", "@types/serve-index": "^1.9.4", - "@types/serve-static": "^1.15.5", - "@types/sockjs": "^0.3.36", - "@types/ws": "^8.5.10", + "@types/serve-static": "^2.2.0", + "@types/ws": "^8.18.1", "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.2.1", - "chokidar": "^3.6.0", - "colorette": "^2.0.10", + "bonjour-service": "^1.3.0", + "chokidar": "^5.0.0", "compression": "^1.8.1", "connect-history-api-fallback": "^2.0.0", - "express": "^4.22.1", - "graceful-fs": "^4.2.6", - "http-proxy-middleware": "^2.0.9", - "ipaddr.js": "^2.1.0", + "express": "^5.2.1", + "graceful-fs": "^4.2.11", + "http-proxy-middleware": "^4.1.1", + "ipaddr.js": "^2.3.0", "launch-editor": "^2.14.1", - "open": "^10.0.3", - "p-retry": "^6.2.0", - "schema-utils": "^4.2.0", + "open": "^11.0.0", + "p-retry": "^8.0.0", + "schema-utils": "^4.3.3", "selfsigned": "^5.5.0", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^7.4.2", - "ws": "^8.18.0" + "serve-index": "^1.9.2", + "tinyglobby": "^0.2.15", + "webpack-dev-middleware": "^8.0.3", + "ws": "^8.20.0" }, "bin": { "webpack-dev-server": "bin/webpack-dev-server.js" }, "engines": { - "node": ">= 18.12.0" + "node": ">= 22.15.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "webpack": "^5.0.0" + "webpack": "^5.101.0" }, "peerDependenciesMeta": { "webpack": { @@ -19587,33 +19524,6 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/websocket-driver": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.5.tgz", - "integrity": "sha512-ZL2+3c7kMBdIRCMz6l8jQMHyGVxj+UL+xVk74Ombiciboca8rHa15L86B19E5oh1pL9Ii/uj54gtsIrZGMo6zA==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/whatwg-url": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", @@ -20232,10 +20142,18 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC", + "peer": true + }, "node_modules/ws": { - "version": "8.21.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz", - "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==", + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.3.tgz", + "integrity": "sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==", "dev": true, "license": "MIT", "peer": true, @@ -20256,17 +20174,32 @@ } }, "node_modules/wsl-utils": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/wsl-utils/-/wsl-utils-0.1.0.tgz", - "integrity": "sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wsl-utils/-/wsl-utils-1.0.0.tgz", + "integrity": "sha512-Hl0ZOAs672vg+06kfujwRhoS6/jehvULrlFkuF2dRu6pHgA8U06h3xqNIqNNU1LTXPcedxByAR4GS6pwQK0mgA==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "is-wsl": "^3.1.0" + "is-wsl": "^3.1.0", + "powershell-utils": "^0.1.0" }, "engines": { - "node": ">=18" + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/wsl-utils/node_modules/powershell-utils": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/powershell-utils/-/powershell-utils-0.1.0.tgz", + "integrity": "sha512-dM0jVuXJPsDN6DvRpea484tCUaMiXWjuCn++HGTqUWzGDjv5tZkEZldAJ/UMlqRYGFrD/etByo4/xOuC/snX2A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" diff --git a/build/frontend-legacy/package.json b/build/frontend-legacy/package.json index 9862a9ead9c68..f571f51885d19 100644 --- a/build/frontend-legacy/package.json +++ b/build/frontend-legacy/package.json @@ -103,7 +103,7 @@ "@babel/preset-typescript": "^7.29.7", "@nextcloud/babel-config": "^1.3.0", "@nextcloud/typings": "^1.10.0", - "@nextcloud/webpack-vue-config": "^7.0.2", + "@nextcloud/webpack-vue-config": "^7.0.4", "@pinia/testing": "^0.1.7", "@testing-library/jest-dom": "^6.6.4", "@testing-library/user-event": "^14.6.3", diff --git a/dist/1035-1035.js b/dist/1035-1035.js deleted file mode 100644 index d0f835253ca68..0000000000000 --- a/dist/1035-1035.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[1035],{67246(e,t,n){var a=n(71354),s=n.n(a),r=n(76314),p=n.n(r)()(s());p.push([e.id,".search-empty-view__input[data-v-4e4bf1e2]{flex:0 1;min-width:min(400px,50vw)}.search-empty-view__wrapper[data-v-4e4bf1e2]{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline}","",{version:3,sources:["webpack://./apps/files/src/views/SearchEmptyView.vue"],names:[],mappings:"AAEC,2CACC,QAAA,CACA,yBAAA,CAGD,6CACC,YAAA,CACA,cAAA,CACA,QAAA,CACA,oBAAA",sourcesContent:["\n.search-empty-view {\n\t&__input {\n\t\tflex: 0 1;\n\t\tmin-width: min(400px, 50vw);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tgap: 10px;\n\t\talign-items: baseline;\n\t}\n}\n"],sourceRoot:""}]);const i=p;n.d(t,["A",0,i])},91035(e,t,n){n.r(t),n.d(t,{default:()=>E});var a=n(85471),s=n(9165),r=n(53334),p=n(46855),i=n(48943),l=n(6695),c=n(16879),o=n(88140),A=n(78246);const u=(0,a.pM)({__name:"SearchEmptyView",setup(e){const t=(0,A.j)((0,o.u)()),n=(0,p.A)(e=>{t.query=e},500);return{__sfc:!0,searchStore:t,debouncedUpdate:n,mdiMagnifyClose:s.WBH,t:r.t,NcEmptyContent:i.A,NcIconSvgWrapper:l.A,NcInputField:c.A}}});var d=n(85072),y=n.n(d),f=n(97825),m=n.n(f),C=n(77659),_=n.n(C),h=n(55056),v=n.n(h),w=n(10540),x=n.n(w),b=n(41113),g=n.n(b),S=n(67246),N={};N.styleTagTransform=g(),N.setAttributes=v(),N.insert=_().bind(null,"head"),N.domAPI=m(),N.insertStyleElement=x(),y()(S.A,N),S.A&&S.A.locals&&S.A.locals;const E=(0,n(14486).A)(u,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t(n.NcEmptyContent,{attrs:{name:n.t("files","No search results for “{query}”",{query:n.searchStore.query})},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.NcIconSvgWrapper,{attrs:{path:n.mdiMagnifyClose}})]},proxy:!0},{key:"action",fn:function(){return[t("div",{staticClass:"search-empty-view__wrapper"},[t(n.NcInputField,{staticClass:"search-empty-view__input",attrs:{label:n.t("files","Search for files"),"model-value":n.searchStore.query,type:"search"},on:{"update:model-value":n.debouncedUpdate}})],1)]},proxy:!0}])})},[],!1,null,"4e4bf1e2",null).exports}}]); -//# sourceMappingURL=1035-1035.js.map?v=68d8f704cdb310bf07f8 \ No newline at end of file diff --git a/dist/1035-1035.js.map.license b/dist/1035-1035.js.map.license deleted file mode 120000 index 4d9535363c587..0000000000000 --- a/dist/1035-1035.js.map.license +++ /dev/null @@ -1 +0,0 @@ -1035-1035.js.license \ No newline at end of file diff --git a/dist/115-115.js b/dist/115-115.js new file mode 100644 index 0000000000000..c197adcb04acf --- /dev/null +++ b/dist/115-115.js @@ -0,0 +1,2 @@ +"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[115],{28069(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".share-expiry-time[data-v-c9199db0]{display:inline-flex;align-items:center;justify-content:center}.share-expiry-time .hint-icon[data-v-c9199db0]{padding:0;margin:0;width:24px;height:24px}.hint-heading[data-v-c9199db0]{text-align:center;font-size:1rem;margin-top:8px;padding-bottom:8px;margin-bottom:0;border-bottom:1px solid var(--color-border)}.hint-body[data-v-c9199db0]{padding:var(--border-radius-element);max-width:300px}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/ShareExpiryTime.vue"],names:[],mappings:"AACA,oCACI,mBAAA,CACA,kBAAA,CACA,sBAAA,CAEA,+CACI,SAAA,CACA,QAAA,CACA,UAAA,CACA,WAAA,CAIR,+BACI,iBAAA,CACA,cAAA,CACA,cAAA,CACA,kBAAA,CACA,eAAA,CACA,2CAAA,CAGJ,4BACI,oCAAA,CACA,eAAA",sourcesContent:["\n.share-expiry-time {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n\n .hint-icon {\n padding: 0;\n margin: 0;\n width: 24px;\n height: 24px;\n }\n}\n\n.hint-heading {\n text-align: center;\n font-size: 1rem;\n margin-top: 8px;\n padding-bottom: 8px;\n margin-bottom: 0;\n border-bottom: 1px solid var(--color-border);\n}\n\n.hint-body {\n padding: var(--border-radius-element);\n max-width: 300px;\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},27989(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry[data-v-469e5e80]{display:flex;align-items:center;height:44px}.sharing-entry__summary[data-v-469e5e80]{padding:8px;padding-inline-start:10px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0;min-width:0}.sharing-entry__summary__desc[data-v-469e5e80]{display:inline-block;padding-bottom:0;line-height:1.2em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sharing-entry__summary__desc p[data-v-469e5e80],.sharing-entry__summary__desc small[data-v-469e5e80]{color:var(--color-text-maxcontrast)}.sharing-entry__summary__desc-unique[data-v-469e5e80]{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntry.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,yCACC,WAAA,CACA,yBAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,sBAAA,CACA,QAAA,CACA,WAAA,CAEA,+CACC,oBAAA,CACA,gBAAA,CACA,iBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAEA,sGAEC,mCAAA,CAGD,sDACC,mCAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-inline-start: 10px;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\talign-items: flex-start;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\n\t\t&__desc {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding-bottom: 0;\n\t\t\tline-height: 1.2em;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\tp,\n\t\t\tsmall {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&-unique {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\t\t}\n\t}\n\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},29199(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry[data-v-731a9650]{display:flex;align-items:center;height:44px}.sharing-entry__desc[data-v-731a9650]{display:flex;flex-direction:column;justify-content:space-between;padding:8px;padding-inline-start:10px;line-height:1.2em}.sharing-entry__desc p[data-v-731a9650]{color:var(--color-text-maxcontrast)}.sharing-entry__actions[data-v-731a9650]{margin-inline-start:auto}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryInherited.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,sCACC,YAAA,CACA,qBAAA,CACA,6BAAA,CACA,WAAA,CACA,yBAAA,CACA,iBAAA,CACA,wCACC,mCAAA,CAGF,yCACC,wBAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__desc {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\tpadding: 8px;\n\t\tpadding-inline-start: 10px;\n\t\tline-height: 1.2em;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__actions {\n\t\tmargin-inline-start: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},76459(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry__internal .avatar-external[data-v-6c4cb23b]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}.sharing-entry__internal .icon-checkmark-color[data-v-6c4cb23b]{opacity:1;color:var(--color-border-success)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryInternal.vue"],names:[],mappings:"AAEC,2DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA,CAED,gEACC,SAAA,CACA,iCAAA",sourcesContent:["\n.sharing-entry__internal {\n\t.avatar-external {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-border-success);\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},10444(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry[data-v-4ca4172c]{display:flex;align-items:center;min-height:44px}.sharing-entry__summary[data-v-4ca4172c]{padding:8px;padding-inline-start:10px;display:flex;justify-content:space-between;flex:1 0;min-width:0}.sharing-entry__desc[data-v-4ca4172c]{display:flex;flex-direction:column;line-height:1.2em}.sharing-entry__desc p[data-v-4ca4172c]{color:var(--color-text-maxcontrast)}.sharing-entry__desc__title[data-v-4ca4172c]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.sharing-entry__actions[data-v-4ca4172c]{display:flex;align-items:center;margin-inline-start:auto}.sharing-entry:not(.sharing-entry--share) .sharing-entry__actions .new-share-link[data-v-4ca4172c]{border-top:1px solid var(--color-border)}.sharing-entry[data-v-4ca4172c] .avatar-link-share{background-color:var(--color-primary-element)}.sharing-entry .sharing-entry__action--public-upload[data-v-4ca4172c]{border-bottom:1px solid var(--color-border)}.sharing-entry__loading[data-v-4ca4172c]{width:44px;height:44px;margin:0;padding:14px;margin-inline-start:auto}.sharing-entry .action-item~.action-item[data-v-4ca4172c],.sharing-entry .action-item~.sharing-entry__loading[data-v-4ca4172c]{margin-inline-start:0}.sharing-entry__copy-icon--success[data-v-4ca4172c]{color:var(--color-border-success)}.qr-code-dialog[data-v-4ca4172c]{display:flex;width:100%;justify-content:center}.qr-code-dialog__img[data-v-4ca4172c]{width:100%;height:auto}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryLink.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CAEA,yCACC,WAAA,CACA,yBAAA,CACA,YAAA,CACA,6BAAA,CACA,QAAA,CACA,WAAA,CAGA,sCACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,wCACC,mCAAA,CAGD,6CACC,sBAAA,CACA,eAAA,CACA,kBAAA,CAIF,yCACC,YAAA,CACA,kBAAA,CACA,wBAAA,CAID,mGACC,wCAAA,CAIF,mDACC,6CAAA,CAGD,sEACC,2CAAA,CAGD,yCACC,UAAA,CACA,WAAA,CACA,QAAA,CACA,YAAA,CACA,wBAAA,CAOA,+HAEC,qBAAA,CAIF,oDACC,iCAAA,CAKF,iCACC,YAAA,CACA,UAAA,CACA,sBAAA,CAEA,sCACC,UAAA,CACA,WAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-inline-start: 10px;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\t}\n\n\t\t&__desc {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tline-height: 1.2em;\n\n\t\t\tp {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&__title {\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\t\t}\n\n\t\t&__actions {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tmargin-inline-start: auto;\n\t\t}\n\n\t&:not(.sharing-entry--share) &__actions {\n\t\t.new-share-link {\n\t\t\tborder-top: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t:deep(.avatar-link-share) {\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t.sharing-entry__action--public-upload {\n\t\tborder-bottom: 1px solid var(--color-border);\n\t}\n\n\t&__loading {\n\t\twidth: 44px;\n\t\theight: 44px;\n\t\tmargin: 0;\n\t\tpadding: 14px;\n\t\tmargin-inline-start: auto;\n\t}\n\n\t// put menus to the left\n\t// but only the first one\n\t.action-item {\n\n\t\t~.action-item,\n\t\t~.sharing-entry__loading {\n\t\t\tmargin-inline-start: 0;\n\t\t}\n\t}\n\n\t&__copy-icon--success {\n\t\tcolor: var(--color-border-success);\n\t}\n}\n\n// styling for the qr-code container\n.qr-code-dialog {\n\tdisplay: flex;\n\twidth: 100%;\n\tjustify-content: center;\n\n\t&__img {\n\t\twidth: 100%;\n\t\theight: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},9914(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".share-select[data-v-b5eca1ec]{display:block}.share-select[data-v-b5eca1ec] .action-item__menutoggle{color:var(--color-primary-element) !important;font-size:12.5px !important;height:auto !important;min-height:auto !important}.share-select[data-v-b5eca1ec] .action-item__menutoggle .button-vue__text{font-weight:normal !important}.share-select[data-v-b5eca1ec] .action-item__menutoggle .button-vue__icon{height:24px !important;min-height:24px !important;width:24px !important;min-width:24px !important}.share-select[data-v-b5eca1ec] .action-item__menutoggle .button-vue__wrapper{flex-direction:row-reverse !important}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue"],names:[],mappings:"AACA,+BACC,aAAA,CAIA,wDACC,6CAAA,CACA,2BAAA,CACA,sBAAA,CACA,0BAAA,CAEA,0EACC,6BAAA,CAGD,0EACC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CAGD,6EAEC,qCAAA",sourcesContent:["\n.share-select {\n\tdisplay: block;\n\n\t// TODO: NcActions should have a slot for custom trigger button like NcPopover\n\t// Overrider NcActionms button to make it small\n\t:deep(.action-item__menutoggle) {\n\t\tcolor: var(--color-primary-element) !important;\n\t\tfont-size: 12.5px !important;\n\t\theight: auto !important;\n\t\tmin-height: auto !important;\n\n\t\t.button-vue__text {\n\t\t\tfont-weight: normal !important;\n\t\t}\n\n\t\t.button-vue__icon {\n\t\t\theight: 24px !important;\n\t\t\tmin-height: 24px !important;\n\t\t\twidth: 24px !important;\n\t\t\tmin-width: 24px !important;\n\t\t}\n\n\t\t.button-vue__wrapper {\n\t\t\t// Emulate NcButton's alignment=center-reverse\n\t\t\tflex-direction: row-reverse !important;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},33176(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry[data-v-13d4a0bb]{display:flex;align-items:center;min-height:44px}.sharing-entry__desc[data-v-13d4a0bb]{padding:8px;padding-inline-start:10px;line-height:1.2em;position:relative;flex:1 1;min-width:0}.sharing-entry__desc p[data-v-13d4a0bb]{color:var(--color-text-maxcontrast)}.sharing-entry__title[data-v-13d4a0bb]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:inherit}.sharing-entry__actions[data-v-13d4a0bb]{margin-inline-start:auto !important}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntrySimple.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CACA,sCACC,WAAA,CACA,yBAAA,CACA,iBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,wCACC,mCAAA,CAGF,uCACC,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,iBAAA,CAED,yCACC,mCAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\t&__desc {\n\t\tpadding: 8px;\n\t\tpadding-inline-start: 10px;\n\t\tline-height: 1.2em;\n\t\tposition: relative;\n\t\tflex: 1 1;\n\t\tmin-width: 0;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__title {\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tmax-width: inherit;\n\t}\n\t&__actions {\n\t\tmargin-inline-start: auto !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},24992(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-search{display:flex;flex-direction:column;margin-bottom:4px}.sharing-search label[for=sharing-search-input]{margin-bottom:2px}.sharing-search__input{width:100%;margin:10px 0}.vs__dropdown-menu span[lookup] .avatardiv{background-image:var(--icon-search-white);background-repeat:no-repeat;background-position:center;background-color:var(--color-text-maxcontrast) !important}.vs__dropdown-menu span[lookup] .avatardiv .avatardiv__initials-wrapper{display:none}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingInput.vue"],names:[],mappings:"AACA,gBACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,gDACC,iBAAA,CAGD,uBACC,UAAA,CACA,aAAA,CAOA,2CACC,yCAAA,CACA,2BAAA,CACA,0BAAA,CACA,yDAAA,CACA,wEACC,YAAA",sourcesContent:['\n.sharing-search {\n\tdisplay: flex;\n\tflex-direction: column;\n\tmargin-bottom: 4px;\n\n\tlabel[for="sharing-search-input"] {\n\t\tmargin-bottom: 2px;\n\t}\n\n\t&__input {\n\t\twidth: 100%;\n\t\tmargin: 10px 0;\n\t}\n}\n\n.vs__dropdown-menu {\n\t// properly style the lookup entry\n\tspan[lookup] {\n\t\t.avatardiv {\n\t\t\tbackground-image: var(--icon-search-white);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-color: var(--color-text-maxcontrast) !important;\n\t\t\t.avatardiv__initials-wrapper {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},70567(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharingTabDetailsView[data-v-289355eb]{display:flex;flex-direction:column;width:100%;margin:0 auto;position:relative;height:100%;overflow:hidden}.sharingTabDetailsView__header[data-v-289355eb]{display:flex;align-items:center;box-sizing:border-box;margin:.2em}.sharingTabDetailsView__header span[data-v-289355eb]{display:flex;align-items:center}.sharingTabDetailsView__header span h1[data-v-289355eb]{font-size:15px;padding-inline-start:.3em}.sharingTabDetailsView__wrapper[data-v-289355eb]{position:relative;overflow:scroll;flex-shrink:1;padding:4px;padding-inline-end:12px}.sharingTabDetailsView__quick-permissions[data-v-289355eb]{display:flex;justify-content:center;width:100%;margin:0 auto;border-radius:0}.sharingTabDetailsView__quick-permissions div[data-v-289355eb]{width:100%}.sharingTabDetailsView__quick-permissions div span[data-v-289355eb]{width:100%}.sharingTabDetailsView__quick-permissions div span span[data-v-289355eb]:nth-child(1){align-items:center;justify-content:center;padding:.1em}.sharingTabDetailsView__quick-permissions div span[data-v-289355eb] label span{display:flex;flex-direction:column}.sharingTabDetailsView__quick-permissions div span[data-v-289355eb] span.checkbox-content__text.checkbox-radio-switch__text{flex-wrap:wrap}.sharingTabDetailsView__quick-permissions div span[data-v-289355eb] span.checkbox-content__text.checkbox-radio-switch__text .subline{display:block;flex-basis:100%}.sharingTabDetailsView__advanced-control[data-v-289355eb]{width:100%}.sharingTabDetailsView__advanced-control button[data-v-289355eb]{margin-top:.5em}.sharingTabDetailsView__advanced[data-v-289355eb]{width:100%;margin-bottom:.5em;text-align:start;padding-inline-start:0}.sharingTabDetailsView__advanced section textarea[data-v-289355eb],.sharingTabDetailsView__advanced section div.mx-datepicker[data-v-289355eb]{width:100%}.sharingTabDetailsView__advanced section textarea[data-v-289355eb]{height:80px;margin:0}.sharingTabDetailsView__advanced section span[data-v-289355eb] label{padding-inline-start:0 !important;background-color:initial !important;border:none !important}.sharingTabDetailsView__advanced section section.custom-permissions-group[data-v-289355eb]{padding-inline-start:1.5em}.sharingTabDetailsView__label[data-v-289355eb]{padding-block-end:6px}.sharingTabDetailsView__delete>button[data-v-289355eb]:first-child{color:#df0707}.sharingTabDetailsView__footer[data-v-289355eb]{width:100%;display:flex;position:sticky;bottom:0;flex-direction:column;justify-content:space-between;align-items:flex-start;background:linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background))}.sharingTabDetailsView__footer .button-group[data-v-289355eb]{display:flex;justify-content:space-between;width:100%;margin-top:16px}.sharingTabDetailsView__footer .button-group button[data-v-289355eb]{margin-inline-start:16px}.sharingTabDetailsView__footer .button-group button[data-v-289355eb]:first-child{margin-inline-start:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingDetailsTab.vue"],names:[],mappings:"AACA,wCACC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,eAAA,CAEA,gDACC,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,WAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,wDACC,cAAA,CACA,yBAAA,CAMH,iDACC,iBAAA,CACA,eAAA,CACA,aAAA,CACA,WAAA,CACA,uBAAA,CAGD,2DACC,YAAA,CACA,sBAAA,CACA,UAAA,CACA,aAAA,CACA,eAAA,CAEA,+DACC,UAAA,CAEA,oEACC,UAAA,CAEA,sFACC,kBAAA,CACA,sBAAA,CACA,YAAA,CAGD,+EACC,YAAA,CACA,qBAAA,CAID,4HACC,cAAA,CAEA,qIACC,aAAA,CACA,eAAA,CAQL,0DACC,UAAA,CAEA,iEACC,eAAA,CAKF,kDACC,UAAA,CACA,kBAAA,CACA,gBAAA,CACA,sBAAA,CAIC,+IAEC,UAAA,CAGD,mEACC,WAAA,CACA,QAAA,CAYD,qEACC,iCAAA,CACA,mCAAA,CACA,sBAAA,CAGD,2FACC,0BAAA,CAKH,+CACC,qBAAA,CAIA,mEACC,aAAA,CAIF,gDACC,UAAA,CACA,YAAA,CACA,eAAA,CACA,QAAA,CACA,qBAAA,CACA,6BAAA,CACA,sBAAA,CACA,2FAAA,CAEA,8DACC,YAAA,CACA,6BAAA,CACA,UAAA,CACA,eAAA,CAEA,qEACC,wBAAA,CAEA,iFACC,qBAAA",sourcesContent:["\n.sharingTabDetailsView {\n\tdisplay: flex;\n\tflex-direction: column;\n\twidth: 100%;\n\tmargin: 0 auto;\n\tposition: relative;\n\theight: 100%;\n\toverflow: hidden;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tbox-sizing: border-box;\n\t\tmargin: 0.2em;\n\n\t\tspan {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\th1 {\n\t\t\t\tfont-size: 15px;\n\t\t\t\tpadding-inline-start: 0.3em;\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__wrapper {\n\t\tposition: relative;\n\t\toverflow: scroll;\n\t\tflex-shrink: 1;\n\t\tpadding: 4px;\n\t\tpadding-inline-end: 12px;\n\t}\n\n\t&__quick-permissions {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\tmargin: 0 auto;\n\t\tborder-radius: 0;\n\n\t\tdiv {\n\t\t\twidth: 100%;\n\n\t\t\tspan {\n\t\t\t\twidth: 100%;\n\n\t\t\t\tspan:nth-child(1) {\n\t\t\t\t\talign-items: center;\n\t\t\t\t\tjustify-content: center;\n\t\t\t\t\tpadding: 0.1em;\n\t\t\t\t}\n\n\t\t\t\t:deep(label span) {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-direction: column;\n\t\t\t\t}\n\n\t\t\t\t/* Target component based style in NcCheckboxRadioSwitch slot content*/\n\t\t\t\t:deep(span.checkbox-content__text.checkbox-radio-switch__text) {\n\t\t\t\t\tflex-wrap: wrap;\n\n\t\t\t\t\t.subline {\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\tflex-basis: 100%;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__advanced-control {\n\t\twidth: 100%;\n\n\t\tbutton {\n\t\t\tmargin-top: 0.5em;\n\t\t}\n\n\t}\n\n\t&__advanced {\n\t\twidth: 100%;\n\t\tmargin-bottom: 0.5em;\n\t\ttext-align: start;\n\t\tpadding-inline-start: 0;\n\n\t\tsection {\n\n\t\t\ttextarea,\n\t\t\tdiv.mx-datepicker {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\ttextarea {\n\t\t\t\theight: 80px;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t/*\n\t\t\t The following style is applied out of the component's scope\n\t\t\t to remove padding from the label.checkbox-radio-switch__label,\n\t\t\t which is used to group radio checkbox items. The use of ::v-deep\n\t\t\t ensures that the padding is modified without being affected by\n\t\t\t the component's scoping.\n\t\t\t Without this achieving left alignment for the checkboxes would not\n\t\t\t be possible.\n\t\t\t*/\n\t\t\tspan :deep(label) {\n\t\t\t\tpadding-inline-start: 0 !important;\n\t\t\t\tbackground-color: initial !important;\n\t\t\t\tborder: none !important;\n\t\t\t}\n\n\t\t\tsection.custom-permissions-group {\n\t\t\t\tpadding-inline-start: 1.5em;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__label {\n\t\tpadding-block-end: 6px;\n\t}\n\n\t&__delete {\n\t\t> button:first-child {\n\t\t\tcolor: rgb(223, 7, 7);\n\t\t}\n\t}\n\n\t&__footer {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\talign-items: flex-start;\n\t\tbackground: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background));\n\n\t\t.button-group {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: space-between;\n\t\t\twidth: 100%;\n\t\t\tmargin-top: 16px;\n\n\t\t\tbutton {\n\t\t\t\tmargin-inline-start: 16px;\n\n\t\t\t\t&:first-child {\n\t\t\t\t\tmargin-inline-start: 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},19353(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry__inherited .avatar-shared[data-v-cedf3238]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingInherited.vue"],names:[],mappings:"AAEC,0DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA",sourcesContent:["\n.sharing-entry__inherited {\n\t.avatar-shared {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},41253(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".emptyContentWithSections[data-v-cd6ad9ee]{margin:1rem auto}.sharingTab[data-v-cd6ad9ee]{position:relative;height:100%}.sharingTab__content[data-v-cd6ad9ee]{padding:0 6px}.sharingTab__content section[data-v-cd6ad9ee]{padding-bottom:16px}.sharingTab__content section .section-header[data-v-cd6ad9ee]{margin-top:2px;margin-bottom:2px;display:flex;align-items:center;padding-bottom:4px}.sharingTab__content section .section-header h4[data-v-cd6ad9ee]{margin:0;font-size:16px}.sharingTab__content section .section-header .visually-hidden[data-v-cd6ad9ee]{display:none}.sharingTab__content section .section-header .hint-icon[data-v-cd6ad9ee]{color:var(--color-primary-element)}.sharingTab__content>section[data-v-cd6ad9ee]:not(:last-child){border-bottom:2px solid var(--color-border)}.sharingTab__additionalContent[data-v-cd6ad9ee]{margin:var(--default-clickable-area) 0}.hint-body[data-v-cd6ad9ee]{max-width:300px;padding:var(--border-radius-element)}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingTab.vue"],names:[],mappings:"AACA,2CACC,gBAAA,CAGD,6BACC,iBAAA,CACA,WAAA,CAEA,sCACC,aAAA,CAEA,8CACC,mBAAA,CAEA,8DACC,cAAA,CACA,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CAEA,iEACC,QAAA,CACA,cAAA,CAGD,+EACC,YAAA,CAGD,yEACC,kCAAA,CAOH,+DACC,2CAAA,CAKF,gDACC,sCAAA,CAIF,4BACC,eAAA,CACA,oCAAA",sourcesContent:["\n.emptyContentWithSections {\n\tmargin: 1rem auto;\n}\n\n.sharingTab {\n\tposition: relative;\n\theight: 100%;\n\n\t&__content {\n\t\tpadding: 0 6px;\n\n\t\tsection {\n\t\t\tpadding-bottom: 16px;\n\n\t\t\t.section-header {\n\t\t\t\tmargin-top: 2px;\n\t\t\t\tmargin-bottom: 2px;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tpadding-bottom: 4px;\n\n\t\t\t\th4 {\n\t\t\t\t\tmargin: 0;\n\t\t\t\t\tfont-size: 16px;\n\t\t\t\t}\n\n\t\t\t\t.visually-hidden {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\n\t\t\t\t.hint-icon {\n\t\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\t& > section:not(:last-child) {\n\t\t\tborder-bottom: 2px solid var(--color-border);\n\t\t}\n\n\t}\n\n\t&__additionalContent {\n\t\tmargin: var(--default-clickable-area) 0;\n\t}\n}\n\n.hint-body {\n\tmax-width: 300px;\n\tpadding: var(--border-radius-element);\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},70544(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,"\n.sharing-tab-external-section-legacy[data-v-3e4e67d2] {\n\twidth: 100%;\n}\n","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SidebarTabExternal/SidebarTabExternalSectionLegacy.vue"],names:[],mappings:";AAkCA;CACA,WAAA;AACA",sourcesContent:['\x3c!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n--\x3e\n\n\n\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_setup.fileInfo)?_c(_setup.SharingTab,{attrs:{\"file-info\":_setup.fileInfo}}):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ContentCopy.vue?vue&type=template&id=0e8bd3c4\"\nimport script from \"./ContentCopy.vue?vue&type=script&lang=js\"\nexport * from \"./ContentCopy.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 content-copy-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,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"}},[(_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;return _c('li',{staticClass:\"sharing-entry\"},[_vm._t(\"avatar\"),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__desc\"},[_c('span',{staticClass:\"sharing-entry__title\"},[_vm._v(_vm._s(_vm.title))]),_vm._v(\" \"),(_vm.subtitle)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.subtitle)+\"\\n\\t\\t\")]):_vm._e()]),_vm._v(\" \"),(_vm.$slots['default'])?_c('NcActions',{ref:\"actionsComponent\",staticClass:\"sharing-entry__actions\",attrs:{\"menu-align\":\"right\",\"aria-expanded\":_vm.ariaExpandedValue}},[_vm._t(\"default\")],2):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.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!./SharingEntrySimple.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=style&index=0&id=13d4a0bb&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=style&index=0&id=13d4a0bb&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntrySimple.vue?vue&type=template&id=13d4a0bb&scoped=true\"\nimport script from \"./SharingEntrySimple.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntrySimple.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntrySimple.vue?vue&type=style&index=0&id=13d4a0bb&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 \"13d4a0bb\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCapabilities } from '@nextcloud/capabilities';\nimport { generateUrl, getBaseUrl } from '@nextcloud/router';\n/**\n * @param fileid - The file ID to generate the direct file link for\n */\nexport function generateFileUrl(fileid) {\n const baseURL = getBaseUrl();\n const { globalscale } = getCapabilities();\n if (globalscale?.token) {\n return generateUrl('/gf/{token}/{fileid}', {\n token: globalscale.token,\n fileid,\n }, { baseURL });\n }\n return generateUrl('/f/{fileid}', {\n fileid,\n }, {\n baseURL,\n });\n}\n","\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.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!./SharingEntryInternal.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=style&index=0&id=6c4cb23b&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=style&index=0&id=6c4cb23b&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryInternal.vue?vue&type=template&id=6c4cb23b&scoped=true\"\nimport script from \"./SharingEntryInternal.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryInternal.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryInternal.vue?vue&type=style&index=0&id=6c4cb23b&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 \"6c4cb23b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',[_c('SharingEntrySimple',{ref:\"shareEntrySimple\",staticClass:\"sharing-entry__internal\",attrs:{\"title\":_vm.t('files_sharing', 'Internal link'),\"subtitle\":_vm.internalLinkSubtitle},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('div',{staticClass:\"avatar-external icon-external-white\"})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"title\":_vm.copyLinkTooltip,\"aria-label\":_vm.copyLinkTooltip},on:{\"click\":_vm.copyLink},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.copied && _vm.copySuccess)?_c('CheckIcon',{staticClass:\"icon-checkmark-color\",attrs:{\"size\":20}}):_c('ClipboardIcon',{attrs:{\"size\":20}})]},proxy:true}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharing-search\"},[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":_vm.shareInputId}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.isExternal\n\t\t\t? _vm.t('files_sharing', 'Enter external recipients')\n\t\t\t: _vm.t('files_sharing', 'Search for internal recipients'))+\"\\n\\t\")]),_vm._v(\" \"),_c('NcSelect',{ref:\"select\",staticClass:\"sharing-search__input\",attrs:{\"input-id\":_vm.shareInputId,\"disabled\":!_vm.canReshare,\"loading\":_vm.loading,\"filterable\":false,\"placeholder\":_vm.inputPlaceholder,\"clear-search-on-blur\":() => false,\"user-select\":true,\"options\":_vm.options,\"label-outside\":true},on:{\"search\":_vm.asyncFind,\"option:selected\":_vm.onSelected},scopedSlots:_vm._u([{key:\"no-options\",fn:function({ search }){return [_vm._v(\"\\n\\t\\t\\t\"+_vm._s(search ? _vm.noResultText : _vm.placeholder)+\"\\n\\t\\t\")]}}]),model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1)\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 */\n\nexport const ATOMIC_PERMISSIONS = {\n\tNONE: 0,\n\tREAD: 1,\n\tUPDATE: 2,\n\tCREATE: 4,\n\tDELETE: 8,\n\tSHARE: 16,\n}\n\nconst BUNDLED_PERMISSIONS = {\n\tREAD_ONLY: ATOMIC_PERMISSIONS.READ,\n\tUPLOAD_AND_UPDATE: ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.CREATE | ATOMIC_PERMISSIONS.DELETE,\n\tFILE_DROP: ATOMIC_PERMISSIONS.CREATE,\n\tALL: ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.CREATE | ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.DELETE | ATOMIC_PERMISSIONS.SHARE,\n\tALL_FILE: ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.SHARE,\n}\n\n/**\n * Get bundled permissions based on config.\n *\n * @param {boolean} excludeShare - Whether to exclude SHARE permission from ALL and ALL_FILE bundles.\n * @return {object}\n */\nexport function getBundledPermissions(excludeShare = false) {\n\tif (excludeShare) {\n\t\treturn {\n\t\t\t...BUNDLED_PERMISSIONS,\n\t\t\tALL: BUNDLED_PERMISSIONS.ALL & ~ATOMIC_PERMISSIONS.SHARE,\n\t\t\tALL_FILE: BUNDLED_PERMISSIONS.ALL_FILE & ~ATOMIC_PERMISSIONS.SHARE,\n\t\t}\n\t}\n\treturn BUNDLED_PERMISSIONS\n}\n\n/**\n * Return whether a given permissions set contains some permissions.\n *\n * @param {number} initialPermissionSet - the permissions set.\n * @param {number} permissionsToCheck - the permissions to check.\n * @return {boolean}\n */\nexport function hasPermissions(initialPermissionSet, permissionsToCheck) {\n\treturn initialPermissionSet !== ATOMIC_PERMISSIONS.NONE && (initialPermissionSet & permissionsToCheck) === permissionsToCheck\n}\n\n/**\n * Return whether a given permissions set is valid.\n *\n * @param {number} permissionsSet - the permissions set.\n *\n * @return {boolean}\n */\nexport function permissionsSetIsValid(permissionsSet) {\n\t// Must have at least READ or CREATE permission.\n\tif (!hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.READ) && !hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.CREATE)) {\n\t\treturn false\n\t}\n\n\t// Must have READ permission if have UPDATE or DELETE.\n\tif (!hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.READ) && (\n\t\thasPermissions(permissionsSet, ATOMIC_PERMISSIONS.UPDATE) || hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.DELETE)\n\t)) {\n\t\treturn false\n\t}\n\n\treturn true\n}\n\n/**\n * Add some permissions to an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the initial permissions.\n * @param {number} permissionsToAdd - the permissions to add.\n *\n * @return {number}\n */\nexport function addPermissions(initialPermissionSet, permissionsToAdd) {\n\treturn initialPermissionSet | permissionsToAdd\n}\n\n/**\n * Remove some permissions from an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the initial permissions.\n * @param {number} permissionsToSubtract - the permissions to remove.\n *\n * @return {number}\n */\nexport function subtractPermissions(initialPermissionSet, permissionsToSubtract) {\n\treturn initialPermissionSet & ~permissionsToSubtract\n}\n\n/**\n * Toggle some permissions from an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the permissions set.\n * @param {number} permissionsToToggle - the permissions to toggle.\n *\n * @return {number}\n */\nexport function togglePermissions(initialPermissionSet, permissionsToToggle) {\n\tif (hasPermissions(initialPermissionSet, permissionsToToggle)) {\n\t\treturn subtractPermissions(initialPermissionSet, permissionsToToggle)\n\t} else {\n\t\treturn addPermissions(initialPermissionSet, permissionsToToggle)\n\t}\n}\n\n/**\n * Return whether some given permissions can be toggled from a permission set.\n *\n * @param {number} permissionSet - the initial permissions set.\n * @param {number} permissionsToToggle - the permissions to toggle.\n *\n * @return {boolean}\n */\nexport function canTogglePermissions(permissionSet, permissionsToToggle) {\n\treturn permissionsSetIsValid(togglePermissions(permissionSet, permissionsToToggle))\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport logger from '../services/logger.ts';\nimport { isFileRequest } from '../services/SharingService.ts';\nexport default class Share {\n _share;\n /**\n * Create the share object\n *\n * @param ocsData ocs request response\n */\n constructor(ocsData) {\n if (ocsData.ocs && ocsData.ocs.data && ocsData.ocs.data[0]) {\n ocsData = ocsData.ocs.data[0];\n }\n // string to int\n if (typeof ocsData.id === 'string') {\n ocsData.id = Number.parseInt(ocsData.id);\n }\n // convert int into boolean\n ocsData.hide_download = !!ocsData.hide_download;\n ocsData.mail_send = !!ocsData.mail_send;\n if (ocsData.attributes && typeof ocsData.attributes === 'string') {\n try {\n ocsData.attributes = JSON.parse(ocsData.attributes);\n }\n catch {\n logger.warn('Could not parse share attributes returned by server', ocsData.attributes);\n }\n }\n ocsData.attributes = ocsData.attributes ?? [];\n // Pre-declared so Vue 2 makes newPassword reactive at observation time,\n // avoiding $set's property-addition path which races with async setters.\n ocsData.newPassword = ocsData.newPassword ?? undefined;\n // store state\n this._share = ocsData;\n }\n /**\n * Get the share state\n * ! used for reactivity purpose\n * Do not remove. It allow vuejs to\n * inject its watchers into the #share\n * state and make the whole class reactive\n *\n * @return the share raw state\n */\n get state() {\n return this._share;\n }\n /**\n * get the share id\n */\n get id() {\n return this._share.id;\n }\n /**\n * Get the share type\n */\n get type() {\n return this._share.share_type;\n }\n /**\n * Get the share permissions\n * See window.OC.PERMISSION_* variables\n */\n get permissions() {\n return this._share.permissions;\n }\n /**\n * Get the share attributes\n */\n get attributes() {\n return this._share.attributes || [];\n }\n /**\n * Set the share permissions\n * See window.OC.PERMISSION_* variables\n */\n set permissions(permissions) {\n this._share.permissions = permissions;\n }\n // SHARE OWNER --------------------------------------------------\n /**\n * Get the share owner uid\n */\n get owner() {\n return this._share.uid_owner;\n }\n /**\n * Get the share owner's display name\n */\n get ownerDisplayName() {\n return this._share.displayname_owner;\n }\n // SHARED WITH --------------------------------------------------\n /**\n * Get the share with entity uid\n */\n get shareWith() {\n return this._share.share_with;\n }\n /**\n * Get the share with entity display name\n * fallback to its uid if none\n */\n get shareWithDisplayName() {\n return this._share.share_with_displayname\n || this._share.share_with;\n }\n /**\n * Unique display name in case of multiple\n * duplicates results with the same name.\n */\n get shareWithDisplayNameUnique() {\n return this._share.share_with_displayname_unique\n || this._share.share_with;\n }\n /**\n * Get the share with entity link\n */\n get shareWithLink() {\n return this._share.share_with_link;\n }\n /**\n * Get the share with avatar if any\n */\n get shareWithAvatar() {\n return this._share.share_with_avatar;\n }\n // SHARED FILE OR FOLDER OWNER ----------------------------------\n /**\n * Get the shared item owner uid\n */\n get uidFileOwner() {\n return this._share.uid_file_owner;\n }\n /**\n * Get the shared item display name\n * fallback to its uid if none\n */\n get displaynameFileOwner() {\n return this._share.displayname_file_owner\n || this._share.uid_file_owner;\n }\n // TIME DATA ----------------------------------------------------\n /**\n * Get the share creation timestamp\n */\n get createdTime() {\n return this._share.stime;\n }\n /**\n * Get the expiration date\n *\n * @return date with YYYY-MM-DD format\n */\n get expireDate() {\n return this._share.expiration;\n }\n /**\n * Set the expiration date\n *\n * @param date the share expiration date with YYYY-MM-DD format\n */\n set expireDate(date) {\n this._share.expiration = date;\n }\n // EXTRA DATA ---------------------------------------------------\n /**\n * Get the public share token\n */\n get token() {\n return this._share.token;\n }\n /**\n * Set the public share token\n */\n set token(token) {\n this._share.token = token;\n }\n /**\n * Get the share note if any\n */\n get note() {\n return this._share.note;\n }\n /**\n * Set the share note if any\n */\n set note(note) {\n this._share.note = note;\n }\n /**\n * Get the share label if any\n * Should only exist on link shares\n */\n get label() {\n return this._share.label ?? '';\n }\n /**\n * Set the share label if any\n * Should only be set on link shares\n */\n set label(label) {\n this._share.label = label;\n }\n /**\n * Have a mail been sent\n */\n get mailSend() {\n return this._share.mail_send === true;\n }\n /**\n * Hide the download button on public page\n */\n get hideDownload() {\n return this._share.hide_download === true\n || this.attributes.find?.(({ scope, key, value }) => scope === 'permissions' && key === 'download' && !value) !== undefined;\n }\n /**\n * Hide the download button on public page\n */\n set hideDownload(state) {\n // disabling hide-download also enables the download permission\n // needed for regression in Nextcloud 31.0.0 until (incl.) 31.0.3\n if (!state) {\n const attribute = this.attributes.find(({ key, scope }) => key === 'download' && scope === 'permissions');\n if (attribute) {\n attribute.value = true;\n }\n }\n this._share.hide_download = state === true;\n }\n /**\n * Password protection of the share\n */\n get password() {\n return this._share.password;\n }\n /**\n * Password protection of the share\n */\n set password(password) {\n this._share.password = password;\n }\n /**\n * Unsaved password (set during share creation or editing).\n * Delegates to _share so reads/writes go through the reactive state.\n */\n get newPassword() {\n return this._share.newPassword;\n }\n set newPassword(value) {\n this._share.newPassword = value;\n }\n /**\n * Password expiration time\n *\n * @return date with YYYY-MM-DD format\n */\n get passwordExpirationTime() {\n return this._share.password_expiration_time;\n }\n /**\n * Password expiration time\n *\n * @param passwordExpirationTime date with YYYY-MM-DD format\n */\n set passwordExpirationTime(passwordExpirationTime) {\n this._share.password_expiration_time = passwordExpirationTime;\n }\n /**\n * Password protection by Talk of the share\n */\n get sendPasswordByTalk() {\n return this._share.send_password_by_talk;\n }\n /**\n * Password protection by Talk of the share\n *\n * @param sendPasswordByTalk whether to send the password by Talk or not\n */\n set sendPasswordByTalk(sendPasswordByTalk) {\n this._share.send_password_by_talk = sendPasswordByTalk;\n }\n // SHARED ITEM DATA ---------------------------------------------\n /**\n * Get the shared item absolute full path\n */\n get path() {\n return this._share.path;\n }\n /**\n * Return the item type: file or folder\n *\n * @return 'folder' | 'file'\n */\n get itemType() {\n return this._share.item_type;\n }\n /**\n * Get the shared item mimetype\n */\n get mimetype() {\n return this._share.mimetype;\n }\n /**\n * Get the shared item id\n */\n get fileSource() {\n return this._share.file_source;\n }\n /**\n * Get the target path on the receiving end\n * e.g the file /xxx/aaa will be shared in\n * the receiving root as /aaa, the fileTarget is /aaa\n */\n get fileTarget() {\n return this._share.file_target;\n }\n /**\n * Get the parent folder id if any\n */\n get fileParent() {\n return this._share.file_parent;\n }\n // PERMISSIONS Shortcuts\n /**\n * Does this share have READ permissions\n */\n get hasReadPermission() {\n return !!((this.permissions & window.OC.PERMISSION_READ));\n }\n /**\n * Does this share have CREATE permissions\n */\n get hasCreatePermission() {\n return !!((this.permissions & window.OC.PERMISSION_CREATE));\n }\n /**\n * Does this share have DELETE permissions\n */\n get hasDeletePermission() {\n return !!((this.permissions & window.OC.PERMISSION_DELETE));\n }\n /**\n * Does this share have UPDATE permissions\n */\n get hasUpdatePermission() {\n return !!((this.permissions & window.OC.PERMISSION_UPDATE));\n }\n /**\n * Does this share have SHARE permissions\n */\n get hasSharePermission() {\n return !!((this.permissions & window.OC.PERMISSION_SHARE));\n }\n /**\n * Does this share have download permissions\n */\n get hasDownloadPermission() {\n const hasDisabledDownload = (attribute) => {\n return attribute.scope === 'permissions' && attribute.key === 'download' && attribute.value === false;\n };\n return this.attributes.some(hasDisabledDownload);\n }\n /**\n * Is this mail share a file request ?\n */\n get isFileRequest() {\n return isFileRequest(JSON.stringify(this.attributes));\n }\n set hasDownloadPermission(enabled) {\n this.setAttribute('permissions', 'download', !!enabled);\n }\n setAttribute(scope, key, value) {\n const attrUpdate = {\n scope,\n key,\n value,\n };\n // try and replace existing\n for (const i in this._share.attributes) {\n const attr = this._share.attributes[i];\n if (attr.scope === attrUpdate.scope && attr.key === attrUpdate.key) {\n this._share.attributes.splice(i, 1, attrUpdate);\n return;\n }\n }\n this._share.attributes.push(attrUpdate);\n }\n // PERMISSIONS Shortcuts for the CURRENT USER\n // ! the permissions above are the share settings,\n // ! meaning the permissions for the recipient\n /**\n * Can the current user EDIT this share ?\n */\n get canEdit() {\n return this._share.can_edit === true;\n }\n /**\n * Can the current user DELETE this share ?\n */\n get canDelete() {\n return this._share.can_delete === true;\n }\n /**\n * Top level accessible shared folder fileid for the current user\n */\n get viaFileid() {\n return this._share.via_fileid;\n }\n /**\n * Top level accessible shared folder path for the current user\n */\n get viaPath() {\n return this._share.via_path;\n }\n // TODO: SORT THOSE PROPERTIES\n get parent() {\n return this._share.parent;\n }\n get storageId() {\n return this._share.storage_id;\n }\n get storage() {\n return this._share.storage;\n }\n get itemSource() {\n return this._share.item_source;\n }\n get status() {\n return this._share.status;\n }\n /**\n * Is the share from a trusted server\n */\n get isTrustedServer() {\n return !!this._share.is_trusted_server;\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n// TODO: Fix this instead of disabling ESLint!!!\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { getCurrentUser } from '@nextcloud/auth';\nimport axios from '@nextcloud/axios';\nimport { File, Folder, Permission } from '@nextcloud/files';\nimport { getRemoteURL, getRootPath } from '@nextcloud/files/dav';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport logger from './logger.ts';\nconst headers = {\n 'Content-Type': 'application/json',\n};\n/**\n *\n * @param ocsEntry\n * @param unmounted whether the share is not mounted into the filesystem (pending or deleted)\n */\nasync function ocsEntryToNode(ocsEntry, unmounted = false) {\n try {\n // Federated share handling\n if (ocsEntry?.remote_id !== undefined) {\n if (!ocsEntry.mimetype) {\n const mime = (await import('mime')).default;\n // This won't catch files without an extension, but this is the best we can do\n ocsEntry.mimetype = mime.getType(ocsEntry.name);\n }\n const type = ocsEntry.type === 'dir' ? 'folder' : ocsEntry.type;\n ocsEntry.item_type = type || (ocsEntry.mimetype ? 'file' : 'folder');\n // different naming for remote shares\n ocsEntry.item_mtime = ocsEntry.mtime;\n ocsEntry.file_target = ocsEntry.file_target || ocsEntry.mountpoint;\n if (ocsEntry.file_target.includes('TemporaryMountPointName')) {\n ocsEntry.file_target = ocsEntry.name;\n }\n // If the share is not accepted yet we don't know which permissions it will have\n if (!ocsEntry.accepted) {\n // Need to set permissions to NONE for federated shares\n ocsEntry.item_permissions = Permission.NONE;\n ocsEntry.permissions = Permission.NONE;\n }\n ocsEntry.uid_owner = ocsEntry.owner;\n // TODO: have the real display name stored somewhere\n ocsEntry.displayname_owner = ocsEntry.owner;\n }\n // Pending and deleted shares are not mounted into the user's filesystem,\n // so no file operation can act on them until they are accepted or restored.\n if (unmounted) {\n ocsEntry.item_permissions = Permission.NONE;\n ocsEntry.permissions = Permission.NONE;\n }\n const isFolder = ocsEntry?.item_type === 'folder';\n const hasPreview = ocsEntry?.has_preview === true;\n const Node = isFolder ? Folder : File;\n // If this is an external share that is not yet accepted,\n // we don't have an id. We can fallback to the row id temporarily\n // local shares (this server) use `file_source`, but remote shares (federated) use `file_id`\n const fileid = ocsEntry.file_source || ocsEntry.file_id || ocsEntry.id;\n // Generate path and strip double slashes\n const path = ocsEntry.path || ocsEntry.file_target || ocsEntry.name;\n const source = `${getRemoteURL()}${getRootPath()}/${path.replace(/^\\/+/, '')}`;\n let mtime = ocsEntry.item_mtime ? new Date((ocsEntry.item_mtime) * 1000) : undefined;\n // Prefer share time if more recent than item mtime\n if (ocsEntry?.stime > (ocsEntry?.item_mtime || 0)) {\n mtime = new Date((ocsEntry.stime) * 1000);\n }\n let sharees;\n if ('share_with' in ocsEntry) {\n sharees = {\n sharee: {\n id: ocsEntry.share_with,\n 'display-name': ocsEntry.share_with_displayname || ocsEntry.share_with,\n type: ocsEntry.share_type,\n },\n };\n }\n return new Node({\n id: fileid,\n source,\n owner: ocsEntry?.uid_owner,\n mime: ocsEntry?.mimetype || 'application/octet-stream',\n mtime,\n size: ocsEntry?.item_size ?? undefined,\n permissions: ocsEntry?.item_permissions || ocsEntry?.permissions,\n root: getRootPath(),\n attributes: {\n ...ocsEntry,\n 'has-preview': hasPreview,\n 'hide-download': ocsEntry?.hide_download === 1,\n // Also check the sharingStatusAction.ts code\n 'owner-id': ocsEntry?.uid_owner,\n 'owner-display-name': ocsEntry?.displayname_owner,\n 'share-types': ocsEntry?.share_type,\n 'share-attributes': ocsEntry?.attributes || '[]',\n sharees,\n favorite: ocsEntry?.tags?.includes(window.OC.TAG_FAVORITE) ? 1 : 0,\n },\n });\n }\n catch (error) {\n logger.error('Error while parsing OCS entry', { error });\n return null;\n }\n}\n/**\n *\n * @param shareWithMe\n */\nfunction getShares(shareWithMe = false) {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares');\n return axios.get(url, {\n headers,\n params: {\n shared_with_me: shareWithMe,\n include_tags: true,\n },\n });\n}\n/**\n *\n */\nfunction getSharedWithYou() {\n return getShares(true);\n}\n/**\n *\n */\nfunction getSharedWithOthers() {\n return getShares();\n}\n/**\n *\n */\nfunction getRemoteShares() {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n}\n/**\n *\n */\nfunction getPendingShares() {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n}\n/**\n *\n */\nfunction getRemotePendingShares() {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n}\n/**\n *\n */\nfunction getDeletedShares() {\n const url = generateOcsUrl('apps/files_sharing/api/v1/deletedshares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n}\n/**\n * Check if a file request is enabled\n *\n * @param attributes the share attributes json-encoded array\n */\nexport function isFileRequest(attributes = '[]') {\n const isFileRequest = (attribute) => {\n return attribute.scope === 'fileRequest' && attribute.key === 'enabled' && attribute.value === true;\n };\n try {\n const attributesArray = JSON.parse(attributes);\n return attributesArray.some(isFileRequest);\n }\n catch (error) {\n logger.error('Error while parsing share attributes', { error });\n return false;\n }\n}\n/**\n * Group an array of objects (here Nodes) by a key\n * and return an array of arrays of them.\n *\n * @param nodes Nodes to group\n * @param key The attribute to group by\n */\nfunction groupBy(nodes, key) {\n return Object.values(nodes.reduce(function (acc, curr) {\n (acc[curr[key]] = acc[curr[key]] || []).push(curr);\n return acc;\n }, {}));\n}\n/**\n *\n * @param sharedWithYou\n * @param sharedWithOthers\n * @param pendingShares\n * @param deletedshares\n * @param filterTypes\n */\nexport async function getContents(sharedWithYou = true, sharedWithOthers = true, pendingShares = false, deletedshares = false, filterTypes = []) {\n const requests = [];\n if (sharedWithYou) {\n requests.push({ promise: getSharedWithYou(), unmounted: false }, { promise: getRemoteShares(), unmounted: false });\n }\n if (sharedWithOthers) {\n requests.push({ promise: getSharedWithOthers(), unmounted: false });\n }\n if (pendingShares) {\n requests.push({ promise: getPendingShares(), unmounted: true }, { promise: getRemotePendingShares(), unmounted: true });\n }\n if (deletedshares) {\n requests.push({ promise: getDeletedShares(), unmounted: true });\n }\n const responses = await Promise.all(requests.map(({ promise }) => promise));\n const data = responses.flatMap((response, index) => response.data.ocs.data\n .map((entry) => ({ entry, unmounted: requests[index].unmounted })));\n let contents = (await Promise.all(data.map(({ entry, unmounted }) => ocsEntryToNode(entry, unmounted))))\n .filter((node) => node !== null);\n if (filterTypes.length > 0) {\n contents = contents.filter((node) => filterTypes.includes(node.attributes?.share_type));\n }\n // Merge duplicate shares and group their attributes\n // Also check the sharingStatusAction.ts code\n contents = groupBy(contents, 'source').map((nodes) => {\n const node = nodes[0];\n node.attributes['share-types'] = nodes.map((node) => node.attributes['share-types']);\n return node;\n });\n return {\n folder: new Folder({\n id: 0,\n source: `${getRemoteURL()}${getRootPath()}`,\n owner: getCurrentUser()?.uid || null,\n root: getRootPath(),\n }),\n contents,\n };\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCapabilities } from '@nextcloud/capabilities';\nimport { loadState } from '@nextcloud/initial-state';\nexport default class Config {\n _capabilities;\n constructor() {\n this._capabilities = getCapabilities();\n }\n /**\n * Get default share permissions, if any\n */\n get defaultPermissions() {\n return this._capabilities.files_sharing?.default_permissions;\n }\n /**\n * Should SHARE permission be excluded from \"Allow editing\" bundled permissions\n */\n get excludeReshareFromEdit() {\n return this._capabilities.files_sharing?.exclude_reshare_from_edit === true;\n }\n /**\n * Is public upload allowed on link shares ?\n * This covers File request and Full upload/edit option.\n */\n get isPublicUploadEnabled() {\n return this._capabilities.files_sharing?.public?.upload === true;\n }\n /**\n * Get the federated sharing documentation link\n */\n get federatedShareDocLink() {\n return window.OC.appConfig.core.federatedCloudShareDoc;\n }\n /**\n * Get the default link share expiration date\n */\n get defaultExpirationDate() {\n if (this.isDefaultExpireDateEnabled && this.defaultExpireDate !== null) {\n return new Date(new Date().setDate(new Date().getDate() + this.defaultExpireDate));\n }\n return null;\n }\n /**\n * Get the default internal expiration date\n */\n get defaultInternalExpirationDate() {\n if (this.isDefaultInternalExpireDateEnabled && this.defaultInternalExpireDate !== null) {\n return new Date(new Date().setDate(new Date().getDate() + this.defaultInternalExpireDate));\n }\n return null;\n }\n /**\n * Get the default remote expiration date\n */\n get defaultRemoteExpirationDateString() {\n if (this.isDefaultRemoteExpireDateEnabled && this.defaultRemoteExpireDate !== null) {\n return new Date(new Date().setDate(new Date().getDate() + this.defaultRemoteExpireDate));\n }\n return null;\n }\n /**\n * Are link shares password-enforced ?\n */\n get enforcePasswordForPublicLink() {\n return window.OC.appConfig.core.enforcePasswordForPublicLink === true;\n }\n /**\n * Is password asked by default on link shares ?\n */\n get enableLinkPasswordByDefault() {\n return window.OC.appConfig.core.enableLinkPasswordByDefault === true;\n }\n /**\n * Is link shares expiration enforced ?\n */\n get isDefaultExpireDateEnforced() {\n return window.OC.appConfig.core.defaultExpireDateEnforced === true;\n }\n /**\n * Is there a default expiration date for new link shares ?\n */\n get isDefaultExpireDateEnabled() {\n return window.OC.appConfig.core.defaultExpireDateEnabled === true;\n }\n /**\n * Is internal shares expiration enforced ?\n */\n get isDefaultInternalExpireDateEnforced() {\n return window.OC.appConfig.core.defaultInternalExpireDateEnforced === true;\n }\n /**\n * Is there a default expiration date for new internal shares ?\n */\n get isDefaultInternalExpireDateEnabled() {\n return window.OC.appConfig.core.defaultInternalExpireDateEnabled === true;\n }\n /**\n * Is remote shares expiration enforced ?\n */\n get isDefaultRemoteExpireDateEnforced() {\n return window.OC.appConfig.core.defaultRemoteExpireDateEnforced === true;\n }\n /**\n * Is there a default expiration date for new remote shares ?\n */\n get isDefaultRemoteExpireDateEnabled() {\n return window.OC.appConfig.core.defaultRemoteExpireDateEnabled === true;\n }\n /**\n * Are users on this server allowed to send shares to other servers ?\n */\n get isRemoteShareAllowed() {\n return window.OC.appConfig.core.remoteShareAllowed === true;\n }\n /**\n * Is federation enabled ?\n */\n get isFederationEnabled() {\n return this._capabilities?.files_sharing?.federation?.outgoing === true;\n }\n /**\n * Is public sharing enabled ?\n */\n get isPublicShareAllowed() {\n return this._capabilities?.files_sharing?.public?.enabled === true;\n }\n /**\n * Is sharing my mail (link share) enabled ?\n */\n get isMailShareAllowed() {\n return this._capabilities?.files_sharing?.sharebymail?.enabled === true\n && this.isPublicShareAllowed === true;\n }\n /**\n * Get the default days to link shares expiration\n */\n get defaultExpireDate() {\n return window.OC.appConfig.core.defaultExpireDate;\n }\n /**\n * Get the default days to internal shares expiration\n */\n get defaultInternalExpireDate() {\n return window.OC.appConfig.core.defaultInternalExpireDate;\n }\n /**\n * Get the default days to remote shares expiration\n */\n get defaultRemoteExpireDate() {\n return window.OC.appConfig.core.defaultRemoteExpireDate;\n }\n /**\n * Is resharing allowed ?\n */\n get isResharingAllowed() {\n return window.OC.appConfig.core.resharingAllowed === true;\n }\n /**\n * Is password enforced for mail shares ?\n */\n get isPasswordForMailSharesRequired() {\n return this._capabilities.files_sharing?.sharebymail?.password?.enforced === true;\n }\n /**\n * Always show the email or userid unique sharee label if enabled by the admin\n */\n get shouldAlwaysShowUnique() {\n return this._capabilities.files_sharing?.sharee?.always_show_unique === true;\n }\n /**\n * Is sharing with groups allowed ?\n */\n get allowGroupSharing() {\n return window.OC.appConfig.core.allowGroupSharing === true;\n }\n /**\n * Get the maximum results of a share search\n */\n get maxAutocompleteResults() {\n return parseInt(window.OC.config['sharing.maxAutocompleteResults'], 10) || 25;\n }\n /**\n * Get the minimal string length\n * to initiate a share search\n */\n get minSearchStringLength() {\n return parseInt(window.OC.config['sharing.minSearchStringLength'], 10) || 0;\n }\n /**\n * Get the password policy configuration\n */\n get passwordPolicy() {\n return this._capabilities?.password_policy || {};\n }\n /**\n * Returns true if custom tokens are allowed\n */\n get allowCustomTokens() {\n return this._capabilities?.files_sharing?.public?.custom_tokens;\n }\n /**\n * Show federated shares as internal shares\n *\n * @return\n */\n get showFederatedSharesAsInternal() {\n return loadState('files_sharing', 'showFederatedSharesAsInternal', false);\n }\n /**\n * Show federated shares to trusted servers as internal shares\n *\n * @return\n */\n get showFederatedSharesToTrustedServersAsInternal() {\n return loadState('files_sharing', 'showFederatedSharesToTrustedServersAsInternal', false);\n }\n /**\n * Show the external share ui\n */\n get showExternalSharing() {\n return loadState('files_sharing', 'showExternalSharing', true);\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { ATOMIC_PERMISSIONS } from '../lib/SharePermissionsToolBox.js'\nimport Share from '../models/Share.ts'\nimport Config from '../services/ConfigService.ts'\nimport logger from '../services/logger.ts'\n\nexport default {\n\tmethods: {\n\t\tasync openSharingDetails(shareRequestObject) {\n\t\t\tlet share\n\t\t\t// handle externalResults from OCA.Sharing.ShareSearch\n\t\t\t// TODO : Better name/interface for handler required\n\t\t\t// For example `externalAppCreateShareHook` with proper documentation\n\t\t\tif (shareRequestObject.handler) {\n\t\t\t\tconst handlerInput = {}\n\t\t\t\tif (this.suggestions) {\n\t\t\t\t\thandlerInput.suggestions = this.suggestions\n\t\t\t\t\thandlerInput.fileInfo = this.fileInfo\n\t\t\t\t\thandlerInput.query = this.query\n\t\t\t\t}\n\t\t\t\tconst externalShareRequestObject = await shareRequestObject.handler(handlerInput)\n\t\t\t\tshare = this.mapShareRequestToShareObject(externalShareRequestObject)\n\t\t\t} else {\n\t\t\t\tshare = this.mapShareRequestToShareObject(shareRequestObject)\n\t\t\t}\n\n\t\t\tif (this.fileInfo.type !== 'dir') {\n\t\t\t\tconst originalPermissions = share.permissions\n\t\t\t\tconst strippedPermissions = originalPermissions\n\t\t\t\t\t& ~ATOMIC_PERMISSIONS.CREATE\n\t\t\t\t\t& ~ATOMIC_PERMISSIONS.DELETE\n\n\t\t\t\tif (originalPermissions !== strippedPermissions) {\n\t\t\t\t\tlogger.debug('Removed create/delete permissions from file share (only valid for folders)')\n\t\t\t\t\tshare.permissions = strippedPermissions\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst shareDetails = {\n\t\t\t\tfileInfo: this.fileInfo,\n\t\t\t\tshare,\n\t\t\t}\n\n\t\t\tthis.$emit('open-sharing-details', shareDetails)\n\t\t},\n\t\topenShareDetailsForCustomSettings(share) {\n\t\t\tshare.setCustomPermissions = true\n\t\t\tthis.openSharingDetails(share)\n\t\t},\n\t\tmapShareRequestToShareObject(shareRequestObject) {\n\t\t\tif (shareRequestObject.id) {\n\t\t\t\treturn shareRequestObject\n\t\t\t}\n\n\t\t\tconst share = {\n\t\t\t\tattributes: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: true,\n\t\t\t\t\t\tkey: 'download',\n\t\t\t\t\t\tscope: 'permissions',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\thideDownload: false,\n\t\t\t\tshare_type: shareRequestObject.shareType,\n\t\t\t\tshare_with: shareRequestObject.shareWith,\n\t\t\t\tis_no_user: shareRequestObject.isNoUser,\n\t\t\t\tuser: shareRequestObject.shareWith,\n\t\t\t\tshare_with_displayname: shareRequestObject.displayName,\n\t\t\t\tsubtitle: shareRequestObject.subtitle,\n\t\t\t\tpermissions: shareRequestObject.permissions ?? new Config().defaultPermissions,\n\t\t\t\texpiration: '',\n\t\t\t}\n\n\t\t\treturn new Share(share)\n\t\t},\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport axios, { isAxiosError } from '@nextcloud/axios'\nimport { showError } from '@nextcloud/dialogs'\nimport { emit } from '@nextcloud/event-bus'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport Share from '../models/Share.ts'\nimport logger from '../services/logger.ts'\n\nconst shareUrl = generateOcsUrl('apps/files_sharing/api/v1/shares')\n\nexport default {\n\tmethods: {\n\t\t/**\n\t\t * Create a new share\n\t\t *\n\t\t * @param {object} data destructuring object\n\t\t * @param {string} data.path path to the file/folder which should be shared\n\t\t * @param {number} data.shareType 0 = user; 1 = group; 3 = public link; 6 = federated cloud share\n\t\t * @param {string} data.shareWith user/group id with which the file should be shared (optional for shareType > 1)\n\t\t * @param {boolean} [data.publicUpload] allow public upload to a public shared folder\n\t\t * @param {string} [data.password] password to protect public link Share with\n\t\t * @param {number} [data.permissions] 1 = read; 2 = update; 4 = create; 8 = delete; 16 = share; 31 = all (default: 31, for public shares: 1)\n\t\t * @param {boolean} [data.sendPasswordByTalk] send the password via a talk conversation\n\t\t * @param {string} [data.expireDate] expire the share automatically after\n\t\t * @param {string} [data.label] custom label\n\t\t * @param {string} [data.attributes] Share attributes encoded as json\n\t\t * @param {string} data.note custom note to recipient\n\t\t * @return {Share} the new share\n\t\t * @throws {Error}\n\t\t */\n\t\tasync createShare({ path, permissions, shareType, shareWith, publicUpload, password, sendPasswordByTalk, expireDate, label, note, attributes }) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.post(shareUrl, { path, permissions, shareType, shareWith, publicUpload, password, sendPasswordByTalk, expireDate, label, note, attributes })\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t}\n\t\t\t\tconst share = new Share(request.data.ocs.data)\n\t\t\t\temit('files_sharing:share:created', { share })\n\t\t\t\treturn share\n\t\t\t} catch (error) {\n\t\t\t\tconst errorMessage = getErrorMessage(error) ?? t('files_sharing', 'Error creating the share')\n\t\t\t\tshowError(errorMessage)\n\t\t\t\tthrow new Error(errorMessage, { cause: error })\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Delete a share\n\t\t *\n\t\t * @param {number} id share id\n\t\t * @throws {Error}\n\t\t */\n\t\tasync deleteShare(id) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.delete(shareUrl + `/${id}`)\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t}\n\t\t\t\temit('files_sharing:share:deleted', { id })\n\t\t\t\treturn true\n\t\t\t} catch (error) {\n\t\t\t\tconst errorMessage = getErrorMessage(error) ?? t('files_sharing', 'Error deleting the share')\n\t\t\t\tshowError(errorMessage)\n\t\t\t\tthrow new Error(errorMessage, { cause: error })\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update a share\n\t\t *\n\t\t * @param {number} id share id\n\t\t * @param {object} properties key-value object of the properties to update\n\t\t */\n\t\tasync updateShare(id, properties) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.put(shareUrl + `/${id}`, properties)\n\t\t\t\temit('files_sharing:share:updated', { id })\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t} else {\n\t\t\t\t\treturn request.data.ocs.data\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error while updating share', { error })\n\t\t\t\tconst errorMessage = getErrorMessage(error) ?? t('files_sharing', 'Error updating the share')\n\t\t\t\t// the error will be shown in apps/files_sharing/src/mixins/SharesMixin.js\n\t\t\t\tthrow new Error(errorMessage, { cause: error })\n\t\t\t}\n\t\t},\n\t},\n}\n\n/**\n * Handle an error response from the server and show a notification with the error message if possible\n *\n * @param {unknown} error - The received error\n * @return {string|undefined} the error message if it could be extracted from the response, otherwise undefined\n */\nfunction getErrorMessage(error) {\n\tif (isAxiosError(error) && error.response.data?.ocs) {\n\t\t/** @type {import('@nextcloud/typings/ocs').OCSResponse} */\n\t\tconst response = error.response.data\n\t\tif (response.ocs.meta?.message) {\n\t\t\treturn response.ocs.meta.message\n\t\t}\n\t}\n}\n","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.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!./SharingInput.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=style&index=0&id=0b151499&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=style&index=0&id=0b151499&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingInput.vue?vue&type=template&id=0b151499\"\nimport script from \"./SharingInput.vue?vue&type=script&lang=js\"\nexport * from \"./SharingInput.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingInput.vue?vue&type=style&index=0&id=0b151499&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSection.vue?vue&type=script&lang=ts&setup=true\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSection.vue?vue&type=script&lang=ts&setup=true\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_vm.section.element,{ref:\"sectionElement\",tag:\"component\",domProps:{\"node\":_vm.node}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SidebarTabExternalSection.vue?vue&type=template&id=9785f99e\"\nimport script from \"./SidebarTabExternalSection.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SidebarTabExternalSection.vue?vue&type=script&lang=ts&setup=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 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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSectionLegacy.vue?vue&type=script&lang=ts&setup=true\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSectionLegacy.vue?vue&type=script&lang=ts&setup=true\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"sharing-tab-external-section-legacy\"},[_c(_setup.component,{tag:\"component\",attrs:{\"file-info\":_vm.fileInfo}})],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/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSectionLegacy.vue?vue&type=style&index=0&id=3e4e67d2&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSectionLegacy.vue?vue&type=style&index=0&id=3e4e67d2&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SidebarTabExternalSectionLegacy.vue?vue&type=template&id=3e4e67d2&scoped=true\"\nimport script from \"./SidebarTabExternalSectionLegacy.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SidebarTabExternalSectionLegacy.vue?vue&type=script&lang=ts&setup=true\"\nimport style0 from \"./SidebarTabExternalSectionLegacy.vue?vue&type=style&index=0&id=3e4e67d2&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e4e67d2\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharingTabDetailsView\"},[_c('div',{staticClass:\"sharingTabDetailsView__header\"},[_c('span',[(_vm.isUserShare)?_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":_vm.share.shareType !== _vm.ShareType.User,\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName,\"menu-position\":\"left\",\"url\":_vm.share.shareWithAvatar}}):_vm._e(),_vm._v(\" \"),_c(_vm.getShareTypeIcon(_vm.share.type),{tag:\"component\",attrs:{\"size\":32}})],1),_vm._v(\" \"),_c('span',[_c('h1',[_vm._v(_vm._s(_vm.title))])])]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__wrapper\"},[_c('div',{ref:\"quickPermissions\",staticClass:\"sharingTabDetailsView__quick-permissions\"},[_c('div',[_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"read-only\",\"value\":_vm.bundledPermissions.READ_ONLY.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:modelValue\":_vm.toggleCustomPermissions},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ViewIcon',{attrs:{\"size\":20}})]},proxy:true}]),model:{value:(_vm.sharingPermission),callback:function ($$v) {_vm.sharingPermission=$$v},expression:\"sharingPermission\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'View only'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"upload-edit\",\"value\":_vm.allPermissions,\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:modelValue\":_vm.toggleCustomPermissions},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('EditIcon',{attrs:{\"size\":20}})]},proxy:true}]),model:{value:(_vm.sharingPermission),callback:function ($$v) {_vm.sharingPermission=$$v},expression:\"sharingPermission\"}},[(_vm.allowsFileDrop)?[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow upload and editing'))+\"\\n\\t\\t\\t\\t\\t\")]:[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow editing'))+\"\\n\\t\\t\\t\\t\\t\")]],2),_vm._v(\" \"),(_vm.allowsFileDrop)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-sharing-share-permissions-bundle\":\"file-drop\",\"button-variant\":true,\"value\":_vm.bundledPermissions.FILE_DROP.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:modelValue\":_vm.toggleCustomPermissions},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('UploadIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1083194048),model:{value:(_vm.sharingPermission),callback:function ($$v) {_vm.sharingPermission=$$v},expression:\"sharingPermission\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'File request'))+\"\\n\\t\\t\\t\\t\\t\"),_c('small',{staticClass:\"subline\"},[_vm._v(_vm._s(_vm.t('files_sharing', 'Upload only')))])]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"custom\",\"value\":\"custom\",\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:modelValue\":_vm.expandCustomPermissions},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}]),model:{value:(_vm.sharingPermission),callback:function ($$v) {_vm.sharingPermission=$$v},expression:\"sharingPermission\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Custom permissions'))+\"\\n\\t\\t\\t\\t\\t\"),_c('small',{staticClass:\"subline\"},[_vm._v(_vm._s(_vm.customPermissionsList))])])],1)]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__advanced-control\"},[_c('NcButton',{attrs:{\"id\":\"advancedSectionAccordionAdvancedControl\",\"variant\":\"tertiary\",\"alignment\":\"end-reverse\",\"aria-controls\":\"advancedSectionAccordionAdvanced\",\"aria-expanded\":_vm.advancedControlExpandedValue},on:{\"click\":function($event){_vm.advancedSectionAccordionExpanded = !_vm.advancedSectionAccordionExpanded}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!_vm.advancedSectionAccordionExpanded)?_c('MenuDownIcon'):_c('MenuUpIcon')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Advanced settings'))+\"\\n\\t\\t\\t\\t\")])],1),_vm._v(\" \"),(_vm.advancedSectionAccordionExpanded)?_c('div',{staticClass:\"sharingTabDetailsView__advanced\",attrs:{\"id\":\"advancedSectionAccordionAdvanced\",\"aria-labelledby\":\"advancedSectionAccordionAdvancedControl\",\"role\":\"region\"}},[_c('section',[(_vm.isPublicShare)?_c('NcInputField',{staticClass:\"sharingTabDetailsView__label\",attrs:{\"autocomplete\":\"off\",\"label\":_vm.t('files_sharing', 'Share label')},model:{value:(_vm.share.label),callback:function ($$v) {_vm.$set(_vm.share, \"label\", $$v)},expression:\"share.label\"}}):_vm._e(),_vm._v(\" \"),(_vm.config.allowCustomTokens && _vm.isPublicShare && !_vm.isNewShare)?_c('NcInputField',{attrs:{\"autocomplete\":\"off\",\"label\":_vm.t('files_sharing', 'Share link token'),\"helper-text\":_vm.t('files_sharing', 'Set the public share link token to something easy to remember or generate a new token. It is not recommended to use a guessable token for shares which contain sensitive information.'),\"show-trailing-button\":\"\",\"trailing-button-label\":_vm.loadingToken ? _vm.t('files_sharing', 'Generating…') : _vm.t('files_sharing', 'Generate new token')},on:{\"trailing-button-click\":_vm.generateNewToken},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [(_vm.loadingToken)?_c('NcLoadingIcon'):_c('Refresh',{attrs:{\"size\":20}})]},proxy:true}],null,false,4228062821),model:{value:(_vm.share.token),callback:function ($$v) {_vm.$set(_vm.share, \"token\", $$v)},expression:\"share.token\"}}):_vm._e(),_vm._v(\" \"),(_vm.isPublicShare)?[_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":_vm.isPasswordEnforced},model:{value:(_vm.isPasswordProtected),callback:function ($$v) {_vm.isPasswordProtected=$$v},expression:\"isPasswordProtected\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Set password'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.isPasswordProtected)?_c('NcPasswordField',{attrs:{\"autocomplete\":\"new-password\",\"model-value\":_vm.share.newPassword ?? '',\"error\":_vm.passwordError,\"helper-text\":_vm.errorPasswordLabel || _vm.passwordHint,\"required\":_vm.isPasswordEnforced && _vm.isNewShare,\"label\":_vm.t('files_sharing', 'Password')},on:{\"update:value\":_vm.onPasswordChange}}):_vm._e(),_vm._v(\" \"),(_vm.isEmailShareType && _vm.passwordExpirationTime)?_c('span',{attrs:{\"icon\":\"icon-info\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Password expires {passwordExpirationTime}', { passwordExpirationTime: _vm.passwordExpirationTime }))+\"\\n\\t\\t\\t\\t\\t\")]):(_vm.isEmailShareType && _vm.passwordExpirationTime !== null)?_c('span',{attrs:{\"icon\":\"icon-error\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Password expired'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e()]:_vm._e(),_vm._v(\" \"),(_vm.canTogglePasswordProtectedByTalkAvailable)?_c('NcCheckboxRadioSwitch',{on:{\"update:modelValue\":_vm.onPasswordProtectedByTalkChange},model:{value:(_vm.isPasswordProtectedByTalk),callback:function ($$v) {_vm.isPasswordProtectedByTalk=$$v},expression:\"isPasswordProtectedByTalk\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Video verification'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":_vm.isExpiryDateEnforced},model:{value:(_vm.hasExpirationDate),callback:function ($$v) {_vm.hasExpirationDate=$$v},expression:\"hasExpirationDate\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.isExpiryDateEnforced\n\t\t\t\t\t\t? _vm.t('files_sharing', 'Expiration date (enforced)')\n\t\t\t\t\t\t: _vm.t('files_sharing', 'Set expiration date'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.hasExpirationDate)?_c('NcDateTimePickerNative',{attrs:{\"id\":\"share-date-picker\",\"model-value\":new Date(_vm.share.expireDate ?? _vm.dateTomorrow),\"min\":_vm.dateTomorrow,\"max\":_vm.maxExpirationDateEnforced,\"hide-label\":\"\",\"label\":_vm.t('files_sharing', 'Expiration date'),\"placeholder\":_vm.t('files_sharing', 'Expiration date'),\"type\":\"date\"},on:{\"input\":_vm.onExpirationChange}}):_vm._e(),_vm._v(\" \"),(_vm.isPublicShare)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":_vm.canChangeHideDownload},on:{\"update:modelValue\":function($event){return _vm.queueUpdate('hideDownload')}},model:{value:(_vm.share.hideDownload),callback:function ($$v) {_vm.$set(_vm.share, \"hideDownload\", $$v)},expression:\"share.hideDownload\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Hide download'))+\"\\n\\t\\t\\t\\t\")]):_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetDownload,\"data-cy-files-sharing-share-permissions-checkbox\":\"download\"},model:{value:(_vm.canDownload),callback:function ($$v) {_vm.canDownload=$$v},expression:\"canDownload\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow download and sync'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{model:{value:(_vm.writeNoteToRecipientIsChecked),callback:function ($$v) {_vm.writeNoteToRecipientIsChecked=$$v},expression:\"writeNoteToRecipientIsChecked\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Note to recipient'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.writeNoteToRecipientIsChecked)?[_c('NcTextArea',{attrs:{\"label\":_vm.t('files_sharing', 'Note to recipient'),\"placeholder\":_vm.t('files_sharing', 'Enter a note for the share recipient')},model:{value:(_vm.share.note),callback:function ($$v) {_vm.$set(_vm.share, \"note\", $$v)},expression:\"share.note\"}})]:_vm._e(),_vm._v(\" \"),(_vm.isPublicShare && _vm.isFolder)?_c('NcCheckboxRadioSwitch',{model:{value:(_vm.showInGridView),callback:function ($$v) {_vm.showInGridView=$$v},expression:\"showInGridView\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Show files in grid view'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.sortedExternalShareActions),function(action){return _c('SidebarTabExternalAction',{key:action.id,ref:\"externalShareActions\",refInFor:true,attrs:{\"action\":action,\"node\":_vm.fileInfo.node /* TODO: Fix once we have proper Node API */,\"share\":_vm.share}})}),_vm._v(\" \"),_vm._l((_vm.externalLegacyShareActions),function(action){return _c('SidebarTabExternalActionLegacy',{key:action.id,ref:\"externalLinkActions\",refInFor:true,attrs:{\"id\":action.id,\"action\":action,\"file-info\":_vm.fileInfo,\"share\":_vm.share}})}),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{model:{value:(_vm.setCustomPermissions),callback:function ($$v) {_vm.setCustomPermissions=$$v},expression:\"setCustomPermissions\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Custom permissions'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.setCustomPermissions)?_c('section',{staticClass:\"custom-permissions-group\"},[_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canRemoveReadPermission,\"data-cy-files-sharing-share-permissions-checkbox\":\"read\"},model:{value:(_vm.hasRead),callback:function ($$v) {_vm.hasRead=$$v},expression:\"hasRead\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Read'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.isFolder)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetCreate,\"data-cy-files-sharing-share-permissions-checkbox\":\"create\"},model:{value:(_vm.canCreate),callback:function ($$v) {_vm.canCreate=$$v},expression:\"canCreate\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Create'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetEdit,\"data-cy-files-sharing-share-permissions-checkbox\":\"update\"},model:{value:(_vm.canEdit),callback:function ($$v) {_vm.canEdit=$$v},expression:\"canEdit\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Edit'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.resharingIsPossible)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetReshare,\"data-cy-files-sharing-share-permissions-checkbox\":\"share\"},model:{value:(_vm.canReshare),callback:function ($$v) {_vm.canReshare=$$v},expression:\"canReshare\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Share'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetDelete,\"data-cy-files-sharing-share-permissions-checkbox\":\"delete\"},model:{value:(_vm.canDelete),callback:function ($$v) {_vm.canDelete=$$v},expression:\"canDelete\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Delete'))+\"\\n\\t\\t\\t\\t\\t\")])],1):_vm._e()],2)]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__footer\"},[_c('div',{staticClass:\"button-group\"},[_c('NcButton',{attrs:{\"data-cy-files-sharing-share-editor-action\":\"cancel\"},on:{\"click\":_vm.cancel}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__delete\"},[(!_vm.isNewShare)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Delete share'),\"disabled\":false,\"readonly\":false,\"variant\":\"tertiary\"},on:{\"click\":function($event){$event.preventDefault();return _vm.removeShare.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Delete share'))+\"\\n\\t\\t\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),_c('NcButton',{attrs:{\"variant\":\"primary\",\"data-cy-files-sharing-share-editor-action\":\"save\",\"disabled\":_vm.creating},on:{\"click\":_vm.saveShare},scopedSlots:_vm._u([(_vm.creating)?{key:\"icon\",fn:function(){return [_c('NcLoadingIcon')]},proxy:true}:null],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.shareButtonText)+\"\\n\\t\\t\\t\\t\")])],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountCircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountCircleOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccountCircleOutline.vue?vue&type=template&id=5b2fe1de\"\nimport script from \"./AccountCircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./AccountCircleOutline.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-circle-outline-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,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M7.07,18.28C7.5,17.38 10.12,16.5 12,16.5C13.88,16.5 16.5,17.38 16.93,18.28C15.57,19.36 13.86,20 12,20C10.14,20 8.43,19.36 7.07,18.28M18.36,16.83C16.93,15.09 13.46,14.5 12,14.5C10.54,14.5 7.07,15.09 5.64,16.83C4.62,15.5 4,13.82 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,13.82 19.38,15.5 18.36,16.83M12,6C10.06,6 8.5,7.56 8.5,9.5C8.5,11.44 10.06,13 12,13C13.94,13 15.5,11.44 15.5,9.5C15.5,7.56 13.94,6 12,6M12,11A1.5,1.5 0 0,1 10.5,9.5A1.5,1.5 0 0,1 12,8A1.5,1.5 0 0,1 13.5,9.5A1.5,1.5 0 0,1 12,11Z\"}},[(_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!./AccountGroup.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountGroup.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./AccountGroup.vue?vue&type=template&id=fa2b1464\"\nimport script from \"./AccountGroup.vue?vue&type=script&lang=js\"\nexport * from \"./AccountGroup.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-group-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,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z\"}},[(_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!./CircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CircleOutline.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./CircleOutline.vue?vue&type=template&id=c013567c\"\nimport script from \"./CircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./CircleOutline.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 circle-outline-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,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,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 }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Email.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Email.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Email.vue?vue&type=template&id=7dd7f6aa\"\nimport script from \"./Email.vue?vue&type=script&lang=js\"\nexport * from \"./Email.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 email-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,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z\"}},[(_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!./Eye.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Eye.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Eye.vue?vue&type=template&id=4ae2345c\"\nimport script from \"./Eye.vue?vue&type=script&lang=js\"\nexport * from \"./Eye.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 eye-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,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Refresh.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Refresh.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Refresh.vue?vue&type=template&id=2864f909\"\nimport script from \"./Refresh.vue?vue&type=script&lang=js\"\nexport * from \"./Refresh.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 refresh-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.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z\"}},[(_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!./ShareCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShareCircle.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./ShareCircle.vue?vue&type=template&id=0e958886\"\nimport script from \"./ShareCircle.vue?vue&type=script&lang=js\"\nexport * from \"./ShareCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon share-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\":\"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M14 16V13C10.39 13 7.81 14.43 6 17C6.72 13.33 8.94 9.73 14 9V6L19 11L14 16Z\"}},[(_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!./TrayArrowUp.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowUp.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./TrayArrowUp.vue?vue&type=template&id=ae55bf4e\"\nimport script from \"./TrayArrowUp.vue?vue&type=script&lang=js\"\nexport * from \"./TrayArrowUp.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-up-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 2L6.46 7.46L7.88 8.88L11 5.75V15H13V5.75L16.13 8.88L17.55 7.45L12 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/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalAction.vue?vue&type=script&lang=ts&setup=true\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalAction.vue?vue&type=script&lang=ts&setup=true\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_vm.action.element,{key:_vm.action.id,ref:\"actionElement\",tag:\"component\",domProps:{\"share\":_vm.share,\"node\":_vm.node,\"onSave\":_setup.onSave}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SidebarTabExternalAction.vue?vue&type=template&id=5ea2e6c7\"\nimport script from \"./SidebarTabExternalAction.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SidebarTabExternalAction.vue?vue&type=script&lang=ts&setup=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 null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalActionLegacy.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!./SidebarTabExternalActionLegacy.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./SidebarTabExternalActionLegacy.vue?vue&type=template&id=50e2cb04\"\nimport script from \"./SidebarTabExternalActionLegacy.vue?vue&type=script&lang=js\"\nexport * from \"./SidebarTabExternalActionLegacy.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(_vm.data.is,_vm._g(_vm._b({tag:\"component\"},'component',_vm.data,false),_vm.action.handlers),[_vm._v(\"\\n\\t\"+_vm._s(_vm.data.text)+\"\\n\")])\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 { getClient, getDefaultPropfind, getRootPath, resultToNode } from '@nextcloud/files/dav';\nexport const client = getClient();\n/**\n * Fetches a node from the given path\n *\n * @param path - The path to fetch the node from\n */\nexport async function fetchNode(path) {\n const propfindPayload = getDefaultPropfind();\n const result = await client.stat(`${getRootPath()}${path}`, {\n details: true,\n data: propfindPayload,\n });\n return resultToNode(result.data);\n}\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport axios from '@nextcloud/axios';\nimport { showError, showSuccess } from '@nextcloud/dialogs';\nimport { t } from '@nextcloud/l10n';\nimport Config from '../services/ConfigService.ts';\nimport logger from '../services/logger.ts';\nconst config = new Config();\n// note: some chars removed on purpose to make them human friendly when read out\nconst passwordSet = 'abcdefgijkmnopqrstwxyzABCDEFGHJKLMNPQRSTWXYZ23456789';\n/**\n * Generate a valid policy password or request a valid password if password_policy is enabled\n *\n * @param verbose If enabled the the status is shown to the user via toast\n */\nexport default async function (verbose = false) {\n // password policy is enabled, let's request a pass\n if (config.passwordPolicy.api && config.passwordPolicy.api.generate) {\n try {\n const request = await axios.get(config.passwordPolicy.api.generate);\n if (request.data.ocs.data.password) {\n if (verbose) {\n showSuccess(t('files_sharing', 'Password created successfully'));\n }\n return request.data.ocs.data.password;\n }\n }\n catch (error) {\n logger.info('Error generating password from password_policy', { error });\n if (verbose) {\n showError(t('files_sharing', 'Error generating password from password policy'));\n }\n }\n }\n const array = new Uint8Array(10);\n const ratio = passwordSet.length / 255;\n getRandomValues(array);\n let password = '';\n for (let i = 0; i < array.length; i++) {\n password += passwordSet.charAt(array[i] * ratio);\n }\n return password;\n}\n/**\n * Fills the given array with cryptographically secure random values.\n * If the crypto API is not available, it falls back to less secure Math.random().\n * Crypto API is available in modern browsers on secure contexts (HTTPS).\n *\n * @param array - The array to fill with random values.\n */\nfunction getRandomValues(array) {\n if (self?.crypto?.getRandomValues) {\n self.crypto.getRandomValues(array);\n return;\n }\n let len = array.length;\n while (len--) {\n array[len] = Math.floor(Math.random() * 256);\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { emit } from '@nextcloud/event-bus'\nimport { ShareType } from '@nextcloud/sharing'\nimport debounce from 'debounce'\nimport PQueue from 'p-queue'\nimport { fetchNode } from '../../../files/src/services/WebdavClient.ts'\nimport {\n\tATOMIC_PERMISSIONS,\n\tgetBundledPermissions,\n} from '../lib/SharePermissionsToolBox.js'\nimport Share from '../models/Share.ts'\nimport Config from '../services/ConfigService.ts'\nimport logger from '../services/logger.ts'\nimport GeneratePassword from '../utils/GeneratePassword.ts'\nimport SharesRequests from './ShareRequests.js'\n\nexport default {\n\tmixins: [SharesRequests],\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => { },\n\t\t\trequired: true,\n\t\t},\n\t\tshare: {\n\t\t\ttype: Share,\n\t\t\tdefault: null,\n\t\t},\n\t\tisUnique: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tconfig: new Config(),\n\t\t\tnode: null,\n\t\t\tShareType,\n\n\t\t\t// errors helpers\n\t\t\terrors: {},\n\n\t\t\t// component status toggles\n\t\t\tloading: false,\n\t\t\tsaving: false,\n\t\t\topen: false,\n\n\t\t\t/** @type {boolean | undefined} */\n\t\t\tpasswordProtectedState: undefined,\n\n\t\t\t// concurrency management queue\n\t\t\t// we want one queue per share\n\t\t\tupdateQueue: new PQueue({ concurrency: 1 }),\n\n\t\t\t/**\n\t\t\t * ! This allow vue to make the Share class state reactive\n\t\t\t * ! do not remove it ot you'll lose all reactivity here\n\t\t\t */\n\t\t\treactiveState: this.share?.state,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tpath() {\n\t\t\treturn (this.fileInfo.path + '/' + this.fileInfo.name).replace('//', '/')\n\t\t},\n\t\t/**\n\t\t * Does the current share have a note\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\thasNote: {\n\t\t\tget() {\n\t\t\t\treturn this.share.note !== ''\n\t\t\t},\n\t\t\tset(enabled) {\n\t\t\t\tthis.share.note = enabled\n\t\t\t\t\t? null // enabled but user did not changed the content yet\n\t\t\t\t\t: '' // empty = no note = disabled\n\t\t\t},\n\t\t},\n\n\t\tdateTomorrow() {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + 1))\n\t\t},\n\n\t\t// Datepicker language\n\t\tlang() {\n\t\t\tconst weekdaysShort = window.dayNamesShort\n\t\t\t\t? window.dayNamesShort // provided by Nextcloud\n\t\t\t\t: ['Sun.', 'Mon.', 'Tue.', 'Wed.', 'Thu.', 'Fri.', 'Sat.']\n\t\t\tconst monthsShort = window.monthNamesShort\n\t\t\t\t? window.monthNamesShort // provided by Nextcloud\n\t\t\t\t: ['Jan.', 'Feb.', 'Mar.', 'Apr.', 'May.', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Oct.', 'Nov.', 'Dec.']\n\t\t\tconst firstDayOfWeek = window.firstDay ? window.firstDay : 0\n\n\t\t\treturn {\n\t\t\t\tformatLocale: {\n\t\t\t\t\tfirstDayOfWeek,\n\t\t\t\t\tmonthsShort,\n\t\t\t\t\tweekdaysMin: weekdaysShort,\n\t\t\t\t\tweekdaysShort,\n\t\t\t\t},\n\t\t\t\tmonthFormat: 'MMM',\n\t\t\t}\n\t\t},\n\t\tisNewShare() {\n\t\t\treturn !this.share.id\n\t\t},\n\t\tisFolder() {\n\t\t\treturn this.fileInfo.type === 'dir'\n\t\t},\n\t\tisPublicShare() {\n\t\t\tconst shareType = this.share.shareType ?? this.share.type\n\t\t\treturn [ShareType.Link, ShareType.Email].includes(shareType)\n\t\t},\n\t\tisRemoteShare() {\n\t\t\treturn this.share.type === ShareType.RemoteGroup || this.share.type === ShareType.Remote\n\t\t},\n\t\tisShareOwner() {\n\t\t\treturn this.share && this.share.owner === getCurrentUser().uid\n\t\t},\n\t\tisExpiryDateEnforced() {\n\t\t\tif (this.isPublicShare) {\n\t\t\t\treturn this.config.isDefaultExpireDateEnforced\n\t\t\t}\n\t\t\tif (this.isRemoteShare) {\n\t\t\t\treturn this.config.isDefaultRemoteExpireDateEnforced\n\t\t\t}\n\t\t\treturn this.config.isDefaultInternalExpireDateEnforced\n\t\t},\n\t\thasCustomPermissions() {\n\t\t\tconst basePermissions = getBundledPermissions(true)\n\t\t\tconst bundledPermissions = [\n\t\t\t\tbasePermissions.ALL,\n\t\t\t\tbasePermissions.ALL_FILE,\n\t\t\t\tbasePermissions.READ_ONLY,\n\t\t\t\tbasePermissions.FILE_DROP,\n\t\t\t]\n\t\t\tconst permissionsWithoutShare = this.share.permissions & ~ATOMIC_PERMISSIONS.SHARE\n\t\t\treturn !bundledPermissions.includes(permissionsWithoutShare)\n\t\t},\n\t\tmaxExpirationDateEnforced() {\n\t\t\tif (this.isExpiryDateEnforced) {\n\t\t\t\tif (this.isPublicShare) {\n\t\t\t\t\treturn this.config.defaultExpirationDate\n\t\t\t\t}\n\t\t\t\tif (this.isRemoteShare) {\n\t\t\t\t\treturn this.config.defaultRemoteExpirationDateString\n\t\t\t\t}\n\t\t\t\t// If it get's here then it must be an internal share\n\t\t\t\treturn this.config.defaultInternalExpirationDate\n\t\t\t}\n\t\t\treturn null\n\t\t},\n\t\t/**\n\t\t * Is the current share password protected ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtected: {\n\t\t\tget() {\n\t\t\t\tif (this.config.enforcePasswordForPublicLink) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\tif (this.passwordProtectedState !== undefined) {\n\t\t\t\t\treturn this.passwordProtectedState\n\t\t\t\t}\n\t\t\t\treturn typeof this.share.newPassword === 'string'\n\t\t\t\t\t|| typeof this.share.password === 'string'\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\tif (enabled) {\n\t\t\t\t\tthis.passwordProtectedState = true\n\t\t\t\t\tconst generatedPassword = await GeneratePassword(true)\n\t\t\t\t\tif (!this.share.newPassword) {\n\t\t\t\t\t\tthis.$set(this.share, 'newPassword', generatedPassword)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.passwordProtectedState = false\n\t\t\t\t\tthis.$set(this.share, 'newPassword', '')\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Fetch WebDAV node\n\t\t *\n\t\t * @return {Node}\n\t\t */\n\t\tasync getNode() {\n\t\t\tconst node = { path: this.path }\n\t\t\ttry {\n\t\t\t\tthis.node = await fetchNode(node.path)\n\t\t\t\tlogger.info('Fetched node:', { node: this.node })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error:', error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if a share is valid before\n\t\t * firing the request\n\t\t *\n\t\t * @param {Share} share the share to check\n\t\t * @return {boolean}\n\t\t */\n\t\tcheckShare(share) {\n\t\t\tif (share.password) {\n\t\t\t\tif (typeof share.password !== 'string' || share.password.trim() === '') {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (share.newPassword) {\n\t\t\t\tif (typeof share.newPassword !== 'string') {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (share.expirationDate) {\n\t\t\t\tconst date = share.expirationDate\n\t\t\t\tif (!date.isValid()) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true\n\t\t},\n\n\t\t/**\n\t\t * @param {Date} date the date to format\n\t\t * @return {string} date a date with YYYY-MM-DD format\n\t\t */\n\t\tformatDateToString(date) {\n\t\t\t// Force utc time. Drop time information to be timezone-less\n\t\t\tconst utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()))\n\t\t\t// Format to YYYY-MM-DD\n\t\t\treturn utcDate.toISOString().split('T')[0]\n\t\t},\n\n\t\t/**\n\t\t * Save given value to expireDate and trigger queueUpdate\n\t\t *\n\t\t * @param {Date} date\n\t\t */\n\t\tonExpirationChange(date) {\n\t\t\tif (!date) {\n\t\t\t\tthis.share.expireDate = null\n\t\t\t\tthis.$set(this.share, 'expireDate', null)\n\t\t\t\treturn\n\t\t\t}\n\t\t\tconst parsedDate = (date instanceof Date) ? date : new Date(date)\n\t\t\tthis.share.expireDate = this.formatDateToString(parsedDate)\n\t\t},\n\n\t\t/**\n\t\t * Note changed, let's save it to a different key\n\t\t *\n\t\t * @param {string} note the share note\n\t\t */\n\t\tonNoteChange(note) {\n\t\t\tthis.$set(this.share, 'newNote', note.trim())\n\t\t},\n\n\t\t/**\n\t\t * When the note change, we trim, save and dispatch\n\t\t *\n\t\t */\n\t\tonNoteSubmit() {\n\t\t\tif (this.share.newNote) {\n\t\t\t\tthis.share.note = this.share.newNote\n\t\t\t\tthis.$delete(this.share, 'newNote')\n\t\t\t\tthis.queueUpdate('note')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Delete share button handler\n\t\t */\n\t\tasync onDelete() {\n\t\t\ttry {\n\t\t\t\tthis.loading = true\n\t\t\t\tthis.open = false\n\t\t\t\tawait this.deleteShare(this.share.id)\n\t\t\t\tlogger.debug('Share deleted', { shareId: this.share.id })\n\t\t\t\tconst path = this.share.path.replace(/^\\//, '')\n\t\t\t\tconst message = this.share.itemType === 'file'\n\t\t\t\t\t? t('files_sharing', 'File \"{path}\" has been unshared', { path })\n\t\t\t\t\t: t('files_sharing', 'Folder \"{path}\" has been unshared', { path })\n\t\t\t\tshowSuccess(message)\n\t\t\t\tthis.$emit('remove:share', this.share)\n\t\t\t\tawait this.getNode()\n\t\t\t\temit('files:node:updated', this.node)\n\t\t\t} catch {\n\t\t\t\t// re-open menu if error\n\t\t\t\tthis.open = true\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Send an update of the share to the queue\n\t\t *\n\t\t * @param {Array} propertyNames the properties to sync\n\t\t */\n\t\tqueueUpdate(...propertyNames) {\n\t\t\tif (propertyNames.length === 0) {\n\t\t\t\t// Nothing to update\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.share.id) {\n\t\t\t\tconst properties = {}\n\t\t\t\t// force value to string because that is what our\n\t\t\t\t// share api controller accepts\n\t\t\t\tfor (const name of propertyNames) {\n\t\t\t\t\tif (name === 'password') {\n\t\t\t\t\t\tif (this.share.newPassword !== undefined) {\n\t\t\t\t\t\t\tproperties[name] = this.share.newPassword\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this.share[name] === null || this.share[name] === undefined) {\n\t\t\t\t\t\tproperties[name] = ''\n\t\t\t\t\t} else if ((typeof this.share[name]) === 'object') {\n\t\t\t\t\t\tproperties[name] = JSON.stringify(this.share[name])\n\t\t\t\t\t} else {\n\t\t\t\t\t\tproperties[name] = this.share[name].toString()\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn this.updateQueue.add(async () => {\n\t\t\t\t\tthis.saving = true\n\t\t\t\t\tthis.errors = {}\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst updatedShare = await this.updateShare(this.share.id, properties)\n\n\t\t\t\t\t\tif (propertyNames.includes('password')) {\n\t\t\t\t\t\t\t// reset password state after sync\n\t\t\t\t\t\t\tthis.share.password = this.share.newPassword || undefined\n\t\t\t\t\t\t\tthis.$delete(this.share, 'newPassword')\n\n\t\t\t\t\t\t\t// updates password expiration time after sync\n\t\t\t\t\t\t\tthis.share.passwordExpirationTime = updatedShare.password_expiration_time\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// clear any previous errors\n\t\t\t\t\t\tfor (const property of propertyNames) {\n\t\t\t\t\t\t\tthis.$delete(this.errors, property)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshowSuccess(this.updateSuccessMessage(propertyNames))\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tlogger.error('Could not update share', { error, share: this.share, propertyNames })\n\n\t\t\t\t\t\tconst { message } = error\n\t\t\t\t\t\tif (message && message !== '') {\n\t\t\t\t\t\t\tfor (const property of propertyNames) {\n\t\t\t\t\t\t\t\tthis.onSyncError(property, message)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tshowError(message)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// We do not have information what happened, but we should still inform the user\n\t\t\t\t\t\t\tshowError(t('files_sharing', 'Could not update share'))\n\t\t\t\t\t\t}\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tthis.saving = false\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\n\t\t\t// This share does not exists on the server yet\n\t\t\tlogger.debug('Updated local share', { share: this.share })\n\t\t},\n\n\t\t/**\n\t\t * @param {string[]} names Properties changed\n\t\t */\n\t\tupdateSuccessMessage(names) {\n\t\t\tif (names.length !== 1) {\n\t\t\t\treturn t('files_sharing', 'Share saved')\n\t\t\t}\n\n\t\t\tswitch (names[0]) {\n\t\t\t\tcase 'expireDate':\n\t\t\t\t\treturn t('files_sharing', 'Share expiry date saved')\n\t\t\t\tcase 'hideDownload':\n\t\t\t\t\treturn t('files_sharing', 'Share hide-download state saved')\n\t\t\t\tcase 'label':\n\t\t\t\t\treturn t('files_sharing', 'Share label saved')\n\t\t\t\tcase 'note':\n\t\t\t\t\treturn t('files_sharing', 'Share note for recipient saved')\n\t\t\t\tcase 'password':\n\t\t\t\t\treturn t('files_sharing', 'Share password saved')\n\t\t\t\tcase 'permissions':\n\t\t\t\t\treturn t('files_sharing', 'Share permissions saved')\n\t\t\t\tdefault:\n\t\t\t\t\treturn t('files_sharing', 'Share saved')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Manage sync errors\n\t\t *\n\t\t * @param {string} property the errored property, e.g. 'password'\n\t\t * @param {string} message the error message\n\t\t */\n\t\tonSyncError(property, message) {\n\t\t\tif (property === 'password' && this.share.newPassword !== undefined) {\n\t\t\t\tif (this.share.newPassword === this.share.password) {\n\t\t\t\t\tthis.share.password = ''\n\t\t\t\t}\n\t\t\t\tthis.$delete(this.share, 'newPassword')\n\t\t\t}\n\n\t\t\t// re-open menu if closed\n\t\t\tthis.open = true\n\t\t\tswitch (property) {\n\t\t\t\tcase 'password':\n\t\t\t\tcase 'pending':\n\t\t\t\tcase 'expireDate':\n\t\t\t\tcase 'label':\n\t\t\t\tcase 'note': {\n\t\t\t\t// show error\n\t\t\t\t\tthis.$set(this.errors, property, message)\n\n\t\t\t\t\tlet propertyEl = this.$refs[property]\n\t\t\t\t\tif (propertyEl) {\n\t\t\t\t\t\tif (propertyEl.$el) {\n\t\t\t\t\t\t\tpropertyEl = propertyEl.$el\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// focus if there is a focusable action element\n\t\t\t\t\t\tconst focusable = propertyEl.querySelector('.focusable')\n\t\t\t\t\t\tif (focusable) {\n\t\t\t\t\t\t\tfocusable.focus()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t\tcase 'sendPasswordByTalk': {\n\t\t\t\t// show error\n\t\t\t\t\tthis.$set(this.errors, property, message)\n\n\t\t\t\t\t// Restore previous state\n\t\t\t\t\tthis.share.sendPasswordByTalk = !this.share.sendPasswordByTalk\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Debounce queueUpdate to avoid requests spamming\n\t\t * more importantly for text data\n\t\t *\n\t\t * @param {string} property the property to sync\n\t\t */\n\t\tdebounceQueueUpdate: debounce(function(property) {\n\t\t\tthis.queueUpdate(property)\n\t\t}, 500),\n\t},\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.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!./SharingDetailsTab.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport isSvg from 'is-svg';\n/**\n * Register a new sidebar action\n *\n * @param action - The action to register\n */\nexport function registerSidebarAction(action) {\n if (!action.id) {\n throw new Error('Sidebar actions must have an id');\n }\n if (!action.element || !action.element.startsWith('oca_') || !window.customElements.get(action.element)) {\n throw new Error('Sidebar actions must provide a registered custom web component identifier');\n }\n if (typeof action.order !== 'number') {\n throw new Error('Sidebar actions must have the order property');\n }\n if (typeof action.enabled !== 'function') {\n throw new Error('Sidebar actions must implement the \"enabled\" method');\n }\n window._nc_files_sharing_sidebar_actions ??= new Map();\n if (window._nc_files_sharing_sidebar_actions.has(action.id)) {\n throw new Error(`Sidebar action with id \"${action.id}\" is already registered`);\n }\n window._nc_files_sharing_sidebar_actions.set(action.id, action);\n}\n/**\n * Register a new sidebar action\n *\n * @param action - The action to register\n */\nexport function registerSidebarInlineAction(action) {\n if (!action.id) {\n throw new Error('Sidebar actions must have an id');\n }\n if (typeof action.order !== 'number') {\n throw new Error('Sidebar actions must have the \"order\" property');\n }\n if (typeof action.iconSvg !== 'string' || !isSvg(action.iconSvg)) {\n throw new Error('Sidebar actions must have the \"iconSvg\" property');\n }\n if (typeof action.label !== 'function') {\n throw new Error('Sidebar actions must implement the \"label\" method');\n }\n if (typeof action.exec !== 'function') {\n throw new Error('Sidebar actions must implement the \"exec\" method');\n }\n if (typeof action.enabled !== 'function') {\n throw new Error('Sidebar actions must implement the \"enabled\" method');\n }\n window._nc_files_sharing_sidebar_inline_actions ??= new Map();\n if (window._nc_files_sharing_sidebar_inline_actions.has(action.id)) {\n throw new Error(`Sidebar action with id \"${action.id}\" is already registered`);\n }\n window._nc_files_sharing_sidebar_inline_actions.set(action.id, action);\n}\n/**\n * Get all registered sidebar actions\n */\nexport function getSidebarActions() {\n return [...(window._nc_files_sharing_sidebar_actions?.values() ?? [])];\n}\n/**\n * Get all registered sidebar inline actions\n */\nexport function getSidebarInlineActions() {\n return [...(window._nc_files_sharing_sidebar_inline_actions?.values() ?? [])];\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport axios from '@nextcloud/axios';\nimport { generateOcsUrl } from '@nextcloud/router';\n/**\n *\n */\nexport async function generateToken() {\n const { data } = await axios.get(generateOcsUrl('/apps/files_sharing/api/v1/token'));\n return data.ocs.data.token;\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=style&index=0&id=289355eb&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=style&index=0&id=289355eb&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingDetailsTab.vue?vue&type=template&id=289355eb&scoped=true\"\nimport script from \"./SharingDetailsTab.vue?vue&type=script&lang=js\"\nexport * from \"./SharingDetailsTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingDetailsTab.vue?vue&type=style&index=0&id=289355eb&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 \"289355eb\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{attrs:{\"id\":\"sharing-inherited-shares\"}},[_c('SharingEntrySimple',{staticClass:\"sharing-entry__inherited\",attrs:{\"title\":_vm.mainTitle,\"subtitle\":_vm.subTitle,\"aria-expanded\":_vm.showInheritedShares},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('div',{staticClass:\"avatar-shared icon-more-white\"})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"icon\":_vm.showInheritedSharesIcon,\"aria-label\":_vm.toggleTooltip,\"title\":_vm.toggleTooltip},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.toggleInheritedShares.apply(null, arguments)}}})],1),_vm._v(\" \"),_vm._l((_vm.shares),function(share){return _c('SharingEntryInherited',{key:share.id,attrs:{\"file-info\":_vm.fileInfo,\"share\":share},on:{\"remove:share\":_vm.removeShare}})})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.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!./SharingEntryInherited.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=style&index=0&id=731a9650&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=style&index=0&id=731a9650&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryInherited.vue?vue&type=template&id=731a9650&scoped=true\"\nimport script from \"./SharingEntryInherited.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryInherited.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryInherited.vue?vue&type=style&index=0&id=731a9650&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 \"731a9650\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('SharingEntrySimple',{key:_vm.share.id,staticClass:\"sharing-entry__inherited\",attrs:{\"title\":_vm.share.shareWithDisplayName},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName}})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionText',{attrs:{\"icon\":\"icon-user\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Added by {initiator}', { initiator: _vm.share.ownerDisplayName }))+\"\\n\\t\")]),_vm._v(\" \"),(_vm.share.viaPath && _vm.share.viaFileid)?_c('NcActionLink',{attrs:{\"icon\":\"icon-folder\",\"href\":_vm.viaFileTargetUrl}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Via “{folder}”', { folder: _vm.viaFolderName }))+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share.canDelete)?_c('NcActionButton',{attrs:{\"icon\":\"icon-close\"},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete.apply(null, arguments)}}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Unshare'))+\"\\n\\t\")]):_vm._e()],1)\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!./SharingInherited.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!./SharingInherited.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=style&index=0&id=cedf3238&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=style&index=0&id=cedf3238&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingInherited.vue?vue&type=template&id=cedf3238&scoped=true\"\nimport script from \"./SharingInherited.vue?vue&type=script&lang=js\"\nexport * from \"./SharingInherited.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingInherited.vue?vue&type=style&index=0&id=cedf3238&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 \"cedf3238\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.canLinkShare)?_c('ul',{staticClass:\"sharing-link-list\",attrs:{\"aria-label\":_vm.t('files_sharing', 'Link shares')}},[(_vm.hasShares)?_vm._l((_vm.shares),function(share,index){return _c('SharingEntryLink',{key:share.id,attrs:{\"index\":_vm.shares.length > 1 ? index + 1 : null,\"can-reshare\":_vm.canReshare,\"share\":_vm.shares[index],\"file-info\":_vm.fileInfo},on:{\"update:share\":[function($event){return _vm.$set(_vm.shares, index, $event)},function($event){return _vm.awaitForShare(...arguments)}],\"add:share\":function($event){return _vm.addShare(...arguments)},\"remove:share\":_vm.removeShare,\"open-sharing-details\":function($event){return _vm.openSharingDetails(share)}}})}):_vm._e(),_vm._v(\" \"),(!_vm.hasLinkShares && _vm.canReshare)?_c('SharingEntryLink',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo},on:{\"add:share\":_vm.addShare}}):_vm._e()],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlankOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlankOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CalendarBlankOutline.vue?vue&type=template&id=784b59e6\"\nimport script from \"./CalendarBlankOutline.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarBlankOutline.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 calendar-blank-outline-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 3H18V1H16V3H8V1H6V3H5C3.89 3 3 3.9 3 5V19C3 20.11 3.9 21 5 21H19C20.11 21 21 20.11 21 19V5C21 3.9 20.11 3 19 3M19 19H5V9H19V19M19 7H5V5H19V7Z\"}},[(_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!./CheckBold.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CheckBold.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./CheckBold.vue?vue&type=template&id=5603f41f\"\nimport script from \"./CheckBold.vue?vue&type=script&lang=js\"\nexport * from \"./CheckBold.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 check-bold-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\":\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\"}},[(_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!./Exclamation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Exclamation.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Exclamation.vue?vue&type=template&id=03239926\"\nimport script from \"./Exclamation.vue?vue&type=script&lang=js\"\nexport * from \"./Exclamation.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 exclamation-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\":\"M 11,4L 13,4L 13,15L 11,15L 11,4 Z M 13,18L 13,20L 11,20L 11,18L 13,18 Z\"}},[(_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!./LockOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./LockOutline.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./LockOutline.vue?vue&type=template&id=54353a96\"\nimport script from \"./LockOutline.vue?vue&type=script&lang=js\"\nexport * from \"./LockOutline.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 lock-outline-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,17C10.89,17 10,16.1 10,15C10,13.89 10.89,13 12,13A2,2 0 0,1 14,15A2,2 0 0,1 12,17M18,20V10H6V20H18M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10C4,8.89 4.89,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z\"}},[(_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!./Plus.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Plus.vue?vue&type=template&id=055261ec\"\nimport script from \"./Plus.vue?vue&type=script&lang=js\"\nexport * from \"./Plus.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 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\":\"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\"}},[(_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!./Qrcode.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Qrcode.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Qrcode.vue?vue&type=template&id=aba87788\"\nimport script from \"./Qrcode.vue?vue&type=script&lang=js\"\nexport * from \"./Qrcode.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 qrcode-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,11H5V13H3V11M11,5H13V9H11V5M9,11H13V15H11V13H9V11M15,11H17V13H19V11H21V13H19V15H21V19H19V21H17V19H13V21H11V17H15V15H17V13H15V11M19,19V15H17V19H19M15,3H21V9H15V3M17,5V7H19V5H17M3,3H9V9H3V3M5,5V7H7V5H5M3,15H9V21H3V15M5,17V19H7V17H5Z\"}},[(_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!./Tune.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tune.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Tune.vue?vue&type=template&id=18d04e6a\"\nimport script from \"./Tune.vue?vue&type=script&lang=js\"\nexport * from \"./Tune.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 tune-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,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z\"}},[(_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;return _c('div',{staticClass:\"share-expiry-time\"},[_c('NcPopover',{attrs:{\"popup-role\":\"dialog\"},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [(_vm.expiryTime)?_c('NcButton',{staticClass:\"hint-icon\",attrs:{\"variant\":\"tertiary\",\"aria-label\":_vm.t('files_sharing', 'Share expiration: {date}', { date: new Date(_vm.expiryTime).toLocaleString() })},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ClockIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,3754271979)}):_vm._e()]},proxy:true}])},[_vm._v(\" \"),_c('h3',{staticClass:\"hint-heading\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Share Expiration'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.expiryTime)?_c('p',{staticClass:\"hint-body\"},[_c('NcDateTime',{attrs:{\"timestamp\":_vm.expiryTime,\"format\":_vm.timeFormat,\"relative-time\":false}}),_vm._v(\" (\"),_c('NcDateTime',{attrs:{\"timestamp\":_vm.expiryTime}}),_vm._v(\")\\n\\t\\t\")],1):_vm._e()])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClockOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClockOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClockOutline.vue?vue&type=template&id=1a84e403\"\nimport script from \"./ClockOutline.vue?vue&type=script&lang=js\"\nexport * from \"./ClockOutline.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 clock-outline-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,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22C6.47,22 2,17.5 2,12A10,10 0 0,1 12,2M12.5,7V12.25L17,14.92L16.25,16.15L11,13V7H12.5Z\"}},[(_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!./ShareExpiryTime.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!./ShareExpiryTime.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareExpiryTime.vue?vue&type=style&index=0&id=c9199db0&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareExpiryTime.vue?vue&type=style&index=0&id=c9199db0&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ShareExpiryTime.vue?vue&type=template&id=c9199db0&scoped=true\"\nimport script from \"./ShareExpiryTime.vue?vue&type=script&lang=js\"\nexport * from \"./ShareExpiryTime.vue?vue&type=script&lang=js\"\nimport style0 from \"./ShareExpiryTime.vue?vue&type=style&index=0&id=c9199db0&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 \"c9199db0\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./EyeOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./EyeOutline.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./EyeOutline.vue?vue&type=template&id=e26de6f6\"\nimport script from \"./EyeOutline.vue?vue&type=script&lang=js\"\nexport * from \"./EyeOutline.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 eye-outline-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,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9M12,4.5C17,4.5 21.27,7.61 23,12C21.27,16.39 17,19.5 12,19.5C7,19.5 2.73,16.39 1,12C2.73,7.61 7,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C15.76,17.5 19.17,15.36 20.82,12C19.17,8.64 15.76,6.5 12,6.5C8.24,6.5 4.83,8.64 3.18,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!./TriangleSmallDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TriangleSmallDown.vue?vue&type=script&lang=js\"","\n\n","\n\n\n\n\n\n","import { render, staticRenderFns } from \"./TriangleSmallDown.vue?vue&type=template&id=1eed3dd9\"\nimport script from \"./TriangleSmallDown.vue?vue&type=script&lang=js\"\nexport * from \"./TriangleSmallDown.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 triangle-small-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\":\"M8 9H16L12 16\"}},[(_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!./SharingEntryQuickShareSelect.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!./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=b5eca1ec&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=b5eca1ec&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryQuickShareSelect.vue?vue&type=template&id=b5eca1ec&scoped=true\"\nimport script from \"./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=b5eca1ec&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 \"b5eca1ec\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcActions',{ref:\"quickShareActions\",staticClass:\"share-select\",attrs:{\"menu-name\":_vm.selectedOption,\"aria-label\":_vm.ariaLabel,\"variant\":\"tertiary-no-background\",\"disabled\":!_vm.share.canEdit,\"force-name\":\"\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DropdownIcon',{attrs:{\"size\":15}})]},proxy:true}])},[_vm._v(\" \"),_vm._l((_vm.options),function(option){return _c('NcActionButton',{key:option.label,attrs:{\"type\":\"radio\",\"model-value\":option.label === _vm.selectedOption,\"close-after-click\":\"\"},on:{\"click\":function($event){return _vm.selectOption(option.label)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(option.icon,{tag:\"component\"})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\"+_vm._s(option.label)+\"\\n\\t\")])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.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!./SharingEntryLink.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=style&index=0&id=4ca4172c&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=style&index=0&id=4ca4172c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryLink.vue?vue&type=template&id=4ca4172c&scoped=true\"\nimport script from \"./SharingEntryLink.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryLink.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryLink.vue?vue&type=style&index=0&id=4ca4172c&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 \"4ca4172c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry sharing-entry__link\",class:{ 'sharing-entry--share': _vm.share }},[_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":true,\"icon-class\":_vm.isEmailShareType ? 'avatar-link-share icon-mail-white' : 'avatar-link-share icon-public-white'}}),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__summary\"},[_c('div',{staticClass:\"sharing-entry__desc\"},[_c('span',{staticClass:\"sharing-entry__title\",attrs:{\"title\":_vm.title}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.title)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),(_vm.subtitle)?_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.subtitle)+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share && _vm.share.permissions !== undefined)?_c('SharingEntryQuickShareSelect',{attrs:{\"share\":_vm.share,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":function($event){return _vm.openShareDetailsForCustomSettings(_vm.share)}}}):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__actions\"},[(_vm.share && _vm.share.expireDate)?_c('ShareExpiryTime',{attrs:{\"share\":_vm.share}}):_vm._e(),_vm._v(\" \"),_c('div',[(_vm.share && (!_vm.isEmailShareType || _vm.isFileRequest) && _vm.share.token)?_c('NcActions',{ref:\"copyButton\",staticClass:\"sharing-entry__copy\"},[_c('NcActionButton',{attrs:{\"aria-label\":_vm.copyLinkLabel,\"title\":_vm.copySuccess ? _vm.t('files_sharing', 'Successfully copied public link') : undefined,\"href\":_vm.shareLink},on:{\"click\":function($event){$event.preventDefault();return _vm.copyLink.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{staticClass:\"sharing-entry__copy-icon\",class:{ 'sharing-entry__copy-icon--success': _vm.copySuccess },attrs:{\"path\":_vm.copySuccess ? _vm.mdiCheck : _vm.mdiContentCopy}})]},proxy:true}],null,false,1728815133)})],1):_vm._e()],1)],1)]),_vm._v(\" \"),(!_vm.pending && _vm.pendingDataIsMissing)?_c('NcActions',{staticClass:\"sharing-entry__actions\",attrs:{\"aria-label\":_vm.actionsTooltip,\"menu-align\":\"right\",\"open\":_vm.open},on:{\"update:open\":function($event){_vm.open=$event},\"close\":_vm.onCancel}},[(_vm.errors.pending)?_c('NcActionText',{staticClass:\"error\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ErrorIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1966124155)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.errors.pending)+\"\\n\\t\\t\")]):_c('NcActionText',{attrs:{\"icon\":\"icon-info\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Please enter the following required information before creating the share'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.pendingPassword)?_c('NcActionCheckbox',{staticClass:\"share-link-password-checkbox\",attrs:{\"disabled\":_vm.config.enforcePasswordForPublicLink || _vm.saving},on:{\"uncheck\":_vm.onPasswordDisable},model:{value:(_vm.isPasswordProtected),callback:function ($$v) {_vm.isPasswordProtected=$$v},expression:\"isPasswordProtected\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.config.enforcePasswordForPublicLink ? _vm.t('files_sharing', 'Password protection (enforced)') : _vm.t('files_sharing', 'Password protection'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.pendingEnforcedPassword || _vm.isPasswordProtected)?_c('NcActionInput',{staticClass:\"share-link-password\",attrs:{\"label\":_vm.t('files_sharing', 'Enter a password'),\"disabled\":_vm.saving,\"required\":_vm.config.enableLinkPasswordByDefault || _vm.config.enforcePasswordForPublicLink,\"minlength\":_vm.isPasswordPolicyEnabled && _vm.config.passwordPolicy.minLength,\"autocomplete\":\"new-password\"},on:{\"submit\":function($event){return _vm.onNewLinkShare(true)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('LockIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2056568168),model:{value:(_vm.share.newPassword),callback:function ($$v) {_vm.$set(_vm.share, \"newPassword\", $$v)},expression:\"share.newPassword\"}}):_vm._e(),_vm._v(\" \"),(_vm.pendingDefaultExpirationDate)?_c('NcActionCheckbox',{staticClass:\"share-link-expiration-date-checkbox\",attrs:{\"disabled\":_vm.pendingEnforcedExpirationDate || _vm.saving},on:{\"update:model-value\":_vm.onExpirationDateToggleUpdate},model:{value:(_vm.defaultExpirationDateEnabled),callback:function ($$v) {_vm.defaultExpirationDateEnabled=$$v},expression:\"defaultExpirationDateEnabled\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.config.isDefaultExpireDateEnforced ? _vm.t('files_sharing', 'Enable link expiration (enforced)') : _vm.t('files_sharing', 'Enable link expiration'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),((_vm.pendingDefaultExpirationDate || _vm.pendingEnforcedExpirationDate) && _vm.defaultExpirationDateEnabled)?_c('NcActionInput',{staticClass:\"share-link-expire-date\",attrs:{\"data-cy-files-sharing-expiration-date-input\":\"\",\"label\":_vm.pendingEnforcedExpirationDate ? _vm.t('files_sharing', 'Enter expiration date (enforced)') : _vm.t('files_sharing', 'Enter expiration date'),\"disabled\":_vm.saving,\"is-native-picker\":true,\"hide-label\":true,\"model-value\":new Date(_vm.share.expireDate),\"type\":\"date\",\"min\":_vm.dateTomorrow,\"max\":_vm.maxExpirationDateEnforced},on:{\"update:model-value\":_vm.onExpirationChange,\"change\":_vm.expirationDateChanged},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconCalendarBlank',{attrs:{\"size\":20}})]},proxy:true}],null,false,3418578971)}):_vm._e(),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"disabled\":_vm.pendingEnforcedPassword && !_vm.share.newPassword},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare(true)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CheckIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2630571749)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Create share'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onCancel.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\")])],1):(!_vm.loading)?_c('NcActions',{staticClass:\"sharing-entry__actions\",attrs:{\"aria-label\":_vm.actionsTooltip,\"menu-align\":\"right\",\"open\":_vm.open},on:{\"update:open\":function($event){_vm.open=$event},\"close\":_vm.onMenuClose}},[(_vm.share)?[(_vm.share.canEdit && _vm.canReshare)?[_c('NcActionButton',{attrs:{\"disabled\":_vm.saving,\"close-after-click\":true},on:{\"click\":function($event){$event.preventDefault();return _vm.openSharingDetails.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Tune',{attrs:{\"size\":20}})]},proxy:true}],null,false,1300586850)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Customize link'))+\"\\n\\t\\t\\t\\t\")])]:_vm._e(),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){$event.preventDefault();_vm.showQRCode = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconQr',{attrs:{\"size\":20}})]},proxy:true}],null,false,1082198240)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Generate QR code'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.sortedExternalShareActions),function(action){return _c('NcActionButton',{key:action.id,on:{\"click\":function($event){return action.exec(_vm.share, _vm.fileInfo.node)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvg}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(action.label(_vm.share, _vm.fileInfo.node))+\"\\n\\t\\t\\t\")])}),_vm._v(\" \"),_vm._l((_vm.externalLegacyShareActions),function(action){return _c('SidebarTabExternalActionLegacy',{key:action.id,attrs:{\"id\":action.id,\"action\":action,\"file-info\":_vm.fileInfo,\"share\":_vm.share}})}),_vm._v(\" \"),(!_vm.isEmailShareType && _vm.canReshare)?_c('NcActionButton',{staticClass:\"new-share-link\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare.apply(null, arguments)}},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\"+_vm._s(_vm.t('files_sharing', 'Add another link'))+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share.canDelete)?_c('NcActionButton',{attrs:{\"disabled\":_vm.saving},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Unshare'))+\"\\n\\t\\t\\t\")]):_vm._e()]:(_vm.canReshare)?_c('NcActionButton',{staticClass:\"new-share-link\",attrs:{\"title\":_vm.t('files_sharing', 'Create a new share link'),\"aria-label\":_vm.t('files_sharing', 'Create a new share link'),\"icon\":_vm.loading ? 'icon-loading-small' : 'icon-add'},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare.apply(null, arguments)}}}):_vm._e()],2):_c('NcLoadingIcon',{staticClass:\"sharing-entry__loading\"}),_vm._v(\" \"),(_vm.showQRCode)?_c('NcDialog',{attrs:{\"size\":\"normal\",\"open\":_vm.showQRCode,\"name\":_vm.title,\"close-on-click-outside\":true},on:{\"update:open\":function($event){_vm.showQRCode=$event},\"close\":function($event){_vm.showQRCode = false}}},[_c('div',{staticClass:\"qr-code-dialog\"},[_c('VueQrcode',{staticClass:\"qr-code-dialog__img\",attrs:{\"tag\":\"img\",\"value\":_vm.shareLink}})],1)]):_vm._e()],1)\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!./SharingLinkList.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!./SharingLinkList.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./SharingLinkList.vue?vue&type=template&id=708b3104\"\nimport script from \"./SharingLinkList.vue?vue&type=script&lang=js\"\nexport * from \"./SharingLinkList.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","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.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!./SharingEntry.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=style&index=0&id=469e5e80&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=style&index=0&id=469e5e80&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntry.vue?vue&type=template&id=469e5e80&scoped=true\"\nimport script from \"./SharingEntry.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntry.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntry.vue?vue&type=style&index=0&id=469e5e80&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 \"469e5e80\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingList.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!./SharingList.vue?vue&type=script&lang=js\"","\n\n\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry\"},[_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":_vm.share.type !== _vm.ShareType.User,\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName,\"menu-position\":\"left\",\"url\":_vm.share.shareWithAvatar}}),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__summary\"},[_c(_vm.share.shareWithLink ? 'a' : 'div',{tag:\"component\",staticClass:\"sharing-entry__summary__desc\",attrs:{\"title\":_vm.tooltip,\"aria-label\":_vm.tooltip,\"href\":_vm.share.shareWithLink}},[_c('span',[_vm._v(_vm._s(_vm.title)+\"\\n\\t\\t\\t\\t\"),(!_vm.isUnique)?_c('span',{staticClass:\"sharing-entry__summary__desc-unique\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t(\"+_vm._s(_vm.share.shareWithDisplayNameUnique)+\")\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.hasStatus && _vm.share.status.message)?_c('small',[_vm._v(\"(\"+_vm._s(_vm.share.status.message)+\")\")]):_vm._e()])]),_vm._v(\" \"),_c('SharingEntryQuickShareSelect',{attrs:{\"share\":_vm.share,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":function($event){return _vm.openShareDetailsForCustomSettings(_vm.share)}}})],1),_vm._v(\" \"),(_vm.share && _vm.share.expireDate)?_c('ShareExpiryTime',{attrs:{\"share\":_vm.share}}):_vm._e(),_vm._v(\" \"),(_vm.share.canEdit)?_c('NcButton',{staticClass:\"sharing-entry__action\",attrs:{\"data-cy-files-sharing-share-actions\":\"\",\"aria-label\":_vm.t('files_sharing', 'Open Sharing Details'),\"variant\":\"tertiary\"},on:{\"click\":function($event){return _vm.openSharingDetails(_vm.share)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1700783217)}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SharingList.vue?vue&type=template&id=7e1141c6\"\nimport script from \"./SharingList.vue?vue&type=script&lang=js\"\nexport * from \"./SharingList.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('ul',{staticClass:\"sharing-sharee-list\",attrs:{\"aria-label\":_vm.t('files_sharing', 'Shares')}},_vm._l((_vm.shares),function(share){return _c('SharingEntry',{key:share.id,attrs:{\"file-info\":_vm.fileInfo,\"share\":share,\"is-unique\":_vm.isUnique(share)},on:{\"open-sharing-details\":function($event){return _vm.openSharingDetails(share)}}})}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\n/**\n * Register a new sidebar section inside the files sharing sidebar tab.\n *\n * @param section - The section to register\n */\nexport function registerSidebarSection(section) {\n if (!section.id) {\n throw new Error('Sidebar sections must have an id');\n }\n if (!section.element || !section.element.startsWith('oca_') || !window.customElements.get(section.element)) {\n throw new Error('Sidebar sections must provide a registered custom web component identifier');\n }\n if (typeof section.order !== 'number') {\n throw new Error('Sidebar sections must have the order property');\n }\n if (typeof section.enabled !== 'function') {\n throw new Error('Sidebar sections must implement the enabled method');\n }\n window._nc_files_sharing_sidebar_sections ??= new Map();\n if (window._nc_files_sharing_sidebar_sections.has(section.id)) {\n throw new Error(`Sidebar section with id \"${section.id}\" is already registered`);\n }\n window._nc_files_sharing_sidebar_sections.set(section.id, section);\n}\n/**\n * Get all registered sidebar sections for the files sharing sidebar tab.\n */\nexport function getSidebarSections() {\n return [...(window._nc_files_sharing_sidebar_sections?.values() ?? [])];\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { ShareType } from '@nextcloud/sharing'\n\n/**\n *\n * @param share\n */\nfunction shareWithTitle(share) {\n\tif (share.type === ShareType.Group) {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you and the group {group} by {owner}',\n\t\t\t{\n\t\t\t\tgroup: share.shareWithDisplayName,\n\t\t\t\towner: share.ownerDisplayName,\n\t\t\t},\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t} else if (share.type === ShareType.Team) {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you and {circle} by {owner}',\n\t\t\t{\n\t\t\t\tcircle: share.shareWithDisplayName,\n\t\t\t\towner: share.ownerDisplayName,\n\t\t\t},\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t} else if (share.type === ShareType.Room) {\n\t\tif (share.shareWithDisplayName) {\n\t\t\treturn t(\n\t\t\t\t'files_sharing',\n\t\t\t\t'Shared with you and the conversation {conversation} by {owner}',\n\t\t\t\t{\n\t\t\t\t\tconversation: share.shareWithDisplayName,\n\t\t\t\t\towner: share.ownerDisplayName,\n\t\t\t\t},\n\t\t\t\tundefined,\n\t\t\t\t{ escape: false },\n\t\t\t)\n\t\t} else {\n\t\t\treturn t(\n\t\t\t\t'files_sharing',\n\t\t\t\t'Shared with you in a conversation by {owner}',\n\t\t\t\t{\n\t\t\t\t\towner: share.ownerDisplayName,\n\t\t\t\t},\n\t\t\t\tundefined,\n\t\t\t\t{ escape: false },\n\t\t\t)\n\t\t}\n\t} else {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you by {owner}',\n\t\t\t{ owner: share.ownerDisplayName },\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t}\n}\n\nexport { shareWithTitle }\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.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!./SharingTab.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=style&index=0&id=cd6ad9ee&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=style&index=0&id=cd6ad9ee&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingTab.vue?vue&type=template&id=cd6ad9ee&scoped=true\"\nimport script from \"./SharingTab.vue?vue&type=script&lang=js\"\nexport * from \"./SharingTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingTab.vue?vue&type=style&index=0&id=cd6ad9ee&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 \"cd6ad9ee\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharingTab\",class:{ 'icon-loading': _vm.loading }},[(_vm.error)?_c('div',{staticClass:\"emptycontent\",class:{ emptyContentWithSections: _vm.hasExternalSections }},[_c('div',{staticClass:\"icon icon-error\"}),_vm._v(\" \"),_c('h2',[_vm._v(_vm._s(_vm.error))])]):_vm._e(),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showSharingDetailsView),expression:\"!showSharingDetailsView\"}],staticClass:\"sharingTab__content\"},[(_vm.isSharedWithMe)?_c('ul',[_c('SharingEntrySimple',_vm._b({staticClass:\"sharing-entry__reshare\",scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"user\":_vm.sharedWithMe.user,\"display-name\":_vm.sharedWithMe.displayName}})]},proxy:true}],null,false,3197855346)},'SharingEntrySimple',_vm.sharedWithMe,false))],1):_vm._e(),_vm._v(\" \"),_c('section',[_c('div',{staticClass:\"section-header\"},[_c('h4',[_vm._v(_vm._s(_vm.t('files_sharing', 'Internal shares')))]),_vm._v(\" \"),_c('NcPopover',{attrs:{\"popup-role\":\"dialog\"},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{staticClass:\"hint-icon\",attrs:{\"variant\":\"tertiary-no-background\",\"aria-label\":_vm.t('files_sharing', 'Internal shares explanation')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('InfoIcon',{attrs:{\"size\":20}})]},proxy:true}])})]},proxy:true}])},[_vm._v(\" \"),_c('p',{staticClass:\"hint-body\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.internalSharesHelpText)+\"\\n\\t\\t\\t\\t\\t\")])])],1),_vm._v(\" \"),(!_vm.loading)?_c('SharingInput',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"link-shares\":_vm.linkShares,\"reshare\":_vm.reshare,\"shares\":_vm.shares,\"placeholder\":_vm.internalShareInputPlaceholder},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('SharingList',{ref:\"shareList\",attrs:{\"shares\":_vm.shares,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(_vm.canReshare && !_vm.loading)?_c('SharingInherited',{attrs:{\"file-info\":_vm.fileInfo}}):_vm._e(),_vm._v(\" \"),_c('SharingEntryInternal',{attrs:{\"file-info\":_vm.fileInfo}})],1),_vm._v(\" \"),(_vm.config.showExternalSharing)?_c('section',[_c('div',{staticClass:\"section-header\"},[_c('h4',[_vm._v(_vm._s(_vm.t('files_sharing', 'External shares')))]),_vm._v(\" \"),_c('NcPopover',{attrs:{\"popup-role\":\"dialog\"},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{staticClass:\"hint-icon\",attrs:{\"variant\":\"tertiary-no-background\",\"aria-label\":_vm.t('files_sharing', 'External shares explanation')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('InfoIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,915383693)})]},proxy:true}],null,false,4045083138)},[_vm._v(\" \"),_c('p',{staticClass:\"hint-body\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.externalSharesHelpText)+\"\\n\\t\\t\\t\\t\\t\")])])],1),_vm._v(\" \"),(!_vm.loading)?_c('SharingInput',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"link-shares\":_vm.linkShares,\"is-external\":true,\"placeholder\":_vm.externalShareInputPlaceholder,\"reshare\":_vm.reshare,\"shares\":_vm.shares},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('SharingList',{attrs:{\"shares\":_vm.externalShares,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading && _vm.isLinkSharingAllowed)?_c('SharingLinkList',{ref:\"linkShareList\",attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"shares\":_vm.linkShares},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.hasExternalSections && !_vm.showSharingDetailsView)?_c('section',[_c('div',{staticClass:\"section-header\"},[_c('h4',[_vm._v(_vm._s(_vm.t('files_sharing', 'Additional shares')))]),_vm._v(\" \"),_c('NcPopover',{attrs:{\"popup-role\":\"dialog\"},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{staticClass:\"hint-icon\",attrs:{\"variant\":\"tertiary-no-background\",\"aria-label\":_vm.t('files_sharing', 'Additional shares explanation')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('InfoIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,915383693)})]},proxy:true}],null,false,880248230)},[_vm._v(\" \"),_c('p',{staticClass:\"hint-body\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.additionalSharesHelpText)+\"\\n\\t\\t\\t\\t\\t\")])])],1),_vm._v(\" \"),_vm._l((_vm.sortedExternalSections),function(section){return _c('SidebarTabExternalSection',{key:section.id,staticClass:\"sharingTab__additionalContent\",attrs:{\"section\":section,\"node\":_vm.fileInfo.node /* TODO: Fix once we have proper Node API */}})}),_vm._v(\" \"),_vm._l((_vm.legacySections),function(section,index){return _c('SidebarTabExternalSectionLegacy',{key:index,staticClass:\"sharingTab__additionalContent\",attrs:{\"file-info\":_vm.fileInfo,\"section-callback\":section}})}),_vm._v(\" \"),(_vm.projectsEnabled)?_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showSharingDetailsView && _vm.fileInfo),expression:\"!showSharingDetailsView && fileInfo\"}],staticClass:\"sharingTab__additionalContent\"},[_c('NcCollectionList',{attrs:{\"id\":`${_vm.fileInfo.id}`,\"type\":\"file\",\"name\":_vm.fileInfo.name}})],1):_vm._e()],2):_vm._e()]),_vm._v(\" \"),(_vm.showSharingDetailsView)?_c('SharingDetailsTab',{attrs:{\"file-info\":_vm.shareDetailsData.fileInfo,\"share\":_vm.shareDetailsData.share},on:{\"close-sharing-details\":_vm.toggleShareDetailsView,\"add:share\":_vm.addShare,\"remove:share\":_vm.removeShare}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/*!\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission } from '@nextcloud/files';\n/**\n * Convert Node to legacy file info\n *\n * @param node - The Node to convert\n */\nexport default function (node) {\n const rawFileInfo = {\n id: node.fileid,\n path: node.dirname,\n name: node.basename,\n mtime: node.mtime?.getTime(),\n etag: node.attributes.etag,\n size: node.size,\n hasPreview: node.attributes.hasPreview,\n isEncrypted: node.attributes.isEncrypted === 1,\n isFavourited: node.attributes.favorite === 1,\n mimetype: node.mime,\n permissions: node.permissions,\n mountType: node.attributes['mount-type'],\n sharePermissions: node.attributes['share-permissions'],\n shareAttributes: JSON.parse(node.attributes['share-attributes'] || '[]'),\n type: node.type === 'file' ? 'file' : 'dir',\n attributes: node.attributes,\n };\n // TODO remove when no more legacy backbone is used\n const fileInfo = {\n ...rawFileInfo,\n node,\n get(key) {\n return this[key];\n },\n isDirectory() {\n return this.mimetype === 'httpd/unix-directory';\n },\n canEdit() {\n return Boolean(this.permissions & Permission.UPDATE);\n },\n canDownload() {\n for (const i in this.shareAttributes) {\n const attr = this.shareAttributes[i];\n if (attr.scope === 'permissions' && attr.key === 'download') {\n return attr.value === true;\n }\n }\n return true;\n },\n };\n return fileInfo;\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesSidebarTab.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesSidebarTab.vue?vue&type=script&setup=true&lang=ts\"","import { render, staticRenderFns } from \"./FilesSidebarTab.vue?vue&type=template&id=8a2257be\"\nimport script from \"./FilesSidebarTab.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilesSidebarTab.vue?vue&type=script&setup=true&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 { getCurrentUser, onRequestTokenUpdate, getRequestToken } from \"@nextcloud/auth\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport { isPublicShare, getSharingToken } from \"@nextcloud/sharing/public\";\nimport { createClient, getPatcher } from \"webdav\";\nimport { P as Permission, s as scopedGlobals, l as logger, c as NodeStatus, a as File, b as Folder } from \"./chunks/folder-29HuacU_.mjs\";\nimport \"@nextcloud/paths\";\n/*!\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nfunction parsePermissions(permString = \"\") {\n let permissions = Permission.NONE;\n if (!permString) {\n return permissions;\n }\n if (permString.includes(\"G\")) {\n permissions |= Permission.READ;\n }\n if (permString.includes(\"W\")) {\n permissions |= Permission.WRITE;\n }\n if (permString.includes(\"CK\")) {\n permissions |= Permission.CREATE;\n }\n if (permString.includes(\"NV\")) {\n permissions |= Permission.UPDATE;\n }\n if (permString.includes(\"D\")) {\n permissions |= Permission.DELETE;\n }\n if (permString.includes(\"R\")) {\n permissions |= Permission.SHARE;\n }\n return permissions;\n}\nconst defaultDavProperties = [\n \"d:getcontentlength\",\n \"d:getcontenttype\",\n \"d:getetag\",\n \"d:getlastmodified\",\n \"d:creationdate\",\n \"d:displayname\",\n \"d:quota-available-bytes\",\n \"d:resourcetype\",\n \"nc:has-preview\",\n \"nc:is-encrypted\",\n \"nc:mount-type\",\n \"oc:comments-unread\",\n \"oc:favorite\",\n \"oc:fileid\",\n \"oc:owner-display-name\",\n \"oc:owner-id\",\n \"oc:permissions\",\n \"oc:size\"\n];\nconst defaultDavNamespaces = {\n d: \"DAV:\",\n nc: \"http://nextcloud.org/ns\",\n oc: \"http://owncloud.org/ns\",\n ocs: \"http://open-collaboration-services.org/ns\"\n};\nfunction registerDavProperty(prop, namespace = { nc: \"http://nextcloud.org/ns\" }) {\n scopedGlobals.davNamespaces ??= { ...defaultDavNamespaces };\n scopedGlobals.davProperties ??= [...defaultDavProperties];\n const namespaces = { ...scopedGlobals.davNamespaces, ...namespace };\n if (scopedGlobals.davProperties.find((search) => search === prop)) {\n logger.warn(`${prop} already registered`, { prop });\n return false;\n }\n if (prop.startsWith(\"<\") || prop.split(\":\").length !== 2) {\n logger.error(`${prop} is not valid. See example: 'oc:fileid'`, { prop });\n return false;\n }\n const ns = prop.split(\":\")[0];\n if (!namespaces[ns]) {\n logger.error(`${prop} namespace unknown`, { prop, namespaces });\n return false;\n }\n scopedGlobals.davProperties.push(prop);\n scopedGlobals.davNamespaces = namespaces;\n return true;\n}\nfunction getDavProperties() {\n scopedGlobals.davProperties ??= [...defaultDavProperties];\n return scopedGlobals.davProperties.map((prop) => `<${prop} />`).join(\" \");\n}\nfunction getDavNameSpaces() {\n scopedGlobals.davNamespaces ??= { ...defaultDavNamespaces };\n return Object.keys(scopedGlobals.davNamespaces).map((ns) => `xmlns:${ns}=\"${scopedGlobals.davNamespaces?.[ns]}\"`).join(\" \");\n}\nfunction getDefaultPropfind() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t`;\n}\nfunction getFavoritesReport() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`;\n}\nfunction getRecentSearch(lastModified) {\n return `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${getCurrentUser()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${lastModified}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\n}\nfunction getRootPath() {\n if (isPublicShare()) {\n return `/files/${getSharingToken()}`;\n }\n return `/files/${getCurrentUser()?.uid}`;\n}\nconst defaultRootPath = getRootPath();\nfunction getRemoteURL() {\n const url = generateRemoteUrl(\"dav\");\n if (isPublicShare()) {\n return url.replace(\"remote.php\", \"public.php\");\n }\n return url;\n}\nconst defaultRemoteURL = getRemoteURL();\nfunction getClient(remoteURL = defaultRemoteURL, headers = {}) {\n const client = createClient(remoteURL, { headers });\n function setHeaders(token) {\n client.setHeaders({\n ...headers,\n // Add this so the server knows it is an request from the browser\n \"X-Requested-With\": \"XMLHttpRequest\",\n // Inject user auth\n requesttoken: token ?? \"\"\n });\n }\n onRequestTokenUpdate(setHeaders);\n setHeaders(getRequestToken());\n const patcher = getPatcher();\n patcher.patch(\"fetch\", (url, options) => {\n const headers2 = options.headers;\n if (headers2?.method) {\n options.method = headers2.method;\n delete headers2.method;\n }\n return fetch(url, options);\n });\n return client;\n}\nasync function getFavoriteNodes(options = {}) {\n const client = options.client ?? getClient();\n const path = options.path ?? \"/\";\n const davRoot = options.davRoot ?? defaultRootPath;\n const contentsResponse = await client.getDirectoryContents(`${davRoot}${path}`, {\n signal: options.signal,\n details: true,\n data: getFavoritesReport(),\n headers: {\n // see getClient for patched webdav client\n method: \"REPORT\"\n },\n includeSelf: true\n });\n return contentsResponse.data.filter((node) => node.filename !== path).map((result) => resultToNode(result, davRoot));\n}\nfunction resultToNode(node, filesRoot = defaultRootPath, remoteURL = defaultRemoteURL) {\n let userId = getCurrentUser()?.uid;\n if (isPublicShare()) {\n userId = userId ?? \"anonymous\";\n } else if (!userId) {\n throw new Error(\"No user id found\");\n }\n const props = node.props;\n const permissions = parsePermissions(props?.permissions);\n const owner = String(props?.[\"owner-id\"] || userId);\n const id = props.fileid || 0;\n const mtime = new Date(Date.parse(node.lastmod));\n const crtime = new Date(Date.parse(props.creationdate));\n const nodeData = {\n id,\n source: `${remoteURL}${node.filename}`,\n mtime: !isNaN(mtime.getTime()) && mtime.getTime() !== 0 ? mtime : void 0,\n crtime: !isNaN(crtime.getTime()) && crtime.getTime() !== 0 ? crtime : void 0,\n mime: node.mime || \"application/octet-stream\",\n // Manually cast to work around for https://github.com/perry-mitchell/webdav-client/pull/380\n displayname: props.displayname !== void 0 ? String(props.displayname) : void 0,\n size: props?.size || Number.parseInt(props.getcontentlength || \"0\"),\n // The fileid is set to -1 for failed requests\n status: id < 0 ? NodeStatus.FAILED : void 0,\n permissions,\n owner,\n root: filesRoot,\n attributes: {\n ...node,\n ...props,\n hasPreview: props?.[\"has-preview\"]\n }\n };\n delete nodeData.attributes?.props;\n return node.type === \"file\" ? new File(nodeData) : new Folder(nodeData);\n}\nexport {\n defaultDavNamespaces,\n defaultDavProperties,\n defaultRemoteURL,\n defaultRootPath,\n getClient,\n getDavNameSpaces,\n getDavProperties,\n getDefaultPropfind,\n getFavoriteNodes,\n getFavoritesReport,\n getRecentSearch,\n getRemoteURL,\n getRootPath,\n parsePermissions,\n registerDavProperty,\n resultToNode\n};\n//# sourceMappingURL=dav.mjs.map\n"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","vue_material_design_icons_ContentCopyvue_type_script_lang_js","name","emits","props","title","type","String","fillColor","default","size","Number","ContentCopy","componentNormalizer","A","_vm","this","_c","_self","_b","staticClass","attrs","role","on","click","$event","$emit","$attrs","fill","width","height","viewBox","d","_v","_s","_e","components_SharingEntrySimplevue_type_script_lang_js","components","NcActions","required","subtitle","isUnique","Boolean","ariaExpanded","computed","ariaExpandedValue","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","SharingEntrySimplevue_type_style_index_0_id_13d4a0bb_prod_lang_scss_scoped_true","locals","SharingEntrySimple","_t","$slots","ref","generateFileUrl","fileid","baseURL","getBaseUrl","globalscale","getCapabilities","token","generateUrl","components_SharingEntryInternalvue_type_script_lang_js","NcActionButton","CheckIcon","Check","ClipboardIcon","fileInfo","Object","data","copied","copySuccess","internalLink","copyLinkTooltip","t","internalLinkSubtitle","methods","copyLink","navigator","clipboard","writeText","showSuccess","$refs","shareEntrySimple","actionsComponent","$el","focus","error","logger","setTimeout","SharingEntryInternalvue_type_style_index_0_id_6c4cb23b_prod_lang_scss_scoped_true_options","SharingEntryInternalvue_type_style_index_0_id_6c4cb23b_prod_lang_scss_scoped_true","SharingEntryInternal","scopedSlots","_u","key","fn","proxy","ATOMIC_PERMISSIONS","BUNDLED_PERMISSIONS","READ_ONLY","UPLOAD_AND_UPDATE","FILE_DROP","ALL","ALL_FILE","getBundledPermissions","excludeShare","Share","constructor","ocsData","_defineProperty","ocs","parseInt","hide_download","mail_send","attributes","JSON","parse","warn","newPassword","undefined","_share","state","share_type","permissions","owner","uid_owner","ownerDisplayName","displayname_owner","shareWith","share_with","shareWithDisplayName","share_with_displayname","shareWithDisplayNameUnique","share_with_displayname_unique","shareWithLink","share_with_link","shareWithAvatar","share_with_avatar","uidFileOwner","uid_file_owner","displaynameFileOwner","displayname_file_owner","createdTime","stime","expireDate","expiration","date","note","label","mailSend","hideDownload","find","scope","value","attribute","password","passwordExpirationTime","password_expiration_time","sendPasswordByTalk","send_password_by_talk","path","itemType","item_type","mimetype","fileSource","file_source","fileTarget","file_target","fileParent","file_parent","hasReadPermission","window","OC","PERMISSION_READ","hasCreatePermission","PERMISSION_CREATE","hasDeletePermission","PERMISSION_DELETE","hasUpdatePermission","PERMISSION_UPDATE","hasSharePermission","PERMISSION_SHARE","hasDownloadPermission","some","isFileRequest","stringify","enabled","setAttribute","attrUpdate","i","attr","splice","canEdit","can_edit","canDelete","can_delete","viaFileid","via_fileid","viaPath","via_path","parent","storageId","storage_id","storage","itemSource","item_source","status","isTrustedServer","is_trusted_server","Config","_capabilities","defaultPermissions","files_sharing","default_permissions","excludeReshareFromEdit","exclude_reshare_from_edit","isPublicUploadEnabled","public","upload","federatedShareDocLink","appConfig","core","federatedCloudShareDoc","defaultExpirationDate","isDefaultExpireDateEnabled","defaultExpireDate","Date","setDate","getDate","defaultInternalExpirationDate","isDefaultInternalExpireDateEnabled","defaultInternalExpireDate","defaultRemoteExpirationDateString","isDefaultRemoteExpireDateEnabled","defaultRemoteExpireDate","enforcePasswordForPublicLink","enableLinkPasswordByDefault","isDefaultExpireDateEnforced","defaultExpireDateEnforced","defaultExpireDateEnabled","isDefaultInternalExpireDateEnforced","defaultInternalExpireDateEnforced","defaultInternalExpireDateEnabled","isDefaultRemoteExpireDateEnforced","defaultRemoteExpireDateEnforced","defaultRemoteExpireDateEnabled","isRemoteShareAllowed","remoteShareAllowed","isFederationEnabled","federation","outgoing","isPublicShareAllowed","isMailShareAllowed","sharebymail","isResharingAllowed","resharingAllowed","isPasswordForMailSharesRequired","enforced","shouldAlwaysShowUnique","sharee","always_show_unique","allowGroupSharing","maxAutocompleteResults","config","minSearchStringLength","passwordPolicy","password_policy","allowCustomTokens","custom_tokens","showFederatedSharesAsInternal","loadState","showFederatedSharesToTrustedServersAsInternal","showExternalSharing","ShareDetails","openSharingDetails","shareRequestObject","share","handler","handlerInput","suggestions","query","externalShareRequestObject","mapShareRequestToShareObject","originalPermissions","strippedPermissions","debug","shareDetails","openShareDetailsForCustomSettings","setCustomPermissions","shareType","is_no_user","isNoUser","user","displayName","shareUrl","generateOcsUrl","ShareRequests","createShare","publicUpload","request","axios","post","emit","errorMessage","getErrorMessage","showError","Error","cause","deleteShare","delete","updateShare","properties","put","isAxiosError","response","meta","message","components_SharingInputvue_type_script_lang_js","NcSelect","mixins","shares","Array","linkShares","reshare","canReshare","isExternal","placeholder","setup","shareInputId","Math","random","toString","slice","loading","recommendations","ShareSearch","OCA","Sharing","externalResults","results","inputPlaceholder","allowRemoteSharing","isValidQuery","trim","length","noResultText","mounted","getRecommendations","onSelected","option","asyncFind","debounceGetSuggestions","getSuggestions","search","lookup","query_lookup_default","remoteTypes","ShareType","Remote","RemoteGroup","showFederatedAsInternal","shouldAddRemoteTypes","Email","User","Group","Team","Room","Guest","Deck","ScienceMesh","get","params","format","perPage","exact","rawExactSuggestions","values","flat","rawSuggestions","exactSuggestions","filterOutExistingShares","filter","result","filterByTrustedServer","map","formatForMultiselect","sort","a","b","lookupEntry","lookupEnabled","condition","allSuggestions","concat","nameCounts","reduce","item","desc","debounce","args","rawRecommendations","arr","elem","getCurrentUser","uid","indexOf","sharesObj","obj","shareTypeToIcon","icon","iconTitle","Sciencemesh","subname","extra","email","server","shareWithDescription","uuid","SharingInputvue_type_style_index_0_id_0b151499_prod_lang_scss_options","SharingInputvue_type_style_index_0_id_0b151499_prod_lang_scss","SharingInput","for","disabled","filterable","clear-search-on-blur","model","callback","$$v","expression","SidebarTabExternal_SidebarTabExternalSectionvue_type_script_lang_ts_setup_true","_defineComponent","__name","node","section","__props","sectionElement","watchEffect","__sfc","SidebarTabExternalSection","_setupProxy","element","tag","domProps","SidebarTabExternal_SidebarTabExternalSectionLegacyvue_type_script_lang_ts_setup_true","sectionCallback","Function","component","SidebarTabExternalSectionLegacyvue_type_style_index_0_id_3e4e67d2_prod_scoped_true_lang_css_options","SidebarTabExternalSectionLegacyvue_type_style_index_0_id_3e4e67d2_prod_scoped_true_lang_css","SidebarTabExternalSectionLegacy","vue_material_design_icons_AccountCircleOutlinevue_type_script_lang_js","AccountCircleOutline","vue_material_design_icons_AccountGroupvue_type_script_lang_js","AccountGroup","vue_material_design_icons_CircleOutlinevue_type_script_lang_js","CircleOutline","vue_material_design_icons_Emailvue_type_script_lang_js","vue_material_design_icons_Eyevue_type_script_lang_js","Eye","vue_material_design_icons_Refreshvue_type_script_lang_js","Refresh","vue_material_design_icons_ShareCirclevue_type_script_lang_js","ShareCircle","vue_material_design_icons_TrayArrowUpvue_type_script_lang_js","TrayArrowUp","SidebarTabExternal_SidebarTabExternalActionvue_type_script_lang_ts_setup_true","action","expose","save","actionElement","savingCallback","async","onSave","toRaw","SidebarTabExternalAction","_setup","SidebarTabExternal_SidebarTabExternalActionLegacyvue_type_script_lang_js","SidebarTabExternalActionLegacy","is","_g","handlers","text","client","getClient","GeneratePassword","verbose","api","generate","info","array","Uint8Array","ratio","passwordSet","self","crypto","getRandomValues","len","floor","charAt","SharesMixin","SharesRequests","sharing_dist","I","errors","saving","open","passwordProtectedState","updateQueue","PQueue","concurrency","reactiveState","replace","hasNote","set","dateTomorrow","lang","weekdaysShort","dayNamesShort","monthsShort","monthNamesShort","formatLocale","firstDayOfWeek","firstDay","weekdaysMin","monthFormat","isNewShare","isFolder","isPublicShare","Link","includes","isRemoteShare","isShareOwner","isExpiryDateEnforced","hasCustomPermissions","basePermissions","bundledPermissions","permissionsWithoutShare","maxExpirationDateEnforced","isPasswordProtected","generatedPassword","$set","getNode","propfindPayload","getDefaultPropfind","stat","getRootPath","details","resultToNode","fetchNode","checkShare","expirationDate","isValid","formatDateToString","UTC","getFullYear","getMonth","toISOString","split","onExpirationChange","parsedDate","onNoteChange","onNoteSubmit","newNote","$delete","queueUpdate","onDelete","shareId","propertyNames","add","updatedShare","property","updateSuccessMessage","onSyncError","propertyEl","focusable","querySelector","debounceQueueUpdate","views_SharingDetailsTabvue_type_script_lang_js","NcAvatar","NcButton","NcCheckboxRadioSwitch","NcDateTimePickerNative","NcInputField","NcLoadingIcon","NcPasswordField","NcTextArea","CloseIcon","Close","CircleIcon","EditIcon","PencilOutline","LinkIcon","GroupIcon","ShareIcon","UserIcon","UploadIcon","ViewIcon","MenuDownIcon","MenuDown","MenuUpIcon","MenuUp","DotsHorizontalIcon","DotsHorizontal","shareRequestValue","writeNoteToRecipientIsChecked","sharingPermission","revertSharingPermission","passwordError","advancedSectionAccordionExpanded","isFirstComponentLoad","test","creating","initialToken","loadingToken","externalShareActions","_nc_files_sharing_sidebar_actions","ExternalShareActions","allPermissions","checked","updateAtomicPermissions","isEditChecked","canCreate","isCreateChecked","isDeleteChecked","isReshareChecked","showInGridView","getShareAttribute","setShareAttribute","canDownload","hasRead","isReadChecked","hasExpirationDate","isValidShareAttribute","defaultExpiryDate","isSetDownloadButtonVisible","isPasswordEnforced","isGroupShare","isUserShare","allowsFileDrop","hasFileDropPermissions","shareButtonText","resharingIsPossible","canSetEdit","sharePermissions","canSetCreate","canSetDelete","canSetReshare","canSetDownload","canRemoveReadPermission","hasUnsavedPassword","expirationTime","moment","diff","fromNow","isTalkEnabled","appswebroots","spreed","isPasswordProtectedByTalkAvailable","isPasswordProtectedByTalk","isEmailShareType","canTogglePasswordProtectedByTalkAvailable","canChangeHideDownload","shareAttributes","shareAttribute","customPermissionsList","translatedPermissions","ATOMIC_PERMISSIONS_READ","ATOMIC_PERMISSIONS_CREATE","ATOMIC_PERMISSIONS_UPDATE","ATOMIC_PERMISSIONS_SHARE","ATOMIC_PERMISSIONS_DELETE","permission","hasPermissions","initialPermissionSet","permissionsToCheck","index","toLocaleLowerCase","getLanguage","join","advancedControlExpandedValue","errorPasswordLabel","passwordHint","sortedExternalShareActions","order","externalLegacyShareActions","actions","advanced","watch","isChecked","beforeMount","initializePermissions","initializeAttributes","quickPermissions","fallback","generateNewToken","generateToken","cancel","expandCustomPermissions","toggleCustomPermissions","selectedPermission","isCustomPermissions","toDateString","handleShareType","handleDefaultPermissions","handleCustomPermissions","saveShare","permissionsAndAttributes","publicShareAttributes","sharePermissionsSet","incomingShare","addShare","prop","Promise","allSettled","externalLinkActions","$children","at","resolve","removeShare","onPasswordChange","onPasswordProtectedByTalkChange","getShareTypeIcon","EmailIcon","SharingDetailsTabvue_type_style_index_0_id_289355eb_prod_lang_scss_scoped_true_options","SharingDetailsTabvue_type_style_index_0_id_289355eb_prod_lang_scss_scoped_true","SharingDetailsTab_component","url","variant","alignment","autocomplete","min","max","input","_l","refInFor","readonly","preventDefault","apply","arguments","SharingDetailsTab","components_SharingEntryInheritedvue_type_script_lang_js","NcActionLink","NcActionText","viaFileTargetUrl","viaFolderName","basename","SharingEntryInheritedvue_type_style_index_0_id_731a9650_prod_lang_scss_scoped_true_options","SharingEntryInheritedvue_type_style_index_0_id_731a9650_prod_lang_scss_scoped_true","SharingEntryInherited_component","initiator","href","folder","SharingEntryInherited","views_SharingInheritedvue_type_script_lang_js","loaded","showInheritedShares","showInheritedSharesIcon","mainTitle","subTitle","toggleTooltip","fullPath","resetState","toggleInheritedShares","fetchInheritedShares","Notification","showTemporary","findIndex","SharingInheritedvue_type_style_index_0_id_cedf3238_prod_lang_scss_scoped_true_options","SharingInheritedvue_type_style_index_0_id_cedf3238_prod_lang_scss_scoped_true","SharingInherited_component","stopPropagation","SharingInherited","vue_material_design_icons_CalendarBlankOutlinevue_type_script_lang_js","CalendarBlankOutline","vue_material_design_icons_CheckBoldvue_type_script_lang_js","CheckBold","vue_material_design_icons_Exclamationvue_type_script_lang_js","Exclamation","vue_material_design_icons_LockOutlinevue_type_script_lang_js","LockOutline","vue_material_design_icons_Plusvue_type_script_lang_js","Plus","vue_material_design_icons_Qrcodevue_type_script_lang_js","Qrcode","vue_material_design_icons_Tunevue_type_script_lang_js","Tune","vue_material_design_icons_ClockOutlinevue_type_script_lang_js","ClockOutline","components_ShareExpiryTimevue_type_script_lang_js","NcPopover","NcDateTime","ClockIcon","expiryTime","getTime","timeFormat","dateStyle","timeStyle","ShareExpiryTimevue_type_style_index_0_id_c9199db0_prod_scoped_true_lang_scss_options","ShareExpiryTimevue_type_style_index_0_id_c9199db0_prod_scoped_true_lang_scss","ShareExpiryTime","toLocaleString","timestamp","vue_material_design_icons_EyeOutlinevue_type_script_lang_js","EyeOutline","vue_material_design_icons_TriangleSmallDownvue_type_script_lang_js","SharingEntryQuickShareSelectvue_type_script_lang_js","DropdownIcon","selectedOption","ariaLabel","canViewText","canEditText","fileDropText","customPermissionsText","preSelectedOption","IconEyeOutline","IconPencil","supportsFileDrop","IconFileUpload","IconTune","dropDownPermissionValue","created","subscribe","unmounted","unsubscribe","selectOption","optionLabel","quickShareActions","menuButton","components_SharingEntryQuickShareSelectvue_type_script_lang_js","SharingEntryQuickShareSelectvue_type_style_index_0_id_b5eca1ec_prod_lang_scss_scoped_true_options","SharingEntryQuickShareSelectvue_type_style_index_0_id_b5eca1ec_prod_lang_scss_scoped_true","SharingEntryQuickShareSelect","SharingEntryLinkvue_type_script_lang_js","NcActionCheckbox","NcActionCheckbox_Cbg5yktN","N","NcActionInput","NcActionSeparator","NcDialog","NcIconSvgWrapper","VueQrcode","vue_qrcode_default","IconCalendarBlank","IconQr","ErrorIcon","LockIcon","PlusIcon","mdiCheck","mdi","Tfj","mdiContentCopy","shareCreationComplete","defaultExpirationDateEnabled","pending","_nc_files_sharing_sidebar_inline_actions","showQRCode","l10nOptions","escape","pendingDataIsMissing","pendingPassword","pendingEnforcedPassword","pendingDefaultExpirationDate","pendingEnforcedExpirationDate","isPendingShare","isNaN","sharePolicyHasEnforcedProperties","enforcedPropertiesMissing","isPasswordMissing","isExpireDateMissing","shareLink","actionsTooltip","copyLinkLabel","isPasswordPolicyEnabled","shareRequiresReview","shareReviewComplete","onNewLinkShare","shareDefaults","pushNewLinkShare","e","update","newShare","match","copyButton","prompt","onPasswordDisable","onPasswordSubmit","onMenuClose","onExpirationDateToggleUpdate","expirationDateChanged","event","target","onCancel","components_SharingEntryLinkvue_type_script_lang_js","SharingEntryLinkvue_type_style_index_0_id_4ca4172c_prod_lang_scss_scoped_true_options","SharingEntryLinkvue_type_style_index_0_id_4ca4172c_prod_lang_scss_scoped_true","SharingEntryLink_component","class","close","uncheck","minlength","minLength","submit","change","exec","svg","iconSvg","views_SharingLinkListvue_type_script_lang_js","SharingEntryLink","canLinkShare","hasLinkShares","hasShares","l10n_dist","awaitForShare","$nextTick","SharingLinkList_component","SharingLinkList","components_SharingEntryvue_type_script_lang_js","showAsInternal","tooltip","hasStatus","isArray","SharingEntryvue_type_style_index_0_id_469e5e80_prod_lang_scss_scoped_true_options","SharingEntryvue_type_style_index_0_id_469e5e80_prod_lang_scss_scoped_true","views_SharingListvue_type_script_lang_js","SharingEntry","SharingList","productName","theme","SharingTabvue_type_script_lang_js","InfoIcon","InformationOutline","NcCollectionList","NcCollectionList_q7zkDwqG","deleteEvent","expirationInterval","sharedWithMe","externalShares","legacySections","ShareTabSections","getSections","sections","_nc_files_sharing_sidebar_sections","projectsEnabled","showSharingDetailsView","shareDetailsData","returnFocusElement","internalSharesHelpText","externalSharesHelpText","additionalSharesHelpText","hasExternalSections","sortedExternalSections","isSharedWithMe","isLinkSharingAllowed","capabilities","internalShareInputPlaceholder","externalShareInputPlaceholder","immediate","newValue","oldValue","getShares","fetchShares","reshares","fetchSharedWithMe","shared_with_me","all","processSharedWithMe","processShares","clearInterval","updateExpirationSubtitle","unix","relativetime","orderBy","findShareListByShare","group","circle","conversation","shareWithTitle","setInterval","shareOwnerId","shareOwner","unshift","removeShareFromList","shareList","listComponent","linkShareList","toggleShareDetailsView","eventData","from","document","activeElement","classList","className","startsWith","menuId","closest","views_SharingTabvue_type_script_lang_js","SharingTabvue_type_style_index_0_id_cd6ad9ee_prod_scoped_true_lang_scss_options","SharingTabvue_type_style_index_0_id_cd6ad9ee_prod_scoped_true_lang_scss","SharingTab","emptyContentWithSections","directives","rawName","FileInfo","dirname","mtime","etag","hasPreview","isEncrypted","isFavourited","favorite","mime","mountType","isDirectory","Permission","UPDATE","views_FilesSidebarTabvue_type_script_setup_true_lang_ts","active","view","FilesSidebarTab","defaultDavProperties","defaultDavNamespaces","nc","oc","getDavProperties","_chunks_folder_29HuacU_mjs__WEBPACK_IMPORTED_MODULE_4__","s","davProperties","getDavNameSpaces","davNamespaces","keys","ns","getRecentSearch","lastModified","_nextcloud_auth__WEBPACK_IMPORTED_MODULE_0__","HW","_nextcloud_sharing_public__WEBPACK_IMPORTED_MODULE_2__","f","G","defaultRootPath","defaultRemoteURL","_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__","dC","getRemoteURL","remoteURL","headers","webdav__WEBPACK_IMPORTED_MODULE_3__","UU","setHeaders","requesttoken","zo","Gu","patch","headers2","method","fetch","getFavoriteNodes","davRoot","getDirectoryContents","signal","includeSelf","filename","filesRoot","userId","permString","P","NONE","READ","WRITE","CREATE","DELETE","SHARE","parsePermissions","lastmod","crtime","creationdate","nodeData","source","displayname","getcontentlength","c","FAILED","root"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/115-115.js.map.license b/dist/115-115.js.map.license new file mode 120000 index 0000000000000..bd9cfb7a00c5f --- /dev/null +++ b/dist/115-115.js.map.license @@ -0,0 +1 @@ +115-115.js.license \ No newline at end of file diff --git a/dist/1598-1598.js.map.license b/dist/1598-1598.js.map.license deleted file mode 120000 index 66996b260f67c..0000000000000 --- a/dist/1598-1598.js.map.license +++ /dev/null @@ -1 +0,0 @@ -1598-1598.js.license \ No newline at end of file diff --git a/dist/1991-1991.js b/dist/1991-1991.js deleted file mode 100644 index 7b2bedac7dec9..0000000000000 --- a/dist/1991-1991.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[1991],{5016(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".share-expiry-time[data-v-c9199db0]{display:inline-flex;align-items:center;justify-content:center}.share-expiry-time .hint-icon[data-v-c9199db0]{padding:0;margin:0;width:24px;height:24px}.hint-heading[data-v-c9199db0]{text-align:center;font-size:1rem;margin-top:8px;padding-bottom:8px;margin-bottom:0;border-bottom:1px solid var(--color-border)}.hint-body[data-v-c9199db0]{padding:var(--border-radius-element);max-width:300px}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/ShareExpiryTime.vue"],names:[],mappings:"AACA,oCACI,mBAAA,CACA,kBAAA,CACA,sBAAA,CAEA,+CACI,SAAA,CACA,QAAA,CACA,UAAA,CACA,WAAA,CAIR,+BACI,iBAAA,CACA,cAAA,CACA,cAAA,CACA,kBAAA,CACA,eAAA,CACA,2CAAA,CAGJ,4BACI,oCAAA,CACA,eAAA",sourcesContent:["\n.share-expiry-time {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n\n .hint-icon {\n padding: 0;\n margin: 0;\n width: 24px;\n height: 24px;\n }\n}\n\n.hint-heading {\n text-align: center;\n font-size: 1rem;\n margin-top: 8px;\n padding-bottom: 8px;\n margin-bottom: 0;\n border-bottom: 1px solid var(--color-border);\n}\n\n.hint-body {\n padding: var(--border-radius-element);\n max-width: 300px;\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},10322(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry[data-v-469e5e80]{display:flex;align-items:center;height:44px}.sharing-entry__summary[data-v-469e5e80]{padding:8px;padding-inline-start:10px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0;min-width:0}.sharing-entry__summary__desc[data-v-469e5e80]{display:inline-block;padding-bottom:0;line-height:1.2em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sharing-entry__summary__desc p[data-v-469e5e80],.sharing-entry__summary__desc small[data-v-469e5e80]{color:var(--color-text-maxcontrast)}.sharing-entry__summary__desc-unique[data-v-469e5e80]{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntry.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,yCACC,WAAA,CACA,yBAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,sBAAA,CACA,QAAA,CACA,WAAA,CAEA,+CACC,oBAAA,CACA,gBAAA,CACA,iBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAEA,sGAEC,mCAAA,CAGD,sDACC,mCAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-inline-start: 10px;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\talign-items: flex-start;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\n\t\t&__desc {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding-bottom: 0;\n\t\t\tline-height: 1.2em;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\tp,\n\t\t\tsmall {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&-unique {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\t\t}\n\t}\n\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},50618(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry[data-v-731a9650]{display:flex;align-items:center;height:44px}.sharing-entry__desc[data-v-731a9650]{display:flex;flex-direction:column;justify-content:space-between;padding:8px;padding-inline-start:10px;line-height:1.2em}.sharing-entry__desc p[data-v-731a9650]{color:var(--color-text-maxcontrast)}.sharing-entry__actions[data-v-731a9650]{margin-inline-start:auto}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryInherited.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,sCACC,YAAA,CACA,qBAAA,CACA,6BAAA,CACA,WAAA,CACA,yBAAA,CACA,iBAAA,CACA,wCACC,mCAAA,CAGF,yCACC,wBAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__desc {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\tpadding: 8px;\n\t\tpadding-inline-start: 10px;\n\t\tline-height: 1.2em;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__actions {\n\t\tmargin-inline-start: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},84388(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry__internal .avatar-external[data-v-6c4cb23b]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}.sharing-entry__internal .icon-checkmark-color[data-v-6c4cb23b]{opacity:1;color:var(--color-border-success)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryInternal.vue"],names:[],mappings:"AAEC,2DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA,CAED,gEACC,SAAA,CACA,iCAAA",sourcesContent:["\n.sharing-entry__internal {\n\t.avatar-external {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-border-success);\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},12231(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry[data-v-4ca4172c]{display:flex;align-items:center;min-height:44px}.sharing-entry__summary[data-v-4ca4172c]{padding:8px;padding-inline-start:10px;display:flex;justify-content:space-between;flex:1 0;min-width:0}.sharing-entry__desc[data-v-4ca4172c]{display:flex;flex-direction:column;line-height:1.2em}.sharing-entry__desc p[data-v-4ca4172c]{color:var(--color-text-maxcontrast)}.sharing-entry__desc__title[data-v-4ca4172c]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.sharing-entry__actions[data-v-4ca4172c]{display:flex;align-items:center;margin-inline-start:auto}.sharing-entry:not(.sharing-entry--share) .sharing-entry__actions .new-share-link[data-v-4ca4172c]{border-top:1px solid var(--color-border)}.sharing-entry[data-v-4ca4172c] .avatar-link-share{background-color:var(--color-primary-element)}.sharing-entry .sharing-entry__action--public-upload[data-v-4ca4172c]{border-bottom:1px solid var(--color-border)}.sharing-entry__loading[data-v-4ca4172c]{width:44px;height:44px;margin:0;padding:14px;margin-inline-start:auto}.sharing-entry .action-item~.action-item[data-v-4ca4172c],.sharing-entry .action-item~.sharing-entry__loading[data-v-4ca4172c]{margin-inline-start:0}.sharing-entry__copy-icon--success[data-v-4ca4172c]{color:var(--color-border-success)}.qr-code-dialog[data-v-4ca4172c]{display:flex;width:100%;justify-content:center}.qr-code-dialog__img[data-v-4ca4172c]{width:100%;height:auto}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryLink.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CAEA,yCACC,WAAA,CACA,yBAAA,CACA,YAAA,CACA,6BAAA,CACA,QAAA,CACA,WAAA,CAGA,sCACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,wCACC,mCAAA,CAGD,6CACC,sBAAA,CACA,eAAA,CACA,kBAAA,CAIF,yCACC,YAAA,CACA,kBAAA,CACA,wBAAA,CAID,mGACC,wCAAA,CAIF,mDACC,6CAAA,CAGD,sEACC,2CAAA,CAGD,yCACC,UAAA,CACA,WAAA,CACA,QAAA,CACA,YAAA,CACA,wBAAA,CAOA,+HAEC,qBAAA,CAIF,oDACC,iCAAA,CAKF,iCACC,YAAA,CACA,UAAA,CACA,sBAAA,CAEA,sCACC,UAAA,CACA,WAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-inline-start: 10px;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\t}\n\n\t\t&__desc {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tline-height: 1.2em;\n\n\t\t\tp {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&__title {\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\t\t}\n\n\t\t&__actions {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tmargin-inline-start: auto;\n\t\t}\n\n\t&:not(.sharing-entry--share) &__actions {\n\t\t.new-share-link {\n\t\t\tborder-top: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t:deep(.avatar-link-share) {\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t.sharing-entry__action--public-upload {\n\t\tborder-bottom: 1px solid var(--color-border);\n\t}\n\n\t&__loading {\n\t\twidth: 44px;\n\t\theight: 44px;\n\t\tmargin: 0;\n\t\tpadding: 14px;\n\t\tmargin-inline-start: auto;\n\t}\n\n\t// put menus to the left\n\t// but only the first one\n\t.action-item {\n\n\t\t~.action-item,\n\t\t~.sharing-entry__loading {\n\t\t\tmargin-inline-start: 0;\n\t\t}\n\t}\n\n\t&__copy-icon--success {\n\t\tcolor: var(--color-border-success);\n\t}\n}\n\n// styling for the qr-code container\n.qr-code-dialog {\n\tdisplay: flex;\n\twidth: 100%;\n\tjustify-content: center;\n\n\t&__img {\n\t\twidth: 100%;\n\t\theight: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},56953(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".share-select[data-v-b5eca1ec]{display:block}.share-select[data-v-b5eca1ec] .action-item__menutoggle{color:var(--color-primary-element) !important;font-size:12.5px !important;height:auto !important;min-height:auto !important}.share-select[data-v-b5eca1ec] .action-item__menutoggle .button-vue__text{font-weight:normal !important}.share-select[data-v-b5eca1ec] .action-item__menutoggle .button-vue__icon{height:24px !important;min-height:24px !important;width:24px !important;min-width:24px !important}.share-select[data-v-b5eca1ec] .action-item__menutoggle .button-vue__wrapper{flex-direction:row-reverse !important}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue"],names:[],mappings:"AACA,+BACC,aAAA,CAIA,wDACC,6CAAA,CACA,2BAAA,CACA,sBAAA,CACA,0BAAA,CAEA,0EACC,6BAAA,CAGD,0EACC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CAGD,6EAEC,qCAAA",sourcesContent:["\n.share-select {\n\tdisplay: block;\n\n\t// TODO: NcActions should have a slot for custom trigger button like NcPopover\n\t// Overrider NcActionms button to make it small\n\t:deep(.action-item__menutoggle) {\n\t\tcolor: var(--color-primary-element) !important;\n\t\tfont-size: 12.5px !important;\n\t\theight: auto !important;\n\t\tmin-height: auto !important;\n\n\t\t.button-vue__text {\n\t\t\tfont-weight: normal !important;\n\t\t}\n\n\t\t.button-vue__icon {\n\t\t\theight: 24px !important;\n\t\t\tmin-height: 24px !important;\n\t\t\twidth: 24px !important;\n\t\t\tmin-width: 24px !important;\n\t\t}\n\n\t\t.button-vue__wrapper {\n\t\t\t// Emulate NcButton's alignment=center-reverse\n\t\t\tflex-direction: row-reverse !important;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},18999(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry[data-v-13d4a0bb]{display:flex;align-items:center;min-height:44px}.sharing-entry__desc[data-v-13d4a0bb]{padding:8px;padding-inline-start:10px;line-height:1.2em;position:relative;flex:1 1;min-width:0}.sharing-entry__desc p[data-v-13d4a0bb]{color:var(--color-text-maxcontrast)}.sharing-entry__title[data-v-13d4a0bb]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:inherit}.sharing-entry__actions[data-v-13d4a0bb]{margin-inline-start:auto !important}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntrySimple.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CACA,sCACC,WAAA,CACA,yBAAA,CACA,iBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,wCACC,mCAAA,CAGF,uCACC,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,iBAAA,CAED,yCACC,mCAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\t&__desc {\n\t\tpadding: 8px;\n\t\tpadding-inline-start: 10px;\n\t\tline-height: 1.2em;\n\t\tposition: relative;\n\t\tflex: 1 1;\n\t\tmin-width: 0;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__title {\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tmax-width: inherit;\n\t}\n\t&__actions {\n\t\tmargin-inline-start: auto !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},30760(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-search{display:flex;flex-direction:column;margin-bottom:4px}.sharing-search label[for=sharing-search-input]{margin-bottom:2px}.sharing-search__input{width:100%;margin:10px 0}.vs__dropdown-menu span[lookup] .avatardiv{background-image:var(--icon-search-white);background-repeat:no-repeat;background-position:center;background-color:var(--color-text-maxcontrast) !important}.vs__dropdown-menu span[lookup] .avatardiv .avatardiv__initials-wrapper{display:none}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingInput.vue"],names:[],mappings:"AACA,gBACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,gDACC,iBAAA,CAGD,uBACC,UAAA,CACA,aAAA,CAOA,2CACC,yCAAA,CACA,2BAAA,CACA,0BAAA,CACA,yDAAA,CACA,wEACC,YAAA",sourcesContent:['\n.sharing-search {\n\tdisplay: flex;\n\tflex-direction: column;\n\tmargin-bottom: 4px;\n\n\tlabel[for="sharing-search-input"] {\n\t\tmargin-bottom: 2px;\n\t}\n\n\t&__input {\n\t\twidth: 100%;\n\t\tmargin: 10px 0;\n\t}\n}\n\n.vs__dropdown-menu {\n\t// properly style the lookup entry\n\tspan[lookup] {\n\t\t.avatardiv {\n\t\t\tbackground-image: var(--icon-search-white);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-color: var(--color-text-maxcontrast) !important;\n\t\t\t.avatardiv__initials-wrapper {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},29984(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharingTabDetailsView[data-v-289355eb]{display:flex;flex-direction:column;width:100%;margin:0 auto;position:relative;height:100%;overflow:hidden}.sharingTabDetailsView__header[data-v-289355eb]{display:flex;align-items:center;box-sizing:border-box;margin:.2em}.sharingTabDetailsView__header span[data-v-289355eb]{display:flex;align-items:center}.sharingTabDetailsView__header span h1[data-v-289355eb]{font-size:15px;padding-inline-start:.3em}.sharingTabDetailsView__wrapper[data-v-289355eb]{position:relative;overflow:scroll;flex-shrink:1;padding:4px;padding-inline-end:12px}.sharingTabDetailsView__quick-permissions[data-v-289355eb]{display:flex;justify-content:center;width:100%;margin:0 auto;border-radius:0}.sharingTabDetailsView__quick-permissions div[data-v-289355eb]{width:100%}.sharingTabDetailsView__quick-permissions div span[data-v-289355eb]{width:100%}.sharingTabDetailsView__quick-permissions div span span[data-v-289355eb]:nth-child(1){align-items:center;justify-content:center;padding:.1em}.sharingTabDetailsView__quick-permissions div span[data-v-289355eb] label span{display:flex;flex-direction:column}.sharingTabDetailsView__quick-permissions div span[data-v-289355eb] span.checkbox-content__text.checkbox-radio-switch__text{flex-wrap:wrap}.sharingTabDetailsView__quick-permissions div span[data-v-289355eb] span.checkbox-content__text.checkbox-radio-switch__text .subline{display:block;flex-basis:100%}.sharingTabDetailsView__advanced-control[data-v-289355eb]{width:100%}.sharingTabDetailsView__advanced-control button[data-v-289355eb]{margin-top:.5em}.sharingTabDetailsView__advanced[data-v-289355eb]{width:100%;margin-bottom:.5em;text-align:start;padding-inline-start:0}.sharingTabDetailsView__advanced section textarea[data-v-289355eb],.sharingTabDetailsView__advanced section div.mx-datepicker[data-v-289355eb]{width:100%}.sharingTabDetailsView__advanced section textarea[data-v-289355eb]{height:80px;margin:0}.sharingTabDetailsView__advanced section span[data-v-289355eb] label{padding-inline-start:0 !important;background-color:initial !important;border:none !important}.sharingTabDetailsView__advanced section section.custom-permissions-group[data-v-289355eb]{padding-inline-start:1.5em}.sharingTabDetailsView__label[data-v-289355eb]{padding-block-end:6px}.sharingTabDetailsView__delete>button[data-v-289355eb]:first-child{color:#df0707}.sharingTabDetailsView__footer[data-v-289355eb]{width:100%;display:flex;position:sticky;bottom:0;flex-direction:column;justify-content:space-between;align-items:flex-start;background:linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background))}.sharingTabDetailsView__footer .button-group[data-v-289355eb]{display:flex;justify-content:space-between;width:100%;margin-top:16px}.sharingTabDetailsView__footer .button-group button[data-v-289355eb]{margin-inline-start:16px}.sharingTabDetailsView__footer .button-group button[data-v-289355eb]:first-child{margin-inline-start:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingDetailsTab.vue"],names:[],mappings:"AACA,wCACC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,eAAA,CAEA,gDACC,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,WAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,wDACC,cAAA,CACA,yBAAA,CAMH,iDACC,iBAAA,CACA,eAAA,CACA,aAAA,CACA,WAAA,CACA,uBAAA,CAGD,2DACC,YAAA,CACA,sBAAA,CACA,UAAA,CACA,aAAA,CACA,eAAA,CAEA,+DACC,UAAA,CAEA,oEACC,UAAA,CAEA,sFACC,kBAAA,CACA,sBAAA,CACA,YAAA,CAGD,+EACC,YAAA,CACA,qBAAA,CAID,4HACC,cAAA,CAEA,qIACC,aAAA,CACA,eAAA,CAQL,0DACC,UAAA,CAEA,iEACC,eAAA,CAKF,kDACC,UAAA,CACA,kBAAA,CACA,gBAAA,CACA,sBAAA,CAIC,+IAEC,UAAA,CAGD,mEACC,WAAA,CACA,QAAA,CAYD,qEACC,iCAAA,CACA,mCAAA,CACA,sBAAA,CAGD,2FACC,0BAAA,CAKH,+CACC,qBAAA,CAIA,mEACC,aAAA,CAIF,gDACC,UAAA,CACA,YAAA,CACA,eAAA,CACA,QAAA,CACA,qBAAA,CACA,6BAAA,CACA,sBAAA,CACA,2FAAA,CAEA,8DACC,YAAA,CACA,6BAAA,CACA,UAAA,CACA,eAAA,CAEA,qEACC,wBAAA,CAEA,iFACC,qBAAA",sourcesContent:["\n.sharingTabDetailsView {\n\tdisplay: flex;\n\tflex-direction: column;\n\twidth: 100%;\n\tmargin: 0 auto;\n\tposition: relative;\n\theight: 100%;\n\toverflow: hidden;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tbox-sizing: border-box;\n\t\tmargin: 0.2em;\n\n\t\tspan {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\th1 {\n\t\t\t\tfont-size: 15px;\n\t\t\t\tpadding-inline-start: 0.3em;\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__wrapper {\n\t\tposition: relative;\n\t\toverflow: scroll;\n\t\tflex-shrink: 1;\n\t\tpadding: 4px;\n\t\tpadding-inline-end: 12px;\n\t}\n\n\t&__quick-permissions {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\tmargin: 0 auto;\n\t\tborder-radius: 0;\n\n\t\tdiv {\n\t\t\twidth: 100%;\n\n\t\t\tspan {\n\t\t\t\twidth: 100%;\n\n\t\t\t\tspan:nth-child(1) {\n\t\t\t\t\talign-items: center;\n\t\t\t\t\tjustify-content: center;\n\t\t\t\t\tpadding: 0.1em;\n\t\t\t\t}\n\n\t\t\t\t:deep(label span) {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-direction: column;\n\t\t\t\t}\n\n\t\t\t\t/* Target component based style in NcCheckboxRadioSwitch slot content*/\n\t\t\t\t:deep(span.checkbox-content__text.checkbox-radio-switch__text) {\n\t\t\t\t\tflex-wrap: wrap;\n\n\t\t\t\t\t.subline {\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\tflex-basis: 100%;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__advanced-control {\n\t\twidth: 100%;\n\n\t\tbutton {\n\t\t\tmargin-top: 0.5em;\n\t\t}\n\n\t}\n\n\t&__advanced {\n\t\twidth: 100%;\n\t\tmargin-bottom: 0.5em;\n\t\ttext-align: start;\n\t\tpadding-inline-start: 0;\n\n\t\tsection {\n\n\t\t\ttextarea,\n\t\t\tdiv.mx-datepicker {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\ttextarea {\n\t\t\t\theight: 80px;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t/*\n\t\t\t The following style is applied out of the component's scope\n\t\t\t to remove padding from the label.checkbox-radio-switch__label,\n\t\t\t which is used to group radio checkbox items. The use of ::v-deep\n\t\t\t ensures that the padding is modified without being affected by\n\t\t\t the component's scoping.\n\t\t\t Without this achieving left alignment for the checkboxes would not\n\t\t\t be possible.\n\t\t\t*/\n\t\t\tspan :deep(label) {\n\t\t\t\tpadding-inline-start: 0 !important;\n\t\t\t\tbackground-color: initial !important;\n\t\t\t\tborder: none !important;\n\t\t\t}\n\n\t\t\tsection.custom-permissions-group {\n\t\t\t\tpadding-inline-start: 1.5em;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__label {\n\t\tpadding-block-end: 6px;\n\t}\n\n\t&__delete {\n\t\t> button:first-child {\n\t\t\tcolor: rgb(223, 7, 7);\n\t\t}\n\t}\n\n\t&__footer {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\talign-items: flex-start;\n\t\tbackground: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background));\n\n\t\t.button-group {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: space-between;\n\t\t\twidth: 100%;\n\t\t\tmargin-top: 16px;\n\n\t\t\tbutton {\n\t\t\t\tmargin-inline-start: 16px;\n\n\t\t\t\t&:first-child {\n\t\t\t\t\tmargin-inline-start: 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},27920(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".sharing-entry__inherited .avatar-shared[data-v-cedf3238]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingInherited.vue"],names:[],mappings:"AAEC,0DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA",sourcesContent:["\n.sharing-entry__inherited {\n\t.avatar-shared {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},14536(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,".emptyContentWithSections[data-v-cd6ad9ee]{margin:1rem auto}.sharingTab[data-v-cd6ad9ee]{position:relative;height:100%}.sharingTab__content[data-v-cd6ad9ee]{padding:0 6px}.sharingTab__content section[data-v-cd6ad9ee]{padding-bottom:16px}.sharingTab__content section .section-header[data-v-cd6ad9ee]{margin-top:2px;margin-bottom:2px;display:flex;align-items:center;padding-bottom:4px}.sharingTab__content section .section-header h4[data-v-cd6ad9ee]{margin:0;font-size:16px}.sharingTab__content section .section-header .visually-hidden[data-v-cd6ad9ee]{display:none}.sharingTab__content section .section-header .hint-icon[data-v-cd6ad9ee]{color:var(--color-primary-element)}.sharingTab__content>section[data-v-cd6ad9ee]:not(:last-child){border-bottom:2px solid var(--color-border)}.sharingTab__additionalContent[data-v-cd6ad9ee]{margin:var(--default-clickable-area) 0}.hint-body[data-v-cd6ad9ee]{max-width:300px;padding:var(--border-radius-element)}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingTab.vue"],names:[],mappings:"AACA,2CACC,gBAAA,CAGD,6BACC,iBAAA,CACA,WAAA,CAEA,sCACC,aAAA,CAEA,8CACC,mBAAA,CAEA,8DACC,cAAA,CACA,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CAEA,iEACC,QAAA,CACA,cAAA,CAGD,+EACC,YAAA,CAGD,yEACC,kCAAA,CAOH,+DACC,2CAAA,CAKF,gDACC,sCAAA,CAIF,4BACC,eAAA,CACA,oCAAA",sourcesContent:["\n.emptyContentWithSections {\n\tmargin: 1rem auto;\n}\n\n.sharingTab {\n\tposition: relative;\n\theight: 100%;\n\n\t&__content {\n\t\tpadding: 0 6px;\n\n\t\tsection {\n\t\t\tpadding-bottom: 16px;\n\n\t\t\t.section-header {\n\t\t\t\tmargin-top: 2px;\n\t\t\t\tmargin-bottom: 2px;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tpadding-bottom: 4px;\n\n\t\t\t\th4 {\n\t\t\t\t\tmargin: 0;\n\t\t\t\t\tfont-size: 16px;\n\t\t\t\t}\n\n\t\t\t\t.visually-hidden {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\n\t\t\t\t.hint-icon {\n\t\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\t& > section:not(:last-child) {\n\t\t\tborder-bottom: 2px solid var(--color-border);\n\t\t}\n\n\t}\n\n\t&__additionalContent {\n\t\tmargin: var(--default-clickable-area) 0;\n\t}\n}\n\n.hint-body {\n\tmax-width: 300px;\n\tpadding: var(--border-radius-element);\n}\n"],sourceRoot:""}]);const o=r;i.d(t,["A",0,o])},70544(e,t,i){var s=i(71354),a=i.n(s),n=i(76314),r=i.n(n)()(a());r.push([e.id,"\n.sharing-tab-external-section-legacy[data-v-3e4e67d2] {\n\twidth: 100%;\n}\n","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SidebarTabExternal/SidebarTabExternalSectionLegacy.vue"],names:[],mappings:";AAkCA;CACA,WAAA;AACA",sourcesContent:['\x3c!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n--\x3e\n\n\n\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_setup.fileInfo)?_c(_setup.SharingTab,{attrs:{\"file-info\":_setup.fileInfo}}):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ContentCopy.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ContentCopy.vue?vue&type=template&id=0e8bd3c4\"\nimport script from \"./ContentCopy.vue?vue&type=script&lang=js\"\nexport * from \"./ContentCopy.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 content-copy-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,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"}},[(_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;return _c('li',{staticClass:\"sharing-entry\"},[_vm._t(\"avatar\"),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__desc\"},[_c('span',{staticClass:\"sharing-entry__title\"},[_vm._v(_vm._s(_vm.title))]),_vm._v(\" \"),(_vm.subtitle)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.subtitle)+\"\\n\\t\\t\")]):_vm._e()]),_vm._v(\" \"),(_vm.$slots['default'])?_c('NcActions',{ref:\"actionsComponent\",staticClass:\"sharing-entry__actions\",attrs:{\"menu-align\":\"right\",\"aria-expanded\":_vm.ariaExpandedValue}},[_vm._t(\"default\")],2):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.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!./SharingEntrySimple.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=style&index=0&id=13d4a0bb&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingEntrySimple.vue?vue&type=style&index=0&id=13d4a0bb&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntrySimple.vue?vue&type=template&id=13d4a0bb&scoped=true\"\nimport script from \"./SharingEntrySimple.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntrySimple.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntrySimple.vue?vue&type=style&index=0&id=13d4a0bb&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 \"13d4a0bb\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCapabilities } from '@nextcloud/capabilities';\nimport { generateUrl, getBaseUrl } from '@nextcloud/router';\n/**\n * @param fileid - The file ID to generate the direct file link for\n */\nexport function generateFileUrl(fileid) {\n const baseURL = getBaseUrl();\n const { globalscale } = getCapabilities();\n if (globalscale?.token) {\n return generateUrl('/gf/{token}/{fileid}', {\n token: globalscale.token,\n fileid,\n }, { baseURL });\n }\n return generateUrl('/f/{fileid}', {\n fileid,\n }, {\n baseURL,\n });\n}\n","\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.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!./SharingEntryInternal.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=style&index=0&id=6c4cb23b&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingEntryInternal.vue?vue&type=style&index=0&id=6c4cb23b&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryInternal.vue?vue&type=template&id=6c4cb23b&scoped=true\"\nimport script from \"./SharingEntryInternal.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryInternal.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryInternal.vue?vue&type=style&index=0&id=6c4cb23b&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 \"6c4cb23b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',[_c('SharingEntrySimple',{ref:\"shareEntrySimple\",staticClass:\"sharing-entry__internal\",attrs:{\"title\":_vm.t('files_sharing', 'Internal link'),\"subtitle\":_vm.internalLinkSubtitle},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('div',{staticClass:\"avatar-external icon-external-white\"})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"title\":_vm.copyLinkTooltip,\"aria-label\":_vm.copyLinkTooltip},on:{\"click\":_vm.copyLink},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.copied && _vm.copySuccess)?_c('CheckIcon',{staticClass:\"icon-checkmark-color\",attrs:{\"size\":20}}):_c('ClipboardIcon',{attrs:{\"size\":20}})]},proxy:true}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharing-search\"},[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":_vm.shareInputId}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.isExternal\n\t\t\t? _vm.t('files_sharing', 'Enter external recipients')\n\t\t\t: _vm.t('files_sharing', 'Search for internal recipients'))+\"\\n\\t\")]),_vm._v(\" \"),_c('NcSelect',{ref:\"select\",staticClass:\"sharing-search__input\",attrs:{\"input-id\":_vm.shareInputId,\"disabled\":!_vm.canReshare,\"loading\":_vm.loading,\"filterable\":false,\"placeholder\":_vm.inputPlaceholder,\"clear-search-on-blur\":() => false,\"user-select\":true,\"options\":_vm.options,\"label-outside\":true},on:{\"search\":_vm.asyncFind,\"option:selected\":_vm.onSelected},scopedSlots:_vm._u([{key:\"no-options\",fn:function({ search }){return [_vm._v(\"\\n\\t\\t\\t\"+_vm._s(search ? _vm.noResultText : _vm.placeholder)+\"\\n\\t\\t\")]}}]),model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1)\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 */\n\nexport const ATOMIC_PERMISSIONS = {\n\tNONE: 0,\n\tREAD: 1,\n\tUPDATE: 2,\n\tCREATE: 4,\n\tDELETE: 8,\n\tSHARE: 16,\n}\n\nconst BUNDLED_PERMISSIONS = {\n\tREAD_ONLY: ATOMIC_PERMISSIONS.READ,\n\tUPLOAD_AND_UPDATE: ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.CREATE | ATOMIC_PERMISSIONS.DELETE,\n\tFILE_DROP: ATOMIC_PERMISSIONS.CREATE,\n\tALL: ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.CREATE | ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.DELETE | ATOMIC_PERMISSIONS.SHARE,\n\tALL_FILE: ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.SHARE,\n}\n\n/**\n * Get bundled permissions based on config.\n *\n * @param {boolean} excludeShare - Whether to exclude SHARE permission from ALL and ALL_FILE bundles.\n * @return {object}\n */\nexport function getBundledPermissions(excludeShare = false) {\n\tif (excludeShare) {\n\t\treturn {\n\t\t\t...BUNDLED_PERMISSIONS,\n\t\t\tALL: BUNDLED_PERMISSIONS.ALL & ~ATOMIC_PERMISSIONS.SHARE,\n\t\t\tALL_FILE: BUNDLED_PERMISSIONS.ALL_FILE & ~ATOMIC_PERMISSIONS.SHARE,\n\t\t}\n\t}\n\treturn BUNDLED_PERMISSIONS\n}\n\n/**\n * Return whether a given permissions set contains some permissions.\n *\n * @param {number} initialPermissionSet - the permissions set.\n * @param {number} permissionsToCheck - the permissions to check.\n * @return {boolean}\n */\nexport function hasPermissions(initialPermissionSet, permissionsToCheck) {\n\treturn initialPermissionSet !== ATOMIC_PERMISSIONS.NONE && (initialPermissionSet & permissionsToCheck) === permissionsToCheck\n}\n\n/**\n * Return whether a given permissions set is valid.\n *\n * @param {number} permissionsSet - the permissions set.\n *\n * @return {boolean}\n */\nexport function permissionsSetIsValid(permissionsSet) {\n\t// Must have at least READ or CREATE permission.\n\tif (!hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.READ) && !hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.CREATE)) {\n\t\treturn false\n\t}\n\n\t// Must have READ permission if have UPDATE or DELETE.\n\tif (!hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.READ) && (\n\t\thasPermissions(permissionsSet, ATOMIC_PERMISSIONS.UPDATE) || hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.DELETE)\n\t)) {\n\t\treturn false\n\t}\n\n\treturn true\n}\n\n/**\n * Add some permissions to an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the initial permissions.\n * @param {number} permissionsToAdd - the permissions to add.\n *\n * @return {number}\n */\nexport function addPermissions(initialPermissionSet, permissionsToAdd) {\n\treturn initialPermissionSet | permissionsToAdd\n}\n\n/**\n * Remove some permissions from an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the initial permissions.\n * @param {number} permissionsToSubtract - the permissions to remove.\n *\n * @return {number}\n */\nexport function subtractPermissions(initialPermissionSet, permissionsToSubtract) {\n\treturn initialPermissionSet & ~permissionsToSubtract\n}\n\n/**\n * Toggle some permissions from an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the permissions set.\n * @param {number} permissionsToToggle - the permissions to toggle.\n *\n * @return {number}\n */\nexport function togglePermissions(initialPermissionSet, permissionsToToggle) {\n\tif (hasPermissions(initialPermissionSet, permissionsToToggle)) {\n\t\treturn subtractPermissions(initialPermissionSet, permissionsToToggle)\n\t} else {\n\t\treturn addPermissions(initialPermissionSet, permissionsToToggle)\n\t}\n}\n\n/**\n * Return whether some given permissions can be toggled from a permission set.\n *\n * @param {number} permissionSet - the initial permissions set.\n * @param {number} permissionsToToggle - the permissions to toggle.\n *\n * @return {boolean}\n */\nexport function canTogglePermissions(permissionSet, permissionsToToggle) {\n\treturn permissionsSetIsValid(togglePermissions(permissionSet, permissionsToToggle))\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport logger from '../services/logger.ts';\nimport { isFileRequest } from '../services/SharingService.ts';\nexport default class Share {\n _share;\n /**\n * Create the share object\n *\n * @param ocsData ocs request response\n */\n constructor(ocsData) {\n if (ocsData.ocs && ocsData.ocs.data && ocsData.ocs.data[0]) {\n ocsData = ocsData.ocs.data[0];\n }\n // string to int\n if (typeof ocsData.id === 'string') {\n ocsData.id = Number.parseInt(ocsData.id);\n }\n // convert int into boolean\n ocsData.hide_download = !!ocsData.hide_download;\n ocsData.mail_send = !!ocsData.mail_send;\n if (ocsData.attributes && typeof ocsData.attributes === 'string') {\n try {\n ocsData.attributes = JSON.parse(ocsData.attributes);\n }\n catch {\n logger.warn('Could not parse share attributes returned by server', ocsData.attributes);\n }\n }\n ocsData.attributes = ocsData.attributes ?? [];\n // Pre-declared so Vue 2 makes newPassword reactive at observation time,\n // avoiding $set's property-addition path which races with async setters.\n ocsData.newPassword = ocsData.newPassword ?? undefined;\n // store state\n this._share = ocsData;\n }\n /**\n * Get the share state\n * ! used for reactivity purpose\n * Do not remove. It allow vuejs to\n * inject its watchers into the #share\n * state and make the whole class reactive\n *\n * @return the share raw state\n */\n get state() {\n return this._share;\n }\n /**\n * get the share id\n */\n get id() {\n return this._share.id;\n }\n /**\n * Get the share type\n */\n get type() {\n return this._share.share_type;\n }\n /**\n * Get the share permissions\n * See window.OC.PERMISSION_* variables\n */\n get permissions() {\n return this._share.permissions;\n }\n /**\n * Get the share attributes\n */\n get attributes() {\n return this._share.attributes || [];\n }\n /**\n * Set the share permissions\n * See window.OC.PERMISSION_* variables\n */\n set permissions(permissions) {\n this._share.permissions = permissions;\n }\n // SHARE OWNER --------------------------------------------------\n /**\n * Get the share owner uid\n */\n get owner() {\n return this._share.uid_owner;\n }\n /**\n * Get the share owner's display name\n */\n get ownerDisplayName() {\n return this._share.displayname_owner;\n }\n // SHARED WITH --------------------------------------------------\n /**\n * Get the share with entity uid\n */\n get shareWith() {\n return this._share.share_with;\n }\n /**\n * Get the share with entity display name\n * fallback to its uid if none\n */\n get shareWithDisplayName() {\n return this._share.share_with_displayname\n || this._share.share_with;\n }\n /**\n * Unique display name in case of multiple\n * duplicates results with the same name.\n */\n get shareWithDisplayNameUnique() {\n return this._share.share_with_displayname_unique\n || this._share.share_with;\n }\n /**\n * Get the share with entity link\n */\n get shareWithLink() {\n return this._share.share_with_link;\n }\n /**\n * Get the share with avatar if any\n */\n get shareWithAvatar() {\n return this._share.share_with_avatar;\n }\n // SHARED FILE OR FOLDER OWNER ----------------------------------\n /**\n * Get the shared item owner uid\n */\n get uidFileOwner() {\n return this._share.uid_file_owner;\n }\n /**\n * Get the shared item display name\n * fallback to its uid if none\n */\n get displaynameFileOwner() {\n return this._share.displayname_file_owner\n || this._share.uid_file_owner;\n }\n // TIME DATA ----------------------------------------------------\n /**\n * Get the share creation timestamp\n */\n get createdTime() {\n return this._share.stime;\n }\n /**\n * Get the expiration date\n *\n * @return date with YYYY-MM-DD format\n */\n get expireDate() {\n return this._share.expiration;\n }\n /**\n * Set the expiration date\n *\n * @param date the share expiration date with YYYY-MM-DD format\n */\n set expireDate(date) {\n this._share.expiration = date;\n }\n // EXTRA DATA ---------------------------------------------------\n /**\n * Get the public share token\n */\n get token() {\n return this._share.token;\n }\n /**\n * Set the public share token\n */\n set token(token) {\n this._share.token = token;\n }\n /**\n * Get the share note if any\n */\n get note() {\n return this._share.note;\n }\n /**\n * Set the share note if any\n */\n set note(note) {\n this._share.note = note;\n }\n /**\n * Get the share label if any\n * Should only exist on link shares\n */\n get label() {\n return this._share.label ?? '';\n }\n /**\n * Set the share label if any\n * Should only be set on link shares\n */\n set label(label) {\n this._share.label = label;\n }\n /**\n * Have a mail been sent\n */\n get mailSend() {\n return this._share.mail_send === true;\n }\n /**\n * Hide the download button on public page\n */\n get hideDownload() {\n return this._share.hide_download === true\n || this.attributes.find?.(({ scope, key, value }) => scope === 'permissions' && key === 'download' && !value) !== undefined;\n }\n /**\n * Hide the download button on public page\n */\n set hideDownload(state) {\n // disabling hide-download also enables the download permission\n // needed for regression in Nextcloud 31.0.0 until (incl.) 31.0.3\n if (!state) {\n const attribute = this.attributes.find(({ key, scope }) => key === 'download' && scope === 'permissions');\n if (attribute) {\n attribute.value = true;\n }\n }\n this._share.hide_download = state === true;\n }\n /**\n * Password protection of the share\n */\n get password() {\n return this._share.password;\n }\n /**\n * Password protection of the share\n */\n set password(password) {\n this._share.password = password;\n }\n /**\n * Unsaved password (set during share creation or editing).\n * Delegates to _share so reads/writes go through the reactive state.\n */\n get newPassword() {\n return this._share.newPassword;\n }\n set newPassword(value) {\n this._share.newPassword = value;\n }\n /**\n * Password expiration time\n *\n * @return date with YYYY-MM-DD format\n */\n get passwordExpirationTime() {\n return this._share.password_expiration_time;\n }\n /**\n * Password expiration time\n *\n * @param passwordExpirationTime date with YYYY-MM-DD format\n */\n set passwordExpirationTime(passwordExpirationTime) {\n this._share.password_expiration_time = passwordExpirationTime;\n }\n /**\n * Password protection by Talk of the share\n */\n get sendPasswordByTalk() {\n return this._share.send_password_by_talk;\n }\n /**\n * Password protection by Talk of the share\n *\n * @param sendPasswordByTalk whether to send the password by Talk or not\n */\n set sendPasswordByTalk(sendPasswordByTalk) {\n this._share.send_password_by_talk = sendPasswordByTalk;\n }\n // SHARED ITEM DATA ---------------------------------------------\n /**\n * Get the shared item absolute full path\n */\n get path() {\n return this._share.path;\n }\n /**\n * Return the item type: file or folder\n *\n * @return 'folder' | 'file'\n */\n get itemType() {\n return this._share.item_type;\n }\n /**\n * Get the shared item mimetype\n */\n get mimetype() {\n return this._share.mimetype;\n }\n /**\n * Get the shared item id\n */\n get fileSource() {\n return this._share.file_source;\n }\n /**\n * Get the target path on the receiving end\n * e.g the file /xxx/aaa will be shared in\n * the receiving root as /aaa, the fileTarget is /aaa\n */\n get fileTarget() {\n return this._share.file_target;\n }\n /**\n * Get the parent folder id if any\n */\n get fileParent() {\n return this._share.file_parent;\n }\n // PERMISSIONS Shortcuts\n /**\n * Does this share have READ permissions\n */\n get hasReadPermission() {\n return !!((this.permissions & window.OC.PERMISSION_READ));\n }\n /**\n * Does this share have CREATE permissions\n */\n get hasCreatePermission() {\n return !!((this.permissions & window.OC.PERMISSION_CREATE));\n }\n /**\n * Does this share have DELETE permissions\n */\n get hasDeletePermission() {\n return !!((this.permissions & window.OC.PERMISSION_DELETE));\n }\n /**\n * Does this share have UPDATE permissions\n */\n get hasUpdatePermission() {\n return !!((this.permissions & window.OC.PERMISSION_UPDATE));\n }\n /**\n * Does this share have SHARE permissions\n */\n get hasSharePermission() {\n return !!((this.permissions & window.OC.PERMISSION_SHARE));\n }\n /**\n * Does this share have download permissions\n */\n get hasDownloadPermission() {\n const hasDisabledDownload = (attribute) => {\n return attribute.scope === 'permissions' && attribute.key === 'download' && attribute.value === false;\n };\n return this.attributes.some(hasDisabledDownload);\n }\n /**\n * Is this mail share a file request ?\n */\n get isFileRequest() {\n return isFileRequest(JSON.stringify(this.attributes));\n }\n set hasDownloadPermission(enabled) {\n this.setAttribute('permissions', 'download', !!enabled);\n }\n setAttribute(scope, key, value) {\n const attrUpdate = {\n scope,\n key,\n value,\n };\n // try and replace existing\n for (const i in this._share.attributes) {\n const attr = this._share.attributes[i];\n if (attr.scope === attrUpdate.scope && attr.key === attrUpdate.key) {\n this._share.attributes.splice(i, 1, attrUpdate);\n return;\n }\n }\n this._share.attributes.push(attrUpdate);\n }\n // PERMISSIONS Shortcuts for the CURRENT USER\n // ! the permissions above are the share settings,\n // ! meaning the permissions for the recipient\n /**\n * Can the current user EDIT this share ?\n */\n get canEdit() {\n return this._share.can_edit === true;\n }\n /**\n * Can the current user DELETE this share ?\n */\n get canDelete() {\n return this._share.can_delete === true;\n }\n /**\n * Top level accessible shared folder fileid for the current user\n */\n get viaFileid() {\n return this._share.via_fileid;\n }\n /**\n * Top level accessible shared folder path for the current user\n */\n get viaPath() {\n return this._share.via_path;\n }\n // TODO: SORT THOSE PROPERTIES\n get parent() {\n return this._share.parent;\n }\n get storageId() {\n return this._share.storage_id;\n }\n get storage() {\n return this._share.storage;\n }\n get itemSource() {\n return this._share.item_source;\n }\n get status() {\n return this._share.status;\n }\n /**\n * Is the share from a trusted server\n */\n get isTrustedServer() {\n return !!this._share.is_trusted_server;\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n// TODO: Fix this instead of disabling ESLint!!!\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { getCurrentUser } from '@nextcloud/auth';\nimport axios from '@nextcloud/axios';\nimport { File, Folder, Permission } from '@nextcloud/files';\nimport { getRemoteURL, getRootPath } from '@nextcloud/files/dav';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport logger from './logger.ts';\nconst headers = {\n 'Content-Type': 'application/json',\n};\n/**\n *\n * @param ocsEntry\n * @param unmounted whether the share is not mounted into the filesystem (pending or deleted)\n */\nasync function ocsEntryToNode(ocsEntry, unmounted = false) {\n try {\n // Federated share handling\n if (ocsEntry?.remote_id !== undefined) {\n if (!ocsEntry.mimetype) {\n const mime = (await import('mime')).default;\n // This won't catch files without an extension, but this is the best we can do\n ocsEntry.mimetype = mime.getType(ocsEntry.name);\n }\n const type = ocsEntry.type === 'dir' ? 'folder' : ocsEntry.type;\n ocsEntry.item_type = type || (ocsEntry.mimetype ? 'file' : 'folder');\n // different naming for remote shares\n ocsEntry.item_mtime = ocsEntry.mtime;\n ocsEntry.file_target = ocsEntry.file_target || ocsEntry.mountpoint;\n if (ocsEntry.file_target.includes('TemporaryMountPointName')) {\n ocsEntry.file_target = ocsEntry.name;\n }\n // If the share is not accepted yet we don't know which permissions it will have\n if (!ocsEntry.accepted) {\n // Need to set permissions to NONE for federated shares\n ocsEntry.item_permissions = Permission.NONE;\n ocsEntry.permissions = Permission.NONE;\n }\n ocsEntry.uid_owner = ocsEntry.owner;\n // TODO: have the real display name stored somewhere\n ocsEntry.displayname_owner = ocsEntry.owner;\n }\n // Pending and deleted shares are not mounted into the user's filesystem,\n // so no file operation can act on them until they are accepted or restored.\n if (unmounted) {\n ocsEntry.item_permissions = Permission.NONE;\n ocsEntry.permissions = Permission.NONE;\n }\n const isFolder = ocsEntry?.item_type === 'folder';\n const hasPreview = ocsEntry?.has_preview === true;\n const Node = isFolder ? Folder : File;\n // If this is an external share that is not yet accepted,\n // we don't have an id. We can fallback to the row id temporarily\n // local shares (this server) use `file_source`, but remote shares (federated) use `file_id`\n const fileid = ocsEntry.file_source || ocsEntry.file_id || ocsEntry.id;\n // Generate path and strip double slashes\n const path = ocsEntry.path || ocsEntry.file_target || ocsEntry.name;\n const source = `${getRemoteURL()}${getRootPath()}/${path.replace(/^\\/+/, '')}`;\n let mtime = ocsEntry.item_mtime ? new Date((ocsEntry.item_mtime) * 1000) : undefined;\n // Prefer share time if more recent than item mtime\n if (ocsEntry?.stime > (ocsEntry?.item_mtime || 0)) {\n mtime = new Date((ocsEntry.stime) * 1000);\n }\n let sharees;\n if ('share_with' in ocsEntry) {\n sharees = {\n sharee: {\n id: ocsEntry.share_with,\n 'display-name': ocsEntry.share_with_displayname || ocsEntry.share_with,\n type: ocsEntry.share_type,\n },\n };\n }\n return new Node({\n id: fileid,\n source,\n owner: ocsEntry?.uid_owner,\n mime: ocsEntry?.mimetype || 'application/octet-stream',\n mtime,\n size: ocsEntry?.item_size ?? undefined,\n permissions: ocsEntry?.item_permissions || ocsEntry?.permissions,\n root: getRootPath(),\n attributes: {\n ...ocsEntry,\n 'has-preview': hasPreview,\n 'hide-download': ocsEntry?.hide_download === 1,\n // Also check the sharingStatusAction.ts code\n 'owner-id': ocsEntry?.uid_owner,\n 'owner-display-name': ocsEntry?.displayname_owner,\n 'share-types': ocsEntry?.share_type,\n 'share-attributes': ocsEntry?.attributes || '[]',\n sharees,\n favorite: ocsEntry?.tags?.includes(window.OC.TAG_FAVORITE) ? 1 : 0,\n },\n });\n }\n catch (error) {\n logger.error('Error while parsing OCS entry', { error });\n return null;\n }\n}\n/**\n *\n * @param shareWithMe\n */\nfunction getShares(shareWithMe = false) {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares');\n return axios.get(url, {\n headers,\n params: {\n shared_with_me: shareWithMe,\n include_tags: true,\n },\n });\n}\n/**\n *\n */\nfunction getSharedWithYou() {\n return getShares(true);\n}\n/**\n *\n */\nfunction getSharedWithOthers() {\n return getShares();\n}\n/**\n *\n */\nfunction getRemoteShares() {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n}\n/**\n *\n */\nfunction getPendingShares() {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n}\n/**\n *\n */\nfunction getRemotePendingShares() {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n}\n/**\n *\n */\nfunction getDeletedShares() {\n const url = generateOcsUrl('apps/files_sharing/api/v1/deletedshares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n}\n/**\n * Check if a file request is enabled\n *\n * @param attributes the share attributes json-encoded array\n */\nexport function isFileRequest(attributes = '[]') {\n const isFileRequest = (attribute) => {\n return attribute.scope === 'fileRequest' && attribute.key === 'enabled' && attribute.value === true;\n };\n try {\n const attributesArray = JSON.parse(attributes);\n return attributesArray.some(isFileRequest);\n }\n catch (error) {\n logger.error('Error while parsing share attributes', { error });\n return false;\n }\n}\n/**\n * Group an array of objects (here Nodes) by a key\n * and return an array of arrays of them.\n *\n * @param nodes Nodes to group\n * @param key The attribute to group by\n */\nfunction groupBy(nodes, key) {\n return Object.values(nodes.reduce(function (acc, curr) {\n (acc[curr[key]] = acc[curr[key]] || []).push(curr);\n return acc;\n }, {}));\n}\n/**\n *\n * @param sharedWithYou\n * @param sharedWithOthers\n * @param pendingShares\n * @param deletedshares\n * @param filterTypes\n */\nexport async function getContents(sharedWithYou = true, sharedWithOthers = true, pendingShares = false, deletedshares = false, filterTypes = []) {\n const requests = [];\n if (sharedWithYou) {\n requests.push({ promise: getSharedWithYou(), unmounted: false }, { promise: getRemoteShares(), unmounted: false });\n }\n if (sharedWithOthers) {\n requests.push({ promise: getSharedWithOthers(), unmounted: false });\n }\n if (pendingShares) {\n requests.push({ promise: getPendingShares(), unmounted: true }, { promise: getRemotePendingShares(), unmounted: true });\n }\n if (deletedshares) {\n requests.push({ promise: getDeletedShares(), unmounted: true });\n }\n const responses = await Promise.all(requests.map(({ promise }) => promise));\n const data = responses.flatMap((response, index) => response.data.ocs.data\n .map((entry) => ({ entry, unmounted: requests[index].unmounted })));\n let contents = (await Promise.all(data.map(({ entry, unmounted }) => ocsEntryToNode(entry, unmounted))))\n .filter((node) => node !== null);\n if (filterTypes.length > 0) {\n contents = contents.filter((node) => filterTypes.includes(node.attributes?.share_type));\n }\n // Merge duplicate shares and group their attributes\n // Also check the sharingStatusAction.ts code\n contents = groupBy(contents, 'source').map((nodes) => {\n const node = nodes[0];\n node.attributes['share-types'] = nodes.map((node) => node.attributes['share-types']);\n return node;\n });\n return {\n folder: new Folder({\n id: 0,\n source: `${getRemoteURL()}${getRootPath()}`,\n owner: getCurrentUser()?.uid || null,\n root: getRootPath(),\n }),\n contents,\n };\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCapabilities } from '@nextcloud/capabilities';\nimport { loadState } from '@nextcloud/initial-state';\nexport default class Config {\n _capabilities;\n constructor() {\n this._capabilities = getCapabilities();\n }\n /**\n * Get default share permissions, if any\n */\n get defaultPermissions() {\n return this._capabilities.files_sharing?.default_permissions;\n }\n /**\n * Should SHARE permission be excluded from \"Allow editing\" bundled permissions\n */\n get excludeReshareFromEdit() {\n return this._capabilities.files_sharing?.exclude_reshare_from_edit === true;\n }\n /**\n * Is public upload allowed on link shares ?\n * This covers File request and Full upload/edit option.\n */\n get isPublicUploadEnabled() {\n return this._capabilities.files_sharing?.public?.upload === true;\n }\n /**\n * Get the federated sharing documentation link\n */\n get federatedShareDocLink() {\n return window.OC.appConfig.core.federatedCloudShareDoc;\n }\n /**\n * Get the default link share expiration date\n */\n get defaultExpirationDate() {\n if (this.isDefaultExpireDateEnabled && this.defaultExpireDate !== null) {\n return new Date(new Date().setDate(new Date().getDate() + this.defaultExpireDate));\n }\n return null;\n }\n /**\n * Get the default internal expiration date\n */\n get defaultInternalExpirationDate() {\n if (this.isDefaultInternalExpireDateEnabled && this.defaultInternalExpireDate !== null) {\n return new Date(new Date().setDate(new Date().getDate() + this.defaultInternalExpireDate));\n }\n return null;\n }\n /**\n * Get the default remote expiration date\n */\n get defaultRemoteExpirationDateString() {\n if (this.isDefaultRemoteExpireDateEnabled && this.defaultRemoteExpireDate !== null) {\n return new Date(new Date().setDate(new Date().getDate() + this.defaultRemoteExpireDate));\n }\n return null;\n }\n /**\n * Are link shares password-enforced ?\n */\n get enforcePasswordForPublicLink() {\n return window.OC.appConfig.core.enforcePasswordForPublicLink === true;\n }\n /**\n * Is password asked by default on link shares ?\n */\n get enableLinkPasswordByDefault() {\n return window.OC.appConfig.core.enableLinkPasswordByDefault === true;\n }\n /**\n * Is link shares expiration enforced ?\n */\n get isDefaultExpireDateEnforced() {\n return window.OC.appConfig.core.defaultExpireDateEnforced === true;\n }\n /**\n * Is there a default expiration date for new link shares ?\n */\n get isDefaultExpireDateEnabled() {\n return window.OC.appConfig.core.defaultExpireDateEnabled === true;\n }\n /**\n * Is internal shares expiration enforced ?\n */\n get isDefaultInternalExpireDateEnforced() {\n return window.OC.appConfig.core.defaultInternalExpireDateEnforced === true;\n }\n /**\n * Is there a default expiration date for new internal shares ?\n */\n get isDefaultInternalExpireDateEnabled() {\n return window.OC.appConfig.core.defaultInternalExpireDateEnabled === true;\n }\n /**\n * Is remote shares expiration enforced ?\n */\n get isDefaultRemoteExpireDateEnforced() {\n return window.OC.appConfig.core.defaultRemoteExpireDateEnforced === true;\n }\n /**\n * Is there a default expiration date for new remote shares ?\n */\n get isDefaultRemoteExpireDateEnabled() {\n return window.OC.appConfig.core.defaultRemoteExpireDateEnabled === true;\n }\n /**\n * Are users on this server allowed to send shares to other servers ?\n */\n get isRemoteShareAllowed() {\n return window.OC.appConfig.core.remoteShareAllowed === true;\n }\n /**\n * Is federation enabled ?\n */\n get isFederationEnabled() {\n return this._capabilities?.files_sharing?.federation?.outgoing === true;\n }\n /**\n * Is public sharing enabled ?\n */\n get isPublicShareAllowed() {\n return this._capabilities?.files_sharing?.public?.enabled === true;\n }\n /**\n * Is sharing my mail (link share) enabled ?\n */\n get isMailShareAllowed() {\n return this._capabilities?.files_sharing?.sharebymail?.enabled === true\n && this.isPublicShareAllowed === true;\n }\n /**\n * Get the default days to link shares expiration\n */\n get defaultExpireDate() {\n return window.OC.appConfig.core.defaultExpireDate;\n }\n /**\n * Get the default days to internal shares expiration\n */\n get defaultInternalExpireDate() {\n return window.OC.appConfig.core.defaultInternalExpireDate;\n }\n /**\n * Get the default days to remote shares expiration\n */\n get defaultRemoteExpireDate() {\n return window.OC.appConfig.core.defaultRemoteExpireDate;\n }\n /**\n * Is resharing allowed ?\n */\n get isResharingAllowed() {\n return window.OC.appConfig.core.resharingAllowed === true;\n }\n /**\n * Is password enforced for mail shares ?\n */\n get isPasswordForMailSharesRequired() {\n return this._capabilities.files_sharing?.sharebymail?.password?.enforced === true;\n }\n /**\n * Always show the email or userid unique sharee label if enabled by the admin\n */\n get shouldAlwaysShowUnique() {\n return this._capabilities.files_sharing?.sharee?.always_show_unique === true;\n }\n /**\n * Is sharing with groups allowed ?\n */\n get allowGroupSharing() {\n return window.OC.appConfig.core.allowGroupSharing === true;\n }\n /**\n * Get the maximum results of a share search\n */\n get maxAutocompleteResults() {\n return parseInt(window.OC.config['sharing.maxAutocompleteResults'], 10) || 25;\n }\n /**\n * Get the minimal string length\n * to initiate a share search\n */\n get minSearchStringLength() {\n return parseInt(window.OC.config['sharing.minSearchStringLength'], 10) || 0;\n }\n /**\n * Get the password policy configuration\n */\n get passwordPolicy() {\n return this._capabilities?.password_policy || {};\n }\n /**\n * Returns true if custom tokens are allowed\n */\n get allowCustomTokens() {\n return this._capabilities?.files_sharing?.public?.custom_tokens;\n }\n /**\n * Show federated shares as internal shares\n *\n * @return\n */\n get showFederatedSharesAsInternal() {\n return loadState('files_sharing', 'showFederatedSharesAsInternal', false);\n }\n /**\n * Show federated shares to trusted servers as internal shares\n *\n * @return\n */\n get showFederatedSharesToTrustedServersAsInternal() {\n return loadState('files_sharing', 'showFederatedSharesToTrustedServersAsInternal', false);\n }\n /**\n * Show the external share ui\n */\n get showExternalSharing() {\n return loadState('files_sharing', 'showExternalSharing', true);\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { ATOMIC_PERMISSIONS } from '../lib/SharePermissionsToolBox.js'\nimport Share from '../models/Share.ts'\nimport Config from '../services/ConfigService.ts'\nimport logger from '../services/logger.ts'\n\nexport default {\n\tmethods: {\n\t\tasync openSharingDetails(shareRequestObject) {\n\t\t\tlet share\n\t\t\t// handle externalResults from OCA.Sharing.ShareSearch\n\t\t\t// TODO : Better name/interface for handler required\n\t\t\t// For example `externalAppCreateShareHook` with proper documentation\n\t\t\tif (shareRequestObject.handler) {\n\t\t\t\tconst handlerInput = {}\n\t\t\t\tif (this.suggestions) {\n\t\t\t\t\thandlerInput.suggestions = this.suggestions\n\t\t\t\t\thandlerInput.fileInfo = this.fileInfo\n\t\t\t\t\thandlerInput.query = this.query\n\t\t\t\t}\n\t\t\t\tconst externalShareRequestObject = await shareRequestObject.handler(handlerInput)\n\t\t\t\tshare = this.mapShareRequestToShareObject(externalShareRequestObject)\n\t\t\t} else {\n\t\t\t\tshare = this.mapShareRequestToShareObject(shareRequestObject)\n\t\t\t}\n\n\t\t\tif (this.fileInfo.type !== 'dir') {\n\t\t\t\tconst originalPermissions = share.permissions\n\t\t\t\tconst strippedPermissions = originalPermissions\n\t\t\t\t\t& ~ATOMIC_PERMISSIONS.CREATE\n\t\t\t\t\t& ~ATOMIC_PERMISSIONS.DELETE\n\n\t\t\t\tif (originalPermissions !== strippedPermissions) {\n\t\t\t\t\tlogger.debug('Removed create/delete permissions from file share (only valid for folders)')\n\t\t\t\t\tshare.permissions = strippedPermissions\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst shareDetails = {\n\t\t\t\tfileInfo: this.fileInfo,\n\t\t\t\tshare,\n\t\t\t}\n\n\t\t\tthis.$emit('open-sharing-details', shareDetails)\n\t\t},\n\t\topenShareDetailsForCustomSettings(share) {\n\t\t\tshare.setCustomPermissions = true\n\t\t\tthis.openSharingDetails(share)\n\t\t},\n\t\tmapShareRequestToShareObject(shareRequestObject) {\n\t\t\tif (shareRequestObject.id) {\n\t\t\t\treturn shareRequestObject\n\t\t\t}\n\n\t\t\tconst share = {\n\t\t\t\tattributes: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: true,\n\t\t\t\t\t\tkey: 'download',\n\t\t\t\t\t\tscope: 'permissions',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\thideDownload: false,\n\t\t\t\tshare_type: shareRequestObject.shareType,\n\t\t\t\tshare_with: shareRequestObject.shareWith,\n\t\t\t\tis_no_user: shareRequestObject.isNoUser,\n\t\t\t\tuser: shareRequestObject.shareWith,\n\t\t\t\tshare_with_displayname: shareRequestObject.displayName,\n\t\t\t\tsubtitle: shareRequestObject.subtitle,\n\t\t\t\tpermissions: shareRequestObject.permissions ?? new Config().defaultPermissions,\n\t\t\t\texpiration: '',\n\t\t\t}\n\n\t\t\treturn new Share(share)\n\t\t},\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport axios, { isAxiosError } from '@nextcloud/axios'\nimport { showError } from '@nextcloud/dialogs'\nimport { emit } from '@nextcloud/event-bus'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport Share from '../models/Share.ts'\nimport logger from '../services/logger.ts'\n\nconst shareUrl = generateOcsUrl('apps/files_sharing/api/v1/shares')\n\nexport default {\n\tmethods: {\n\t\t/**\n\t\t * Create a new share\n\t\t *\n\t\t * @param {object} data destructuring object\n\t\t * @param {string} data.path path to the file/folder which should be shared\n\t\t * @param {number} data.shareType 0 = user; 1 = group; 3 = public link; 6 = federated cloud share\n\t\t * @param {string} data.shareWith user/group id with which the file should be shared (optional for shareType > 1)\n\t\t * @param {boolean} [data.publicUpload] allow public upload to a public shared folder\n\t\t * @param {string} [data.password] password to protect public link Share with\n\t\t * @param {number} [data.permissions] 1 = read; 2 = update; 4 = create; 8 = delete; 16 = share; 31 = all (default: 31, for public shares: 1)\n\t\t * @param {boolean} [data.sendPasswordByTalk] send the password via a talk conversation\n\t\t * @param {string} [data.expireDate] expire the share automatically after\n\t\t * @param {string} [data.label] custom label\n\t\t * @param {string} [data.attributes] Share attributes encoded as json\n\t\t * @param {string} data.note custom note to recipient\n\t\t * @return {Share} the new share\n\t\t * @throws {Error}\n\t\t */\n\t\tasync createShare({ path, permissions, shareType, shareWith, publicUpload, password, sendPasswordByTalk, expireDate, label, note, attributes }) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.post(shareUrl, { path, permissions, shareType, shareWith, publicUpload, password, sendPasswordByTalk, expireDate, label, note, attributes })\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t}\n\t\t\t\tconst share = new Share(request.data.ocs.data)\n\t\t\t\temit('files_sharing:share:created', { share })\n\t\t\t\treturn share\n\t\t\t} catch (error) {\n\t\t\t\tconst errorMessage = getErrorMessage(error) ?? t('files_sharing', 'Error creating the share')\n\t\t\t\tshowError(errorMessage)\n\t\t\t\tthrow new Error(errorMessage, { cause: error })\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Delete a share\n\t\t *\n\t\t * @param {number} id share id\n\t\t * @throws {Error}\n\t\t */\n\t\tasync deleteShare(id) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.delete(shareUrl + `/${id}`)\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t}\n\t\t\t\temit('files_sharing:share:deleted', { id })\n\t\t\t\treturn true\n\t\t\t} catch (error) {\n\t\t\t\tconst errorMessage = getErrorMessage(error) ?? t('files_sharing', 'Error deleting the share')\n\t\t\t\tshowError(errorMessage)\n\t\t\t\tthrow new Error(errorMessage, { cause: error })\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update a share\n\t\t *\n\t\t * @param {number} id share id\n\t\t * @param {object} properties key-value object of the properties to update\n\t\t */\n\t\tasync updateShare(id, properties) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.put(shareUrl + `/${id}`, properties)\n\t\t\t\temit('files_sharing:share:updated', { id })\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t} else {\n\t\t\t\t\treturn request.data.ocs.data\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error while updating share', { error })\n\t\t\t\tconst errorMessage = getErrorMessage(error) ?? t('files_sharing', 'Error updating the share')\n\t\t\t\t// the error will be shown in apps/files_sharing/src/mixins/SharesMixin.js\n\t\t\t\tthrow new Error(errorMessage, { cause: error })\n\t\t\t}\n\t\t},\n\t},\n}\n\n/**\n * Handle an error response from the server and show a notification with the error message if possible\n *\n * @param {unknown} error - The received error\n * @return {string|undefined} the error message if it could be extracted from the response, otherwise undefined\n */\nfunction getErrorMessage(error) {\n\tif (isAxiosError(error) && error.response.data?.ocs) {\n\t\t/** @type {import('@nextcloud/typings/ocs').OCSResponse} */\n\t\tconst response = error.response.data\n\t\tif (response.ocs.meta?.message) {\n\t\t\treturn response.ocs.meta.message\n\t\t}\n\t}\n}\n","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.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!./SharingInput.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=style&index=0&id=0b151499&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingInput.vue?vue&type=style&index=0&id=0b151499&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingInput.vue?vue&type=template&id=0b151499\"\nimport script from \"./SharingInput.vue?vue&type=script&lang=js\"\nexport * from \"./SharingInput.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingInput.vue?vue&type=style&index=0&id=0b151499&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSection.vue?vue&type=script&lang=ts&setup=true\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSection.vue?vue&type=script&lang=ts&setup=true\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_vm.section.element,{ref:\"sectionElement\",tag:\"component\",domProps:{\"node\":_vm.node}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SidebarTabExternalSection.vue?vue&type=template&id=9785f99e\"\nimport script from \"./SidebarTabExternalSection.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SidebarTabExternalSection.vue?vue&type=script&lang=ts&setup=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 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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSectionLegacy.vue?vue&type=script&lang=ts&setup=true\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSectionLegacy.vue?vue&type=script&lang=ts&setup=true\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"sharing-tab-external-section-legacy\"},[_c(_setup.component,{tag:\"component\",attrs:{\"file-info\":_vm.fileInfo}})],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/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSectionLegacy.vue?vue&type=style&index=0&id=3e4e67d2&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalSectionLegacy.vue?vue&type=style&index=0&id=3e4e67d2&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SidebarTabExternalSectionLegacy.vue?vue&type=template&id=3e4e67d2&scoped=true\"\nimport script from \"./SidebarTabExternalSectionLegacy.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SidebarTabExternalSectionLegacy.vue?vue&type=script&lang=ts&setup=true\"\nimport style0 from \"./SidebarTabExternalSectionLegacy.vue?vue&type=style&index=0&id=3e4e67d2&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e4e67d2\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharingTabDetailsView\"},[_c('div',{staticClass:\"sharingTabDetailsView__header\"},[_c('span',[(_vm.isUserShare)?_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":_vm.share.shareType !== _vm.ShareType.User,\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName,\"menu-position\":\"left\",\"url\":_vm.share.shareWithAvatar}}):_vm._e(),_vm._v(\" \"),_c(_vm.getShareTypeIcon(_vm.share.type),{tag:\"component\",attrs:{\"size\":32}})],1),_vm._v(\" \"),_c('span',[_c('h1',[_vm._v(_vm._s(_vm.title))])])]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__wrapper\"},[_c('div',{ref:\"quickPermissions\",staticClass:\"sharingTabDetailsView__quick-permissions\"},[_c('div',[_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"read-only\",\"value\":_vm.bundledPermissions.READ_ONLY.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:modelValue\":_vm.toggleCustomPermissions},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ViewIcon',{attrs:{\"size\":20}})]},proxy:true}]),model:{value:(_vm.sharingPermission),callback:function ($$v) {_vm.sharingPermission=$$v},expression:\"sharingPermission\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'View only'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"upload-edit\",\"value\":_vm.allPermissions,\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:modelValue\":_vm.toggleCustomPermissions},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('EditIcon',{attrs:{\"size\":20}})]},proxy:true}]),model:{value:(_vm.sharingPermission),callback:function ($$v) {_vm.sharingPermission=$$v},expression:\"sharingPermission\"}},[(_vm.allowsFileDrop)?[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow upload and editing'))+\"\\n\\t\\t\\t\\t\\t\")]:[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow editing'))+\"\\n\\t\\t\\t\\t\\t\")]],2),_vm._v(\" \"),(_vm.allowsFileDrop)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-sharing-share-permissions-bundle\":\"file-drop\",\"button-variant\":true,\"value\":_vm.bundledPermissions.FILE_DROP.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:modelValue\":_vm.toggleCustomPermissions},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('UploadIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1083194048),model:{value:(_vm.sharingPermission),callback:function ($$v) {_vm.sharingPermission=$$v},expression:\"sharingPermission\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'File request'))+\"\\n\\t\\t\\t\\t\\t\"),_c('small',{staticClass:\"subline\"},[_vm._v(_vm._s(_vm.t('files_sharing', 'Upload only')))])]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"custom\",\"value\":\"custom\",\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:modelValue\":_vm.expandCustomPermissions},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}]),model:{value:(_vm.sharingPermission),callback:function ($$v) {_vm.sharingPermission=$$v},expression:\"sharingPermission\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Custom permissions'))+\"\\n\\t\\t\\t\\t\\t\"),_c('small',{staticClass:\"subline\"},[_vm._v(_vm._s(_vm.customPermissionsList))])])],1)]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__advanced-control\"},[_c('NcButton',{attrs:{\"id\":\"advancedSectionAccordionAdvancedControl\",\"variant\":\"tertiary\",\"alignment\":\"end-reverse\",\"aria-controls\":\"advancedSectionAccordionAdvanced\",\"aria-expanded\":_vm.advancedControlExpandedValue},on:{\"click\":function($event){_vm.advancedSectionAccordionExpanded = !_vm.advancedSectionAccordionExpanded}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!_vm.advancedSectionAccordionExpanded)?_c('MenuDownIcon'):_c('MenuUpIcon')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Advanced settings'))+\"\\n\\t\\t\\t\\t\")])],1),_vm._v(\" \"),(_vm.advancedSectionAccordionExpanded)?_c('div',{staticClass:\"sharingTabDetailsView__advanced\",attrs:{\"id\":\"advancedSectionAccordionAdvanced\",\"aria-labelledby\":\"advancedSectionAccordionAdvancedControl\",\"role\":\"region\"}},[_c('section',[(_vm.isPublicShare)?_c('NcInputField',{staticClass:\"sharingTabDetailsView__label\",attrs:{\"autocomplete\":\"off\",\"label\":_vm.t('files_sharing', 'Share label')},model:{value:(_vm.share.label),callback:function ($$v) {_vm.$set(_vm.share, \"label\", $$v)},expression:\"share.label\"}}):_vm._e(),_vm._v(\" \"),(_vm.config.allowCustomTokens && _vm.isPublicShare && !_vm.isNewShare)?_c('NcInputField',{attrs:{\"autocomplete\":\"off\",\"label\":_vm.t('files_sharing', 'Share link token'),\"helper-text\":_vm.t('files_sharing', 'Set the public share link token to something easy to remember or generate a new token. It is not recommended to use a guessable token for shares which contain sensitive information.'),\"show-trailing-button\":\"\",\"trailing-button-label\":_vm.loadingToken ? _vm.t('files_sharing', 'Generating…') : _vm.t('files_sharing', 'Generate new token')},on:{\"trailing-button-click\":_vm.generateNewToken},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [(_vm.loadingToken)?_c('NcLoadingIcon'):_c('Refresh',{attrs:{\"size\":20}})]},proxy:true}],null,false,4228062821),model:{value:(_vm.share.token),callback:function ($$v) {_vm.$set(_vm.share, \"token\", $$v)},expression:\"share.token\"}}):_vm._e(),_vm._v(\" \"),(_vm.isPublicShare)?[_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":_vm.isPasswordEnforced},model:{value:(_vm.isPasswordProtected),callback:function ($$v) {_vm.isPasswordProtected=$$v},expression:\"isPasswordProtected\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Set password'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.isPasswordProtected)?_c('NcPasswordField',{attrs:{\"autocomplete\":\"new-password\",\"model-value\":_vm.share.newPassword ?? '',\"error\":_vm.passwordError,\"helper-text\":_vm.errorPasswordLabel || _vm.passwordHint,\"required\":_vm.isPasswordEnforced && _vm.isNewShare,\"label\":_vm.t('files_sharing', 'Password')},on:{\"update:value\":_vm.onPasswordChange}}):_vm._e(),_vm._v(\" \"),(_vm.isEmailShareType && _vm.passwordExpirationTime)?_c('span',{attrs:{\"icon\":\"icon-info\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Password expires {passwordExpirationTime}', { passwordExpirationTime: _vm.passwordExpirationTime }))+\"\\n\\t\\t\\t\\t\\t\")]):(_vm.isEmailShareType && _vm.passwordExpirationTime !== null)?_c('span',{attrs:{\"icon\":\"icon-error\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Password expired'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e()]:_vm._e(),_vm._v(\" \"),(_vm.canTogglePasswordProtectedByTalkAvailable)?_c('NcCheckboxRadioSwitch',{on:{\"update:modelValue\":_vm.onPasswordProtectedByTalkChange},model:{value:(_vm.isPasswordProtectedByTalk),callback:function ($$v) {_vm.isPasswordProtectedByTalk=$$v},expression:\"isPasswordProtectedByTalk\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Video verification'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":_vm.isExpiryDateEnforced},model:{value:(_vm.hasExpirationDate),callback:function ($$v) {_vm.hasExpirationDate=$$v},expression:\"hasExpirationDate\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.isExpiryDateEnforced\n\t\t\t\t\t\t? _vm.t('files_sharing', 'Expiration date (enforced)')\n\t\t\t\t\t\t: _vm.t('files_sharing', 'Set expiration date'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.hasExpirationDate)?_c('NcDateTimePickerNative',{attrs:{\"id\":\"share-date-picker\",\"model-value\":new Date(_vm.share.expireDate ?? _vm.dateTomorrow),\"min\":_vm.dateTomorrow,\"max\":_vm.maxExpirationDateEnforced,\"hide-label\":\"\",\"label\":_vm.t('files_sharing', 'Expiration date'),\"placeholder\":_vm.t('files_sharing', 'Expiration date'),\"type\":\"date\"},on:{\"input\":_vm.onExpirationChange}}):_vm._e(),_vm._v(\" \"),(_vm.isPublicShare)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":_vm.canChangeHideDownload},on:{\"update:modelValue\":function($event){return _vm.queueUpdate('hideDownload')}},model:{value:(_vm.share.hideDownload),callback:function ($$v) {_vm.$set(_vm.share, \"hideDownload\", $$v)},expression:\"share.hideDownload\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Hide download'))+\"\\n\\t\\t\\t\\t\")]):_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetDownload,\"data-cy-files-sharing-share-permissions-checkbox\":\"download\"},model:{value:(_vm.canDownload),callback:function ($$v) {_vm.canDownload=$$v},expression:\"canDownload\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow download and sync'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{model:{value:(_vm.writeNoteToRecipientIsChecked),callback:function ($$v) {_vm.writeNoteToRecipientIsChecked=$$v},expression:\"writeNoteToRecipientIsChecked\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Note to recipient'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.writeNoteToRecipientIsChecked)?[_c('NcTextArea',{attrs:{\"label\":_vm.t('files_sharing', 'Note to recipient'),\"placeholder\":_vm.t('files_sharing', 'Enter a note for the share recipient')},model:{value:(_vm.share.note),callback:function ($$v) {_vm.$set(_vm.share, \"note\", $$v)},expression:\"share.note\"}})]:_vm._e(),_vm._v(\" \"),(_vm.isPublicShare && _vm.isFolder)?_c('NcCheckboxRadioSwitch',{model:{value:(_vm.showInGridView),callback:function ($$v) {_vm.showInGridView=$$v},expression:\"showInGridView\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Show files in grid view'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.sortedExternalShareActions),function(action){return _c('SidebarTabExternalAction',{key:action.id,ref:\"externalShareActions\",refInFor:true,attrs:{\"action\":action,\"node\":_vm.fileInfo.node /* TODO: Fix once we have proper Node API */,\"share\":_vm.share}})}),_vm._v(\" \"),_vm._l((_vm.externalLegacyShareActions),function(action){return _c('SidebarTabExternalActionLegacy',{key:action.id,ref:\"externalLinkActions\",refInFor:true,attrs:{\"id\":action.id,\"action\":action,\"file-info\":_vm.fileInfo,\"share\":_vm.share}})}),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{model:{value:(_vm.setCustomPermissions),callback:function ($$v) {_vm.setCustomPermissions=$$v},expression:\"setCustomPermissions\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Custom permissions'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.setCustomPermissions)?_c('section',{staticClass:\"custom-permissions-group\"},[_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canRemoveReadPermission,\"data-cy-files-sharing-share-permissions-checkbox\":\"read\"},model:{value:(_vm.hasRead),callback:function ($$v) {_vm.hasRead=$$v},expression:\"hasRead\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Read'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.isFolder)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetCreate,\"data-cy-files-sharing-share-permissions-checkbox\":\"create\"},model:{value:(_vm.canCreate),callback:function ($$v) {_vm.canCreate=$$v},expression:\"canCreate\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Create'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetEdit,\"data-cy-files-sharing-share-permissions-checkbox\":\"update\"},model:{value:(_vm.canEdit),callback:function ($$v) {_vm.canEdit=$$v},expression:\"canEdit\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Edit'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.resharingIsPossible)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetReshare,\"data-cy-files-sharing-share-permissions-checkbox\":\"share\"},model:{value:(_vm.canReshare),callback:function ($$v) {_vm.canReshare=$$v},expression:\"canReshare\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Share'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetDelete,\"data-cy-files-sharing-share-permissions-checkbox\":\"delete\"},model:{value:(_vm.canDelete),callback:function ($$v) {_vm.canDelete=$$v},expression:\"canDelete\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Delete'))+\"\\n\\t\\t\\t\\t\\t\")])],1):_vm._e()],2)]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__footer\"},[_c('div',{staticClass:\"button-group\"},[_c('NcButton',{attrs:{\"data-cy-files-sharing-share-editor-action\":\"cancel\"},on:{\"click\":_vm.cancel}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__delete\"},[(!_vm.isNewShare)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Delete share'),\"disabled\":false,\"readonly\":false,\"variant\":\"tertiary\"},on:{\"click\":function($event){$event.preventDefault();return _vm.removeShare.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Delete share'))+\"\\n\\t\\t\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),_c('NcButton',{attrs:{\"variant\":\"primary\",\"data-cy-files-sharing-share-editor-action\":\"save\",\"disabled\":_vm.creating},on:{\"click\":_vm.saveShare},scopedSlots:_vm._u([(_vm.creating)?{key:\"icon\",fn:function(){return [_c('NcLoadingIcon')]},proxy:true}:null],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.shareButtonText)+\"\\n\\t\\t\\t\\t\")])],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountCircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountCircleOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccountCircleOutline.vue?vue&type=template&id=5b2fe1de\"\nimport script from \"./AccountCircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./AccountCircleOutline.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-circle-outline-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,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M7.07,18.28C7.5,17.38 10.12,16.5 12,16.5C13.88,16.5 16.5,17.38 16.93,18.28C15.57,19.36 13.86,20 12,20C10.14,20 8.43,19.36 7.07,18.28M18.36,16.83C16.93,15.09 13.46,14.5 12,14.5C10.54,14.5 7.07,15.09 5.64,16.83C4.62,15.5 4,13.82 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,13.82 19.38,15.5 18.36,16.83M12,6C10.06,6 8.5,7.56 8.5,9.5C8.5,11.44 10.06,13 12,13C13.94,13 15.5,11.44 15.5,9.5C15.5,7.56 13.94,6 12,6M12,11A1.5,1.5 0 0,1 10.5,9.5A1.5,1.5 0 0,1 12,8A1.5,1.5 0 0,1 13.5,9.5A1.5,1.5 0 0,1 12,11Z\"}},[(_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!./AccountGroup.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountGroup.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./AccountGroup.vue?vue&type=template&id=fa2b1464\"\nimport script from \"./AccountGroup.vue?vue&type=script&lang=js\"\nexport * from \"./AccountGroup.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-group-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,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z\"}},[(_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!./CircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CircleOutline.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./CircleOutline.vue?vue&type=template&id=c013567c\"\nimport script from \"./CircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./CircleOutline.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 circle-outline-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,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,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 }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Email.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Email.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Email.vue?vue&type=template&id=7dd7f6aa\"\nimport script from \"./Email.vue?vue&type=script&lang=js\"\nexport * from \"./Email.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 email-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,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z\"}},[(_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!./Eye.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Eye.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Eye.vue?vue&type=template&id=4ae2345c\"\nimport script from \"./Eye.vue?vue&type=script&lang=js\"\nexport * from \"./Eye.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 eye-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,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Refresh.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Refresh.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Refresh.vue?vue&type=template&id=2864f909\"\nimport script from \"./Refresh.vue?vue&type=script&lang=js\"\nexport * from \"./Refresh.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 refresh-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.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z\"}},[(_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!./ShareCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShareCircle.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./ShareCircle.vue?vue&type=template&id=0e958886\"\nimport script from \"./ShareCircle.vue?vue&type=script&lang=js\"\nexport * from \"./ShareCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon share-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\":\"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M14 16V13C10.39 13 7.81 14.43 6 17C6.72 13.33 8.94 9.73 14 9V6L19 11L14 16Z\"}},[(_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!./TrayArrowUp.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowUp.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./TrayArrowUp.vue?vue&type=template&id=ae55bf4e\"\nimport script from \"./TrayArrowUp.vue?vue&type=script&lang=js\"\nexport * from \"./TrayArrowUp.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-up-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 2L6.46 7.46L7.88 8.88L11 5.75V15H13V5.75L16.13 8.88L17.55 7.45L12 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/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalAction.vue?vue&type=script&lang=ts&setup=true\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalAction.vue?vue&type=script&lang=ts&setup=true\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_vm.action.element,{key:_vm.action.id,ref:\"actionElement\",tag:\"component\",domProps:{\"share\":_vm.share,\"node\":_vm.node,\"onSave\":_setup.onSave}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SidebarTabExternalAction.vue?vue&type=template&id=5ea2e6c7\"\nimport script from \"./SidebarTabExternalAction.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SidebarTabExternalAction.vue?vue&type=script&lang=ts&setup=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 null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarTabExternalActionLegacy.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!./SidebarTabExternalActionLegacy.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./SidebarTabExternalActionLegacy.vue?vue&type=template&id=50e2cb04\"\nimport script from \"./SidebarTabExternalActionLegacy.vue?vue&type=script&lang=js\"\nexport * from \"./SidebarTabExternalActionLegacy.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(_vm.data.is,_vm._g(_vm._b({tag:\"component\"},'component',_vm.data,false),_vm.action.handlers),[_vm._v(\"\\n\\t\"+_vm._s(_vm.data.text)+\"\\n\")])\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 { getClient, getDefaultPropfind, getRootPath, resultToNode } from '@nextcloud/files/dav';\nexport const client = getClient();\n/**\n * Fetches a node from the given path\n *\n * @param path - The path to fetch the node from\n */\nexport async function fetchNode(path) {\n const propfindPayload = getDefaultPropfind();\n const result = await client.stat(`${getRootPath()}${path}`, {\n details: true,\n data: propfindPayload,\n });\n return resultToNode(result.data);\n}\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport axios from '@nextcloud/axios';\nimport { showError, showSuccess } from '@nextcloud/dialogs';\nimport { t } from '@nextcloud/l10n';\nimport Config from '../services/ConfigService.ts';\nimport logger from '../services/logger.ts';\nconst config = new Config();\n// note: some chars removed on purpose to make them human friendly when read out\nconst passwordSet = 'abcdefgijkmnopqrstwxyzABCDEFGHJKLMNPQRSTWXYZ23456789';\n/**\n * Generate a valid policy password or request a valid password if password_policy is enabled\n *\n * @param verbose If enabled the the status is shown to the user via toast\n */\nexport default async function (verbose = false) {\n // password policy is enabled, let's request a pass\n if (config.passwordPolicy.api && config.passwordPolicy.api.generate) {\n try {\n const request = await axios.get(config.passwordPolicy.api.generate);\n if (request.data.ocs.data.password) {\n if (verbose) {\n showSuccess(t('files_sharing', 'Password created successfully'));\n }\n return request.data.ocs.data.password;\n }\n }\n catch (error) {\n logger.info('Error generating password from password_policy', { error });\n if (verbose) {\n showError(t('files_sharing', 'Error generating password from password policy'));\n }\n }\n }\n const array = new Uint8Array(10);\n const ratio = passwordSet.length / 255;\n getRandomValues(array);\n let password = '';\n for (let i = 0; i < array.length; i++) {\n password += passwordSet.charAt(array[i] * ratio);\n }\n return password;\n}\n/**\n * Fills the given array with cryptographically secure random values.\n * If the crypto API is not available, it falls back to less secure Math.random().\n * Crypto API is available in modern browsers on secure contexts (HTTPS).\n *\n * @param array - The array to fill with random values.\n */\nfunction getRandomValues(array) {\n if (self?.crypto?.getRandomValues) {\n self.crypto.getRandomValues(array);\n return;\n }\n let len = array.length;\n while (len--) {\n array[len] = Math.floor(Math.random() * 256);\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { emit } from '@nextcloud/event-bus'\nimport { ShareType } from '@nextcloud/sharing'\nimport debounce from 'debounce'\nimport PQueue from 'p-queue'\nimport { fetchNode } from '../../../files/src/services/WebdavClient.ts'\nimport {\n\tATOMIC_PERMISSIONS,\n\tgetBundledPermissions,\n} from '../lib/SharePermissionsToolBox.js'\nimport Share from '../models/Share.ts'\nimport Config from '../services/ConfigService.ts'\nimport logger from '../services/logger.ts'\nimport GeneratePassword from '../utils/GeneratePassword.ts'\nimport SharesRequests from './ShareRequests.js'\n\nexport default {\n\tmixins: [SharesRequests],\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => { },\n\t\t\trequired: true,\n\t\t},\n\t\tshare: {\n\t\t\ttype: Share,\n\t\t\tdefault: null,\n\t\t},\n\t\tisUnique: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tconfig: new Config(),\n\t\t\tnode: null,\n\t\t\tShareType,\n\n\t\t\t// errors helpers\n\t\t\terrors: {},\n\n\t\t\t// component status toggles\n\t\t\tloading: false,\n\t\t\tsaving: false,\n\t\t\topen: false,\n\n\t\t\t/** @type {boolean | undefined} */\n\t\t\tpasswordProtectedState: undefined,\n\n\t\t\t// concurrency management queue\n\t\t\t// we want one queue per share\n\t\t\tupdateQueue: new PQueue({ concurrency: 1 }),\n\n\t\t\t/**\n\t\t\t * ! This allow vue to make the Share class state reactive\n\t\t\t * ! do not remove it ot you'll lose all reactivity here\n\t\t\t */\n\t\t\treactiveState: this.share?.state,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tpath() {\n\t\t\treturn (this.fileInfo.path + '/' + this.fileInfo.name).replace('//', '/')\n\t\t},\n\t\t/**\n\t\t * Does the current share have a note\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\thasNote: {\n\t\t\tget() {\n\t\t\t\treturn this.share.note !== ''\n\t\t\t},\n\t\t\tset(enabled) {\n\t\t\t\tthis.share.note = enabled\n\t\t\t\t\t? null // enabled but user did not changed the content yet\n\t\t\t\t\t: '' // empty = no note = disabled\n\t\t\t},\n\t\t},\n\n\t\tdateTomorrow() {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + 1))\n\t\t},\n\n\t\t// Datepicker language\n\t\tlang() {\n\t\t\tconst weekdaysShort = window.dayNamesShort\n\t\t\t\t? window.dayNamesShort // provided by Nextcloud\n\t\t\t\t: ['Sun.', 'Mon.', 'Tue.', 'Wed.', 'Thu.', 'Fri.', 'Sat.']\n\t\t\tconst monthsShort = window.monthNamesShort\n\t\t\t\t? window.monthNamesShort // provided by Nextcloud\n\t\t\t\t: ['Jan.', 'Feb.', 'Mar.', 'Apr.', 'May.', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Oct.', 'Nov.', 'Dec.']\n\t\t\tconst firstDayOfWeek = window.firstDay ? window.firstDay : 0\n\n\t\t\treturn {\n\t\t\t\tformatLocale: {\n\t\t\t\t\tfirstDayOfWeek,\n\t\t\t\t\tmonthsShort,\n\t\t\t\t\tweekdaysMin: weekdaysShort,\n\t\t\t\t\tweekdaysShort,\n\t\t\t\t},\n\t\t\t\tmonthFormat: 'MMM',\n\t\t\t}\n\t\t},\n\t\tisNewShare() {\n\t\t\treturn !this.share.id\n\t\t},\n\t\tisFolder() {\n\t\t\treturn this.fileInfo.type === 'dir'\n\t\t},\n\t\tisPublicShare() {\n\t\t\tconst shareType = this.share.shareType ?? this.share.type\n\t\t\treturn [ShareType.Link, ShareType.Email].includes(shareType)\n\t\t},\n\t\tisRemoteShare() {\n\t\t\treturn this.share.type === ShareType.RemoteGroup || this.share.type === ShareType.Remote\n\t\t},\n\t\tisShareOwner() {\n\t\t\treturn this.share && this.share.owner === getCurrentUser().uid\n\t\t},\n\t\tisExpiryDateEnforced() {\n\t\t\tif (this.isPublicShare) {\n\t\t\t\treturn this.config.isDefaultExpireDateEnforced\n\t\t\t}\n\t\t\tif (this.isRemoteShare) {\n\t\t\t\treturn this.config.isDefaultRemoteExpireDateEnforced\n\t\t\t}\n\t\t\treturn this.config.isDefaultInternalExpireDateEnforced\n\t\t},\n\t\thasCustomPermissions() {\n\t\t\tconst basePermissions = getBundledPermissions(true)\n\t\t\tconst bundledPermissions = [\n\t\t\t\tbasePermissions.ALL,\n\t\t\t\tbasePermissions.ALL_FILE,\n\t\t\t\tbasePermissions.READ_ONLY,\n\t\t\t\tbasePermissions.FILE_DROP,\n\t\t\t]\n\t\t\tconst permissionsWithoutShare = this.share.permissions & ~ATOMIC_PERMISSIONS.SHARE\n\t\t\treturn !bundledPermissions.includes(permissionsWithoutShare)\n\t\t},\n\t\tmaxExpirationDateEnforced() {\n\t\t\tif (this.isExpiryDateEnforced) {\n\t\t\t\tif (this.isPublicShare) {\n\t\t\t\t\treturn this.config.defaultExpirationDate\n\t\t\t\t}\n\t\t\t\tif (this.isRemoteShare) {\n\t\t\t\t\treturn this.config.defaultRemoteExpirationDateString\n\t\t\t\t}\n\t\t\t\t// If it get's here then it must be an internal share\n\t\t\t\treturn this.config.defaultInternalExpirationDate\n\t\t\t}\n\t\t\treturn null\n\t\t},\n\t\t/**\n\t\t * Is the current share password protected ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtected: {\n\t\t\tget() {\n\t\t\t\tif (this.config.enforcePasswordForPublicLink) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\tif (this.passwordProtectedState !== undefined) {\n\t\t\t\t\treturn this.passwordProtectedState\n\t\t\t\t}\n\t\t\t\treturn typeof this.share.newPassword === 'string'\n\t\t\t\t\t|| typeof this.share.password === 'string'\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\tif (enabled) {\n\t\t\t\t\tthis.passwordProtectedState = true\n\t\t\t\t\tconst generatedPassword = await GeneratePassword(true)\n\t\t\t\t\tif (!this.share.newPassword) {\n\t\t\t\t\t\tthis.$set(this.share, 'newPassword', generatedPassword)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.passwordProtectedState = false\n\t\t\t\t\tthis.$set(this.share, 'newPassword', '')\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Fetch WebDAV node\n\t\t *\n\t\t * @return {Node}\n\t\t */\n\t\tasync getNode() {\n\t\t\tconst node = { path: this.path }\n\t\t\ttry {\n\t\t\t\tthis.node = await fetchNode(node.path)\n\t\t\t\tlogger.info('Fetched node:', { node: this.node })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error:', error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if a share is valid before\n\t\t * firing the request\n\t\t *\n\t\t * @param {Share} share the share to check\n\t\t * @return {boolean}\n\t\t */\n\t\tcheckShare(share) {\n\t\t\tif (share.password) {\n\t\t\t\tif (typeof share.password !== 'string' || share.password.trim() === '') {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (share.newPassword) {\n\t\t\t\tif (typeof share.newPassword !== 'string') {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (share.expirationDate) {\n\t\t\t\tconst date = share.expirationDate\n\t\t\t\tif (!date.isValid()) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true\n\t\t},\n\n\t\t/**\n\t\t * @param {Date} date the date to format\n\t\t * @return {string} date a date with YYYY-MM-DD format\n\t\t */\n\t\tformatDateToString(date) {\n\t\t\t// Force utc time. Drop time information to be timezone-less\n\t\t\tconst utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()))\n\t\t\t// Format to YYYY-MM-DD\n\t\t\treturn utcDate.toISOString().split('T')[0]\n\t\t},\n\n\t\t/**\n\t\t * Save given value to expireDate and trigger queueUpdate\n\t\t *\n\t\t * @param {Date} date\n\t\t */\n\t\tonExpirationChange(date) {\n\t\t\tif (!date) {\n\t\t\t\tthis.share.expireDate = null\n\t\t\t\tthis.$set(this.share, 'expireDate', null)\n\t\t\t\treturn\n\t\t\t}\n\t\t\tconst parsedDate = (date instanceof Date) ? date : new Date(date)\n\t\t\tthis.share.expireDate = this.formatDateToString(parsedDate)\n\t\t},\n\n\t\t/**\n\t\t * Note changed, let's save it to a different key\n\t\t *\n\t\t * @param {string} note the share note\n\t\t */\n\t\tonNoteChange(note) {\n\t\t\tthis.$set(this.share, 'newNote', note.trim())\n\t\t},\n\n\t\t/**\n\t\t * When the note change, we trim, save and dispatch\n\t\t *\n\t\t */\n\t\tonNoteSubmit() {\n\t\t\tif (this.share.newNote) {\n\t\t\t\tthis.share.note = this.share.newNote\n\t\t\t\tthis.$delete(this.share, 'newNote')\n\t\t\t\tthis.queueUpdate('note')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Delete share button handler\n\t\t */\n\t\tasync onDelete() {\n\t\t\ttry {\n\t\t\t\tthis.loading = true\n\t\t\t\tthis.open = false\n\t\t\t\tawait this.deleteShare(this.share.id)\n\t\t\t\tlogger.debug('Share deleted', { shareId: this.share.id })\n\t\t\t\tconst path = this.share.path.replace(/^\\//, '')\n\t\t\t\tconst message = this.share.itemType === 'file'\n\t\t\t\t\t? t('files_sharing', 'File \"{path}\" has been unshared', { path })\n\t\t\t\t\t: t('files_sharing', 'Folder \"{path}\" has been unshared', { path })\n\t\t\t\tshowSuccess(message)\n\t\t\t\tthis.$emit('remove:share', this.share)\n\t\t\t\tawait this.getNode()\n\t\t\t\temit('files:node:updated', this.node)\n\t\t\t} catch {\n\t\t\t\t// re-open menu if error\n\t\t\t\tthis.open = true\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Send an update of the share to the queue\n\t\t *\n\t\t * @param {Array} propertyNames the properties to sync\n\t\t */\n\t\tqueueUpdate(...propertyNames) {\n\t\t\tif (propertyNames.length === 0) {\n\t\t\t\t// Nothing to update\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.share.id) {\n\t\t\t\tconst properties = {}\n\t\t\t\t// force value to string because that is what our\n\t\t\t\t// share api controller accepts\n\t\t\t\tfor (const name of propertyNames) {\n\t\t\t\t\tif (name === 'password') {\n\t\t\t\t\t\tif (this.share.newPassword !== undefined) {\n\t\t\t\t\t\t\tproperties[name] = this.share.newPassword\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this.share[name] === null || this.share[name] === undefined) {\n\t\t\t\t\t\tproperties[name] = ''\n\t\t\t\t\t} else if ((typeof this.share[name]) === 'object') {\n\t\t\t\t\t\tproperties[name] = JSON.stringify(this.share[name])\n\t\t\t\t\t} else {\n\t\t\t\t\t\tproperties[name] = this.share[name].toString()\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn this.updateQueue.add(async () => {\n\t\t\t\t\tthis.saving = true\n\t\t\t\t\tthis.errors = {}\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst updatedShare = await this.updateShare(this.share.id, properties)\n\n\t\t\t\t\t\tif (propertyNames.includes('password')) {\n\t\t\t\t\t\t\t// reset password state after sync\n\t\t\t\t\t\t\tthis.share.password = this.share.newPassword || undefined\n\t\t\t\t\t\t\tthis.$delete(this.share, 'newPassword')\n\n\t\t\t\t\t\t\t// updates password expiration time after sync\n\t\t\t\t\t\t\tthis.share.passwordExpirationTime = updatedShare.password_expiration_time\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// clear any previous errors\n\t\t\t\t\t\tfor (const property of propertyNames) {\n\t\t\t\t\t\t\tthis.$delete(this.errors, property)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshowSuccess(this.updateSuccessMessage(propertyNames))\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tlogger.error('Could not update share', { error, share: this.share, propertyNames })\n\n\t\t\t\t\t\tconst { message } = error\n\t\t\t\t\t\tif (message && message !== '') {\n\t\t\t\t\t\t\tfor (const property of propertyNames) {\n\t\t\t\t\t\t\t\tthis.onSyncError(property, message)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tshowError(message)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// We do not have information what happened, but we should still inform the user\n\t\t\t\t\t\t\tshowError(t('files_sharing', 'Could not update share'))\n\t\t\t\t\t\t}\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tthis.saving = false\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\n\t\t\t// This share does not exists on the server yet\n\t\t\tlogger.debug('Updated local share', { share: this.share })\n\t\t},\n\n\t\t/**\n\t\t * @param {string[]} names Properties changed\n\t\t */\n\t\tupdateSuccessMessage(names) {\n\t\t\tif (names.length !== 1) {\n\t\t\t\treturn t('files_sharing', 'Share saved')\n\t\t\t}\n\n\t\t\tswitch (names[0]) {\n\t\t\t\tcase 'expireDate':\n\t\t\t\t\treturn t('files_sharing', 'Share expiry date saved')\n\t\t\t\tcase 'hideDownload':\n\t\t\t\t\treturn t('files_sharing', 'Share hide-download state saved')\n\t\t\t\tcase 'label':\n\t\t\t\t\treturn t('files_sharing', 'Share label saved')\n\t\t\t\tcase 'note':\n\t\t\t\t\treturn t('files_sharing', 'Share note for recipient saved')\n\t\t\t\tcase 'password':\n\t\t\t\t\treturn t('files_sharing', 'Share password saved')\n\t\t\t\tcase 'permissions':\n\t\t\t\t\treturn t('files_sharing', 'Share permissions saved')\n\t\t\t\tdefault:\n\t\t\t\t\treturn t('files_sharing', 'Share saved')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Manage sync errors\n\t\t *\n\t\t * @param {string} property the errored property, e.g. 'password'\n\t\t * @param {string} message the error message\n\t\t */\n\t\tonSyncError(property, message) {\n\t\t\tif (property === 'password' && this.share.newPassword !== undefined) {\n\t\t\t\tif (this.share.newPassword === this.share.password) {\n\t\t\t\t\tthis.share.password = ''\n\t\t\t\t}\n\t\t\t\tthis.$delete(this.share, 'newPassword')\n\t\t\t}\n\n\t\t\t// re-open menu if closed\n\t\t\tthis.open = true\n\t\t\tswitch (property) {\n\t\t\t\tcase 'password':\n\t\t\t\tcase 'pending':\n\t\t\t\tcase 'expireDate':\n\t\t\t\tcase 'label':\n\t\t\t\tcase 'note': {\n\t\t\t\t// show error\n\t\t\t\t\tthis.$set(this.errors, property, message)\n\n\t\t\t\t\tlet propertyEl = this.$refs[property]\n\t\t\t\t\tif (propertyEl) {\n\t\t\t\t\t\tif (propertyEl.$el) {\n\t\t\t\t\t\t\tpropertyEl = propertyEl.$el\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// focus if there is a focusable action element\n\t\t\t\t\t\tconst focusable = propertyEl.querySelector('.focusable')\n\t\t\t\t\t\tif (focusable) {\n\t\t\t\t\t\t\tfocusable.focus()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t\tcase 'sendPasswordByTalk': {\n\t\t\t\t// show error\n\t\t\t\t\tthis.$set(this.errors, property, message)\n\n\t\t\t\t\t// Restore previous state\n\t\t\t\t\tthis.share.sendPasswordByTalk = !this.share.sendPasswordByTalk\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Debounce queueUpdate to avoid requests spamming\n\t\t * more importantly for text data\n\t\t *\n\t\t * @param {string} property the property to sync\n\t\t */\n\t\tdebounceQueueUpdate: debounce(function(property) {\n\t\t\tthis.queueUpdate(property)\n\t\t}, 500),\n\t},\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.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!./SharingDetailsTab.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\nimport isSvg from 'is-svg';\n/**\n * Register a new sidebar action\n *\n * @param action - The action to register\n */\nexport function registerSidebarAction(action) {\n if (!action.id) {\n throw new Error('Sidebar actions must have an id');\n }\n if (!action.element || !action.element.startsWith('oca_') || !window.customElements.get(action.element)) {\n throw new Error('Sidebar actions must provide a registered custom web component identifier');\n }\n if (typeof action.order !== 'number') {\n throw new Error('Sidebar actions must have the order property');\n }\n if (typeof action.enabled !== 'function') {\n throw new Error('Sidebar actions must implement the \"enabled\" method');\n }\n window._nc_files_sharing_sidebar_actions ??= new Map();\n if (window._nc_files_sharing_sidebar_actions.has(action.id)) {\n throw new Error(`Sidebar action with id \"${action.id}\" is already registered`);\n }\n window._nc_files_sharing_sidebar_actions.set(action.id, action);\n}\n/**\n * Register a new sidebar action\n *\n * @param action - The action to register\n */\nexport function registerSidebarInlineAction(action) {\n if (!action.id) {\n throw new Error('Sidebar actions must have an id');\n }\n if (typeof action.order !== 'number') {\n throw new Error('Sidebar actions must have the \"order\" property');\n }\n if (typeof action.iconSvg !== 'string' || !isSvg(action.iconSvg)) {\n throw new Error('Sidebar actions must have the \"iconSvg\" property');\n }\n if (typeof action.label !== 'function') {\n throw new Error('Sidebar actions must implement the \"label\" method');\n }\n if (typeof action.exec !== 'function') {\n throw new Error('Sidebar actions must implement the \"exec\" method');\n }\n if (typeof action.enabled !== 'function') {\n throw new Error('Sidebar actions must implement the \"enabled\" method');\n }\n window._nc_files_sharing_sidebar_inline_actions ??= new Map();\n if (window._nc_files_sharing_sidebar_inline_actions.has(action.id)) {\n throw new Error(`Sidebar action with id \"${action.id}\" is already registered`);\n }\n window._nc_files_sharing_sidebar_inline_actions.set(action.id, action);\n}\n/**\n * Get all registered sidebar actions\n */\nexport function getSidebarActions() {\n return [...(window._nc_files_sharing_sidebar_actions?.values() ?? [])];\n}\n/**\n * Get all registered sidebar inline actions\n */\nexport function getSidebarInlineActions() {\n return [...(window._nc_files_sharing_sidebar_inline_actions?.values() ?? [])];\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport axios from '@nextcloud/axios';\nimport { generateOcsUrl } from '@nextcloud/router';\n/**\n *\n */\nexport async function generateToken() {\n const { data } = await axios.get(generateOcsUrl('/apps/files_sharing/api/v1/token'));\n return data.ocs.data.token;\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=style&index=0&id=289355eb&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingDetailsTab.vue?vue&type=style&index=0&id=289355eb&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingDetailsTab.vue?vue&type=template&id=289355eb&scoped=true\"\nimport script from \"./SharingDetailsTab.vue?vue&type=script&lang=js\"\nexport * from \"./SharingDetailsTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingDetailsTab.vue?vue&type=style&index=0&id=289355eb&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 \"289355eb\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{attrs:{\"id\":\"sharing-inherited-shares\"}},[_c('SharingEntrySimple',{staticClass:\"sharing-entry__inherited\",attrs:{\"title\":_vm.mainTitle,\"subtitle\":_vm.subTitle,\"aria-expanded\":_vm.showInheritedShares},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('div',{staticClass:\"avatar-shared icon-more-white\"})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"icon\":_vm.showInheritedSharesIcon,\"aria-label\":_vm.toggleTooltip,\"title\":_vm.toggleTooltip},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.toggleInheritedShares.apply(null, arguments)}}})],1),_vm._v(\" \"),_vm._l((_vm.shares),function(share){return _c('SharingEntryInherited',{key:share.id,attrs:{\"file-info\":_vm.fileInfo,\"share\":share},on:{\"remove:share\":_vm.removeShare}})})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.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!./SharingEntryInherited.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=style&index=0&id=731a9650&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingEntryInherited.vue?vue&type=style&index=0&id=731a9650&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryInherited.vue?vue&type=template&id=731a9650&scoped=true\"\nimport script from \"./SharingEntryInherited.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryInherited.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryInherited.vue?vue&type=style&index=0&id=731a9650&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 \"731a9650\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('SharingEntrySimple',{key:_vm.share.id,staticClass:\"sharing-entry__inherited\",attrs:{\"title\":_vm.share.shareWithDisplayName},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName}})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionText',{attrs:{\"icon\":\"icon-user\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Added by {initiator}', { initiator: _vm.share.ownerDisplayName }))+\"\\n\\t\")]),_vm._v(\" \"),(_vm.share.viaPath && _vm.share.viaFileid)?_c('NcActionLink',{attrs:{\"icon\":\"icon-folder\",\"href\":_vm.viaFileTargetUrl}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Via “{folder}”', { folder: _vm.viaFolderName }))+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share.canDelete)?_c('NcActionButton',{attrs:{\"icon\":\"icon-close\"},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete.apply(null, arguments)}}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Unshare'))+\"\\n\\t\")]):_vm._e()],1)\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!./SharingInherited.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!./SharingInherited.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=style&index=0&id=cedf3238&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingInherited.vue?vue&type=style&index=0&id=cedf3238&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingInherited.vue?vue&type=template&id=cedf3238&scoped=true\"\nimport script from \"./SharingInherited.vue?vue&type=script&lang=js\"\nexport * from \"./SharingInherited.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingInherited.vue?vue&type=style&index=0&id=cedf3238&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 \"cedf3238\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.canLinkShare)?_c('ul',{staticClass:\"sharing-link-list\",attrs:{\"aria-label\":_vm.t('files_sharing', 'Link shares')}},[(_vm.hasShares)?_vm._l((_vm.shares),function(share,index){return _c('SharingEntryLink',{key:share.id,attrs:{\"index\":_vm.shares.length > 1 ? index + 1 : null,\"can-reshare\":_vm.canReshare,\"share\":_vm.shares[index],\"file-info\":_vm.fileInfo},on:{\"update:share\":[function($event){return _vm.$set(_vm.shares, index, $event)},function($event){return _vm.awaitForShare(...arguments)}],\"add:share\":function($event){return _vm.addShare(...arguments)},\"remove:share\":_vm.removeShare,\"open-sharing-details\":function($event){return _vm.openSharingDetails(share)}}})}):_vm._e(),_vm._v(\" \"),(!_vm.hasLinkShares && _vm.canReshare)?_c('SharingEntryLink',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo},on:{\"add:share\":_vm.addShare}}):_vm._e()],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlankOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlankOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CalendarBlankOutline.vue?vue&type=template&id=784b59e6\"\nimport script from \"./CalendarBlankOutline.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarBlankOutline.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 calendar-blank-outline-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 3H18V1H16V3H8V1H6V3H5C3.89 3 3 3.9 3 5V19C3 20.11 3.9 21 5 21H19C20.11 21 21 20.11 21 19V5C21 3.9 20.11 3 19 3M19 19H5V9H19V19M19 7H5V5H19V7Z\"}},[(_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!./CheckBold.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CheckBold.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./CheckBold.vue?vue&type=template&id=5603f41f\"\nimport script from \"./CheckBold.vue?vue&type=script&lang=js\"\nexport * from \"./CheckBold.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 check-bold-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\":\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\"}},[(_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!./Exclamation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Exclamation.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Exclamation.vue?vue&type=template&id=03239926\"\nimport script from \"./Exclamation.vue?vue&type=script&lang=js\"\nexport * from \"./Exclamation.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 exclamation-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\":\"M 11,4L 13,4L 13,15L 11,15L 11,4 Z M 13,18L 13,20L 11,20L 11,18L 13,18 Z\"}},[(_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!./LockOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./LockOutline.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./LockOutline.vue?vue&type=template&id=54353a96\"\nimport script from \"./LockOutline.vue?vue&type=script&lang=js\"\nexport * from \"./LockOutline.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 lock-outline-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,17C10.89,17 10,16.1 10,15C10,13.89 10.89,13 12,13A2,2 0 0,1 14,15A2,2 0 0,1 12,17M18,20V10H6V20H18M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10C4,8.89 4.89,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z\"}},[(_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!./Plus.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Plus.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Plus.vue?vue&type=template&id=055261ec\"\nimport script from \"./Plus.vue?vue&type=script&lang=js\"\nexport * from \"./Plus.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 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\":\"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\"}},[(_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!./Qrcode.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Qrcode.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Qrcode.vue?vue&type=template&id=aba87788\"\nimport script from \"./Qrcode.vue?vue&type=script&lang=js\"\nexport * from \"./Qrcode.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 qrcode-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,11H5V13H3V11M11,5H13V9H11V5M9,11H13V15H11V13H9V11M15,11H17V13H19V11H21V13H19V15H21V19H19V21H17V19H13V21H11V17H15V15H17V13H15V11M19,19V15H17V19H19M15,3H21V9H15V3M17,5V7H19V5H17M3,3H9V9H3V3M5,5V7H7V5H5M3,15H9V21H3V15M5,17V19H7V17H5Z\"}},[(_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!./Tune.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tune.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Tune.vue?vue&type=template&id=18d04e6a\"\nimport script from \"./Tune.vue?vue&type=script&lang=js\"\nexport * from \"./Tune.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 tune-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,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z\"}},[(_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;return _c('div',{staticClass:\"share-expiry-time\"},[_c('NcPopover',{attrs:{\"popup-role\":\"dialog\"},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [(_vm.expiryTime)?_c('NcButton',{staticClass:\"hint-icon\",attrs:{\"variant\":\"tertiary\",\"aria-label\":_vm.t('files_sharing', 'Share expiration: {date}', { date: new Date(_vm.expiryTime).toLocaleString() })},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ClockIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,3754271979)}):_vm._e()]},proxy:true}])},[_vm._v(\" \"),_c('h3',{staticClass:\"hint-heading\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Share Expiration'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.expiryTime)?_c('p',{staticClass:\"hint-body\"},[_c('NcDateTime',{attrs:{\"timestamp\":_vm.expiryTime,\"format\":_vm.timeFormat,\"relative-time\":false}}),_vm._v(\" (\"),_c('NcDateTime',{attrs:{\"timestamp\":_vm.expiryTime}}),_vm._v(\")\\n\\t\\t\")],1):_vm._e()])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClockOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClockOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClockOutline.vue?vue&type=template&id=1a84e403\"\nimport script from \"./ClockOutline.vue?vue&type=script&lang=js\"\nexport * from \"./ClockOutline.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 clock-outline-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,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22C6.47,22 2,17.5 2,12A10,10 0 0,1 12,2M12.5,7V12.25L17,14.92L16.25,16.15L11,13V7H12.5Z\"}},[(_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!./ShareExpiryTime.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!./ShareExpiryTime.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShareExpiryTime.vue?vue&type=style&index=0&id=c9199db0&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./ShareExpiryTime.vue?vue&type=style&index=0&id=c9199db0&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ShareExpiryTime.vue?vue&type=template&id=c9199db0&scoped=true\"\nimport script from \"./ShareExpiryTime.vue?vue&type=script&lang=js\"\nexport * from \"./ShareExpiryTime.vue?vue&type=script&lang=js\"\nimport style0 from \"./ShareExpiryTime.vue?vue&type=style&index=0&id=c9199db0&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 \"c9199db0\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./EyeOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./EyeOutline.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./EyeOutline.vue?vue&type=template&id=e26de6f6\"\nimport script from \"./EyeOutline.vue?vue&type=script&lang=js\"\nexport * from \"./EyeOutline.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 eye-outline-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,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9M12,4.5C17,4.5 21.27,7.61 23,12C21.27,16.39 17,19.5 12,19.5C7,19.5 2.73,16.39 1,12C2.73,7.61 7,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C15.76,17.5 19.17,15.36 20.82,12C19.17,8.64 15.76,6.5 12,6.5C8.24,6.5 4.83,8.64 3.18,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!./TriangleSmallDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TriangleSmallDown.vue?vue&type=script&lang=js\"","\n\n","\n\n\n\n\n\n","import { render, staticRenderFns } from \"./TriangleSmallDown.vue?vue&type=template&id=1eed3dd9\"\nimport script from \"./TriangleSmallDown.vue?vue&type=script&lang=js\"\nexport * from \"./TriangleSmallDown.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 triangle-small-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\":\"M8 9H16L12 16\"}},[(_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!./SharingEntryQuickShareSelect.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!./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=b5eca1ec&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=b5eca1ec&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryQuickShareSelect.vue?vue&type=template&id=b5eca1ec&scoped=true\"\nimport script from \"./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=b5eca1ec&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 \"b5eca1ec\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcActions',{ref:\"quickShareActions\",staticClass:\"share-select\",attrs:{\"menu-name\":_vm.selectedOption,\"aria-label\":_vm.ariaLabel,\"variant\":\"tertiary-no-background\",\"disabled\":!_vm.share.canEdit,\"force-name\":\"\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DropdownIcon',{attrs:{\"size\":15}})]},proxy:true}])},[_vm._v(\" \"),_vm._l((_vm.options),function(option){return _c('NcActionButton',{key:option.label,attrs:{\"type\":\"radio\",\"model-value\":option.label === _vm.selectedOption,\"close-after-click\":\"\"},on:{\"click\":function($event){return _vm.selectOption(option.label)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(option.icon,{tag:\"component\"})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\"+_vm._s(option.label)+\"\\n\\t\")])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.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!./SharingEntryLink.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=style&index=0&id=4ca4172c&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingEntryLink.vue?vue&type=style&index=0&id=4ca4172c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryLink.vue?vue&type=template&id=4ca4172c&scoped=true\"\nimport script from \"./SharingEntryLink.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryLink.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryLink.vue?vue&type=style&index=0&id=4ca4172c&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 \"4ca4172c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry sharing-entry__link\",class:{ 'sharing-entry--share': _vm.share }},[_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":true,\"icon-class\":_vm.isEmailShareType ? 'avatar-link-share icon-mail-white' : 'avatar-link-share icon-public-white'}}),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__summary\"},[_c('div',{staticClass:\"sharing-entry__desc\"},[_c('span',{staticClass:\"sharing-entry__title\",attrs:{\"title\":_vm.title}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.title)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),(_vm.subtitle)?_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.subtitle)+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share && _vm.share.permissions !== undefined)?_c('SharingEntryQuickShareSelect',{attrs:{\"share\":_vm.share,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":function($event){return _vm.openShareDetailsForCustomSettings(_vm.share)}}}):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__actions\"},[(_vm.share && _vm.share.expireDate)?_c('ShareExpiryTime',{attrs:{\"share\":_vm.share}}):_vm._e(),_vm._v(\" \"),_c('div',[(_vm.share && (!_vm.isEmailShareType || _vm.isFileRequest) && _vm.share.token)?_c('NcActions',{ref:\"copyButton\",staticClass:\"sharing-entry__copy\"},[_c('NcActionButton',{attrs:{\"aria-label\":_vm.copyLinkLabel,\"title\":_vm.copySuccess ? _vm.t('files_sharing', 'Successfully copied public link') : undefined,\"href\":_vm.shareLink},on:{\"click\":function($event){$event.preventDefault();return _vm.copyLink.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{staticClass:\"sharing-entry__copy-icon\",class:{ 'sharing-entry__copy-icon--success': _vm.copySuccess },attrs:{\"path\":_vm.copySuccess ? _vm.mdiCheck : _vm.mdiContentCopy}})]},proxy:true}],null,false,1728815133)})],1):_vm._e()],1)],1)]),_vm._v(\" \"),(!_vm.pending && _vm.pendingDataIsMissing)?_c('NcActions',{staticClass:\"sharing-entry__actions\",attrs:{\"aria-label\":_vm.actionsTooltip,\"menu-align\":\"right\",\"open\":_vm.open},on:{\"update:open\":function($event){_vm.open=$event},\"close\":_vm.onCancel}},[(_vm.errors.pending)?_c('NcActionText',{staticClass:\"error\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ErrorIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1966124155)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.errors.pending)+\"\\n\\t\\t\")]):_c('NcActionText',{attrs:{\"icon\":\"icon-info\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Please enter the following required information before creating the share'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.pendingPassword)?_c('NcActionCheckbox',{staticClass:\"share-link-password-checkbox\",attrs:{\"disabled\":_vm.config.enforcePasswordForPublicLink || _vm.saving},on:{\"uncheck\":_vm.onPasswordDisable},model:{value:(_vm.isPasswordProtected),callback:function ($$v) {_vm.isPasswordProtected=$$v},expression:\"isPasswordProtected\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.config.enforcePasswordForPublicLink ? _vm.t('files_sharing', 'Password protection (enforced)') : _vm.t('files_sharing', 'Password protection'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.pendingEnforcedPassword || _vm.isPasswordProtected)?_c('NcActionInput',{staticClass:\"share-link-password\",attrs:{\"label\":_vm.t('files_sharing', 'Enter a password'),\"disabled\":_vm.saving,\"required\":_vm.config.enableLinkPasswordByDefault || _vm.config.enforcePasswordForPublicLink,\"minlength\":_vm.isPasswordPolicyEnabled && _vm.config.passwordPolicy.minLength,\"autocomplete\":\"new-password\"},on:{\"submit\":function($event){return _vm.onNewLinkShare(true)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('LockIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2056568168),model:{value:(_vm.share.newPassword),callback:function ($$v) {_vm.$set(_vm.share, \"newPassword\", $$v)},expression:\"share.newPassword\"}}):_vm._e(),_vm._v(\" \"),(_vm.pendingDefaultExpirationDate)?_c('NcActionCheckbox',{staticClass:\"share-link-expiration-date-checkbox\",attrs:{\"disabled\":_vm.pendingEnforcedExpirationDate || _vm.saving},on:{\"update:model-value\":_vm.onExpirationDateToggleUpdate},model:{value:(_vm.defaultExpirationDateEnabled),callback:function ($$v) {_vm.defaultExpirationDateEnabled=$$v},expression:\"defaultExpirationDateEnabled\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.config.isDefaultExpireDateEnforced ? _vm.t('files_sharing', 'Enable link expiration (enforced)') : _vm.t('files_sharing', 'Enable link expiration'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),((_vm.pendingDefaultExpirationDate || _vm.pendingEnforcedExpirationDate) && _vm.defaultExpirationDateEnabled)?_c('NcActionInput',{staticClass:\"share-link-expire-date\",attrs:{\"data-cy-files-sharing-expiration-date-input\":\"\",\"label\":_vm.pendingEnforcedExpirationDate ? _vm.t('files_sharing', 'Enter expiration date (enforced)') : _vm.t('files_sharing', 'Enter expiration date'),\"disabled\":_vm.saving,\"is-native-picker\":true,\"hide-label\":true,\"model-value\":new Date(_vm.share.expireDate),\"type\":\"date\",\"min\":_vm.dateTomorrow,\"max\":_vm.maxExpirationDateEnforced},on:{\"update:model-value\":_vm.onExpirationChange,\"change\":_vm.expirationDateChanged},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconCalendarBlank',{attrs:{\"size\":20}})]},proxy:true}],null,false,3418578971)}):_vm._e(),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"disabled\":_vm.pendingEnforcedPassword && !_vm.share.newPassword},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare(true)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CheckIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2630571749)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Create share'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onCancel.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\")])],1):(!_vm.loading)?_c('NcActions',{staticClass:\"sharing-entry__actions\",attrs:{\"aria-label\":_vm.actionsTooltip,\"menu-align\":\"right\",\"open\":_vm.open},on:{\"update:open\":function($event){_vm.open=$event},\"close\":_vm.onMenuClose}},[(_vm.share)?[(_vm.share.canEdit && _vm.canReshare)?[_c('NcActionButton',{attrs:{\"disabled\":_vm.saving,\"close-after-click\":true},on:{\"click\":function($event){$event.preventDefault();return _vm.openSharingDetails.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Tune',{attrs:{\"size\":20}})]},proxy:true}],null,false,1300586850)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Customize link'))+\"\\n\\t\\t\\t\\t\")])]:_vm._e(),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){$event.preventDefault();_vm.showQRCode = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconQr',{attrs:{\"size\":20}})]},proxy:true}],null,false,1082198240)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Generate QR code'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.sortedExternalShareActions),function(action){return _c('NcActionButton',{key:action.id,on:{\"click\":function($event){return action.exec(_vm.share, _vm.fileInfo.node)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvg}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(action.label(_vm.share, _vm.fileInfo.node))+\"\\n\\t\\t\\t\")])}),_vm._v(\" \"),_vm._l((_vm.externalLegacyShareActions),function(action){return _c('SidebarTabExternalActionLegacy',{key:action.id,attrs:{\"id\":action.id,\"action\":action,\"file-info\":_vm.fileInfo,\"share\":_vm.share}})}),_vm._v(\" \"),(!_vm.isEmailShareType && _vm.canReshare)?_c('NcActionButton',{staticClass:\"new-share-link\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare.apply(null, arguments)}},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\"+_vm._s(_vm.t('files_sharing', 'Add another link'))+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share.canDelete)?_c('NcActionButton',{attrs:{\"disabled\":_vm.saving},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Unshare'))+\"\\n\\t\\t\\t\")]):_vm._e()]:(_vm.canReshare)?_c('NcActionButton',{staticClass:\"new-share-link\",attrs:{\"title\":_vm.t('files_sharing', 'Create a new share link'),\"aria-label\":_vm.t('files_sharing', 'Create a new share link'),\"icon\":_vm.loading ? 'icon-loading-small' : 'icon-add'},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare.apply(null, arguments)}}}):_vm._e()],2):_c('NcLoadingIcon',{staticClass:\"sharing-entry__loading\"}),_vm._v(\" \"),(_vm.showQRCode)?_c('NcDialog',{attrs:{\"size\":\"normal\",\"open\":_vm.showQRCode,\"name\":_vm.title,\"close-on-click-outside\":true},on:{\"update:open\":function($event){_vm.showQRCode=$event},\"close\":function($event){_vm.showQRCode = false}}},[_c('div',{staticClass:\"qr-code-dialog\"},[_c('VueQrcode',{staticClass:\"qr-code-dialog__img\",attrs:{\"tag\":\"img\",\"value\":_vm.shareLink}})],1)]):_vm._e()],1)\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!./SharingLinkList.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!./SharingLinkList.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./SharingLinkList.vue?vue&type=template&id=708b3104\"\nimport script from \"./SharingLinkList.vue?vue&type=script&lang=js\"\nexport * from \"./SharingLinkList.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","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.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!./SharingEntry.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=style&index=0&id=469e5e80&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingEntry.vue?vue&type=style&index=0&id=469e5e80&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntry.vue?vue&type=template&id=469e5e80&scoped=true\"\nimport script from \"./SharingEntry.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntry.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntry.vue?vue&type=style&index=0&id=469e5e80&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 \"469e5e80\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingList.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!./SharingList.vue?vue&type=script&lang=js\"","\n\n\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry\"},[_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":_vm.share.type !== _vm.ShareType.User,\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName,\"menu-position\":\"left\",\"url\":_vm.share.shareWithAvatar}}),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__summary\"},[_c(_vm.share.shareWithLink ? 'a' : 'div',{tag:\"component\",staticClass:\"sharing-entry__summary__desc\",attrs:{\"title\":_vm.tooltip,\"aria-label\":_vm.tooltip,\"href\":_vm.share.shareWithLink}},[_c('span',[_vm._v(_vm._s(_vm.title)+\"\\n\\t\\t\\t\\t\"),(!_vm.isUnique)?_c('span',{staticClass:\"sharing-entry__summary__desc-unique\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t(\"+_vm._s(_vm.share.shareWithDisplayNameUnique)+\")\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.hasStatus && _vm.share.status.message)?_c('small',[_vm._v(\"(\"+_vm._s(_vm.share.status.message)+\")\")]):_vm._e()])]),_vm._v(\" \"),_c('SharingEntryQuickShareSelect',{attrs:{\"share\":_vm.share,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":function($event){return _vm.openShareDetailsForCustomSettings(_vm.share)}}})],1),_vm._v(\" \"),(_vm.share && _vm.share.expireDate)?_c('ShareExpiryTime',{attrs:{\"share\":_vm.share}}):_vm._e(),_vm._v(\" \"),(_vm.share.canEdit)?_c('NcButton',{staticClass:\"sharing-entry__action\",attrs:{\"data-cy-files-sharing-share-actions\":\"\",\"aria-label\":_vm.t('files_sharing', 'Open Sharing Details'),\"variant\":\"tertiary\"},on:{\"click\":function($event){return _vm.openSharingDetails(_vm.share)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1700783217)}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SharingList.vue?vue&type=template&id=7e1141c6\"\nimport script from \"./SharingList.vue?vue&type=script&lang=js\"\nexport * from \"./SharingList.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('ul',{staticClass:\"sharing-sharee-list\",attrs:{\"aria-label\":_vm.t('files_sharing', 'Shares')}},_vm._l((_vm.shares),function(share){return _c('SharingEntry',{key:share.id,attrs:{\"file-info\":_vm.fileInfo,\"share\":share,\"is-unique\":_vm.isUnique(share)},on:{\"open-sharing-details\":function($event){return _vm.openSharingDetails(share)}}})}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: GPL-3.0-or-later\n */\n/**\n * Register a new sidebar section inside the files sharing sidebar tab.\n *\n * @param section - The section to register\n */\nexport function registerSidebarSection(section) {\n if (!section.id) {\n throw new Error('Sidebar sections must have an id');\n }\n if (!section.element || !section.element.startsWith('oca_') || !window.customElements.get(section.element)) {\n throw new Error('Sidebar sections must provide a registered custom web component identifier');\n }\n if (typeof section.order !== 'number') {\n throw new Error('Sidebar sections must have the order property');\n }\n if (typeof section.enabled !== 'function') {\n throw new Error('Sidebar sections must implement the enabled method');\n }\n window._nc_files_sharing_sidebar_sections ??= new Map();\n if (window._nc_files_sharing_sidebar_sections.has(section.id)) {\n throw new Error(`Sidebar section with id \"${section.id}\" is already registered`);\n }\n window._nc_files_sharing_sidebar_sections.set(section.id, section);\n}\n/**\n * Get all registered sidebar sections for the files sharing sidebar tab.\n */\nexport function getSidebarSections() {\n return [...(window._nc_files_sharing_sidebar_sections?.values() ?? [])];\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { ShareType } from '@nextcloud/sharing'\n\n/**\n *\n * @param share\n */\nfunction shareWithTitle(share) {\n\tif (share.type === ShareType.Group) {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you and the group {group} by {owner}',\n\t\t\t{\n\t\t\t\tgroup: share.shareWithDisplayName,\n\t\t\t\towner: share.ownerDisplayName,\n\t\t\t},\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t} else if (share.type === ShareType.Team) {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you and {circle} by {owner}',\n\t\t\t{\n\t\t\t\tcircle: share.shareWithDisplayName,\n\t\t\t\towner: share.ownerDisplayName,\n\t\t\t},\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t} else if (share.type === ShareType.Room) {\n\t\tif (share.shareWithDisplayName) {\n\t\t\treturn t(\n\t\t\t\t'files_sharing',\n\t\t\t\t'Shared with you and the conversation {conversation} by {owner}',\n\t\t\t\t{\n\t\t\t\t\tconversation: share.shareWithDisplayName,\n\t\t\t\t\towner: share.ownerDisplayName,\n\t\t\t\t},\n\t\t\t\tundefined,\n\t\t\t\t{ escape: false },\n\t\t\t)\n\t\t} else {\n\t\t\treturn t(\n\t\t\t\t'files_sharing',\n\t\t\t\t'Shared with you in a conversation by {owner}',\n\t\t\t\t{\n\t\t\t\t\towner: share.ownerDisplayName,\n\t\t\t\t},\n\t\t\t\tundefined,\n\t\t\t\t{ escape: false },\n\t\t\t)\n\t\t}\n\t} else {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you by {owner}',\n\t\t\t{ owner: share.ownerDisplayName },\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t}\n}\n\nexport { shareWithTitle }\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.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!./SharingTab.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=style&index=0&id=cd6ad9ee&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SharingTab.vue?vue&type=style&index=0&id=cd6ad9ee&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingTab.vue?vue&type=template&id=cd6ad9ee&scoped=true\"\nimport script from \"./SharingTab.vue?vue&type=script&lang=js\"\nexport * from \"./SharingTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingTab.vue?vue&type=style&index=0&id=cd6ad9ee&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 \"cd6ad9ee\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharingTab\",class:{ 'icon-loading': _vm.loading }},[(_vm.error)?_c('div',{staticClass:\"emptycontent\",class:{ emptyContentWithSections: _vm.hasExternalSections }},[_c('div',{staticClass:\"icon icon-error\"}),_vm._v(\" \"),_c('h2',[_vm._v(_vm._s(_vm.error))])]):_vm._e(),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showSharingDetailsView),expression:\"!showSharingDetailsView\"}],staticClass:\"sharingTab__content\"},[(_vm.isSharedWithMe)?_c('ul',[_c('SharingEntrySimple',_vm._b({staticClass:\"sharing-entry__reshare\",scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"user\":_vm.sharedWithMe.user,\"display-name\":_vm.sharedWithMe.displayName}})]},proxy:true}],null,false,3197855346)},'SharingEntrySimple',_vm.sharedWithMe,false))],1):_vm._e(),_vm._v(\" \"),_c('section',[_c('div',{staticClass:\"section-header\"},[_c('h4',[_vm._v(_vm._s(_vm.t('files_sharing', 'Internal shares')))]),_vm._v(\" \"),_c('NcPopover',{attrs:{\"popup-role\":\"dialog\"},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{staticClass:\"hint-icon\",attrs:{\"variant\":\"tertiary-no-background\",\"aria-label\":_vm.t('files_sharing', 'Internal shares explanation')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('InfoIcon',{attrs:{\"size\":20}})]},proxy:true}])})]},proxy:true}])},[_vm._v(\" \"),_c('p',{staticClass:\"hint-body\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.internalSharesHelpText)+\"\\n\\t\\t\\t\\t\\t\")])])],1),_vm._v(\" \"),(!_vm.loading)?_c('SharingInput',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"link-shares\":_vm.linkShares,\"reshare\":_vm.reshare,\"shares\":_vm.shares,\"placeholder\":_vm.internalShareInputPlaceholder},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('SharingList',{ref:\"shareList\",attrs:{\"shares\":_vm.shares,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(_vm.canReshare && !_vm.loading)?_c('SharingInherited',{attrs:{\"file-info\":_vm.fileInfo}}):_vm._e(),_vm._v(\" \"),_c('SharingEntryInternal',{attrs:{\"file-info\":_vm.fileInfo}})],1),_vm._v(\" \"),(_vm.config.showExternalSharing)?_c('section',[_c('div',{staticClass:\"section-header\"},[_c('h4',[_vm._v(_vm._s(_vm.t('files_sharing', 'External shares')))]),_vm._v(\" \"),_c('NcPopover',{attrs:{\"popup-role\":\"dialog\"},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{staticClass:\"hint-icon\",attrs:{\"variant\":\"tertiary-no-background\",\"aria-label\":_vm.t('files_sharing', 'External shares explanation')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('InfoIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,915383693)})]},proxy:true}],null,false,4045083138)},[_vm._v(\" \"),_c('p',{staticClass:\"hint-body\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.externalSharesHelpText)+\"\\n\\t\\t\\t\\t\\t\")])])],1),_vm._v(\" \"),(!_vm.loading)?_c('SharingInput',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"link-shares\":_vm.linkShares,\"is-external\":true,\"placeholder\":_vm.externalShareInputPlaceholder,\"reshare\":_vm.reshare,\"shares\":_vm.shares},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('SharingList',{attrs:{\"shares\":_vm.externalShares,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading && _vm.isLinkSharingAllowed)?_c('SharingLinkList',{ref:\"linkShareList\",attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"shares\":_vm.linkShares},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.hasExternalSections && !_vm.showSharingDetailsView)?_c('section',[_c('div',{staticClass:\"section-header\"},[_c('h4',[_vm._v(_vm._s(_vm.t('files_sharing', 'Additional shares')))]),_vm._v(\" \"),_c('NcPopover',{attrs:{\"popup-role\":\"dialog\"},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{staticClass:\"hint-icon\",attrs:{\"variant\":\"tertiary-no-background\",\"aria-label\":_vm.t('files_sharing', 'Additional shares explanation')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('InfoIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,915383693)})]},proxy:true}],null,false,880248230)},[_vm._v(\" \"),_c('p',{staticClass:\"hint-body\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.additionalSharesHelpText)+\"\\n\\t\\t\\t\\t\\t\")])])],1),_vm._v(\" \"),_vm._l((_vm.sortedExternalSections),function(section){return _c('SidebarTabExternalSection',{key:section.id,staticClass:\"sharingTab__additionalContent\",attrs:{\"section\":section,\"node\":_vm.fileInfo.node /* TODO: Fix once we have proper Node API */}})}),_vm._v(\" \"),_vm._l((_vm.legacySections),function(section,index){return _c('SidebarTabExternalSectionLegacy',{key:index,staticClass:\"sharingTab__additionalContent\",attrs:{\"file-info\":_vm.fileInfo,\"section-callback\":section}})}),_vm._v(\" \"),(_vm.projectsEnabled)?_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showSharingDetailsView && _vm.fileInfo),expression:\"!showSharingDetailsView && fileInfo\"}],staticClass:\"sharingTab__additionalContent\"},[_c('NcCollectionList',{attrs:{\"id\":`${_vm.fileInfo.id}`,\"type\":\"file\",\"name\":_vm.fileInfo.name}})],1):_vm._e()],2):_vm._e()]),_vm._v(\" \"),(_vm.showSharingDetailsView)?_c('SharingDetailsTab',{attrs:{\"file-info\":_vm.shareDetailsData.fileInfo,\"share\":_vm.shareDetailsData.share},on:{\"close-sharing-details\":_vm.toggleShareDetailsView,\"add:share\":_vm.addShare,\"remove:share\":_vm.removeShare}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/*!\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Permission } from '@nextcloud/files';\n/**\n * Convert Node to legacy file info\n *\n * @param node - The Node to convert\n */\nexport default function (node) {\n const rawFileInfo = {\n id: node.fileid,\n path: node.dirname,\n name: node.basename,\n mtime: node.mtime?.getTime(),\n etag: node.attributes.etag,\n size: node.size,\n hasPreview: node.attributes.hasPreview,\n isEncrypted: node.attributes.isEncrypted === 1,\n isFavourited: node.attributes.favorite === 1,\n mimetype: node.mime,\n permissions: node.permissions,\n mountType: node.attributes['mount-type'],\n sharePermissions: node.attributes['share-permissions'],\n shareAttributes: JSON.parse(node.attributes['share-attributes'] || '[]'),\n type: node.type === 'file' ? 'file' : 'dir',\n attributes: node.attributes,\n };\n // TODO remove when no more legacy backbone is used\n const fileInfo = {\n ...rawFileInfo,\n node,\n get(key) {\n return this[key];\n },\n isDirectory() {\n return this.mimetype === 'httpd/unix-directory';\n },\n canEdit() {\n return Boolean(this.permissions & Permission.UPDATE);\n },\n canDownload() {\n for (const i in this.shareAttributes) {\n const attr = this.shareAttributes[i];\n if (attr.scope === 'permissions' && attr.key === 'download') {\n return attr.value === true;\n }\n }\n return true;\n },\n };\n return fileInfo;\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesSidebarTab.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesSidebarTab.vue?vue&type=script&setup=true&lang=ts\"","import { render, staticRenderFns } from \"./FilesSidebarTab.vue?vue&type=template&id=8a2257be\"\nimport script from \"./FilesSidebarTab.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilesSidebarTab.vue?vue&type=script&setup=true&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 { getCurrentUser, onRequestTokenUpdate, getRequestToken } from \"@nextcloud/auth\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport { isPublicShare, getSharingToken } from \"@nextcloud/sharing/public\";\nimport { createClient, getPatcher } from \"webdav\";\nimport { P as Permission, s as scopedGlobals, l as logger, c as NodeStatus, a as File, b as Folder } from \"./chunks/folder-29HuacU_.mjs\";\nimport \"@nextcloud/paths\";\n/*!\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nfunction parsePermissions(permString = \"\") {\n let permissions = Permission.NONE;\n if (!permString) {\n return permissions;\n }\n if (permString.includes(\"G\")) {\n permissions |= Permission.READ;\n }\n if (permString.includes(\"W\")) {\n permissions |= Permission.WRITE;\n }\n if (permString.includes(\"CK\")) {\n permissions |= Permission.CREATE;\n }\n if (permString.includes(\"NV\")) {\n permissions |= Permission.UPDATE;\n }\n if (permString.includes(\"D\")) {\n permissions |= Permission.DELETE;\n }\n if (permString.includes(\"R\")) {\n permissions |= Permission.SHARE;\n }\n return permissions;\n}\nconst defaultDavProperties = [\n \"d:getcontentlength\",\n \"d:getcontenttype\",\n \"d:getetag\",\n \"d:getlastmodified\",\n \"d:creationdate\",\n \"d:displayname\",\n \"d:quota-available-bytes\",\n \"d:resourcetype\",\n \"nc:has-preview\",\n \"nc:is-encrypted\",\n \"nc:mount-type\",\n \"oc:comments-unread\",\n \"oc:favorite\",\n \"oc:fileid\",\n \"oc:owner-display-name\",\n \"oc:owner-id\",\n \"oc:permissions\",\n \"oc:size\"\n];\nconst defaultDavNamespaces = {\n d: \"DAV:\",\n nc: \"http://nextcloud.org/ns\",\n oc: \"http://owncloud.org/ns\",\n ocs: \"http://open-collaboration-services.org/ns\"\n};\nfunction registerDavProperty(prop, namespace = { nc: \"http://nextcloud.org/ns\" }) {\n scopedGlobals.davNamespaces ??= { ...defaultDavNamespaces };\n scopedGlobals.davProperties ??= [...defaultDavProperties];\n const namespaces = { ...scopedGlobals.davNamespaces, ...namespace };\n if (scopedGlobals.davProperties.find((search) => search === prop)) {\n logger.warn(`${prop} already registered`, { prop });\n return false;\n }\n if (prop.startsWith(\"<\") || prop.split(\":\").length !== 2) {\n logger.error(`${prop} is not valid. See example: 'oc:fileid'`, { prop });\n return false;\n }\n const ns = prop.split(\":\")[0];\n if (!namespaces[ns]) {\n logger.error(`${prop} namespace unknown`, { prop, namespaces });\n return false;\n }\n scopedGlobals.davProperties.push(prop);\n scopedGlobals.davNamespaces = namespaces;\n return true;\n}\nfunction getDavProperties() {\n scopedGlobals.davProperties ??= [...defaultDavProperties];\n return scopedGlobals.davProperties.map((prop) => `<${prop} />`).join(\" \");\n}\nfunction getDavNameSpaces() {\n scopedGlobals.davNamespaces ??= { ...defaultDavNamespaces };\n return Object.keys(scopedGlobals.davNamespaces).map((ns) => `xmlns:${ns}=\"${scopedGlobals.davNamespaces?.[ns]}\"`).join(\" \");\n}\nfunction getDefaultPropfind() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t`;\n}\nfunction getFavoritesReport() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`;\n}\nfunction getRecentSearch(lastModified) {\n return `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${getDavProperties()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${getCurrentUser()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${lastModified}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\n}\nfunction getRootPath() {\n if (isPublicShare()) {\n return `/files/${getSharingToken()}`;\n }\n return `/files/${getCurrentUser()?.uid}`;\n}\nconst defaultRootPath = getRootPath();\nfunction getRemoteURL() {\n const url = generateRemoteUrl(\"dav\");\n if (isPublicShare()) {\n return url.replace(\"remote.php\", \"public.php\");\n }\n return url;\n}\nconst defaultRemoteURL = getRemoteURL();\nfunction getClient(remoteURL = defaultRemoteURL, headers = {}) {\n const client = createClient(remoteURL, { headers });\n function setHeaders(token) {\n client.setHeaders({\n ...headers,\n // Add this so the server knows it is an request from the browser\n \"X-Requested-With\": \"XMLHttpRequest\",\n // Inject user auth\n requesttoken: token ?? \"\"\n });\n }\n onRequestTokenUpdate(setHeaders);\n setHeaders(getRequestToken());\n const patcher = getPatcher();\n patcher.patch(\"fetch\", (url, options) => {\n const headers2 = options.headers;\n if (headers2?.method) {\n options.method = headers2.method;\n delete headers2.method;\n }\n return fetch(url, options);\n });\n return client;\n}\nasync function getFavoriteNodes(options = {}) {\n const client = options.client ?? getClient();\n const path = options.path ?? \"/\";\n const davRoot = options.davRoot ?? defaultRootPath;\n const contentsResponse = await client.getDirectoryContents(`${davRoot}${path}`, {\n signal: options.signal,\n details: true,\n data: getFavoritesReport(),\n headers: {\n // see getClient for patched webdav client\n method: \"REPORT\"\n },\n includeSelf: true\n });\n return contentsResponse.data.filter((node) => node.filename !== path).map((result) => resultToNode(result, davRoot));\n}\nfunction resultToNode(node, filesRoot = defaultRootPath, remoteURL = defaultRemoteURL) {\n let userId = getCurrentUser()?.uid;\n if (isPublicShare()) {\n userId = userId ?? \"anonymous\";\n } else if (!userId) {\n throw new Error(\"No user id found\");\n }\n const props = node.props;\n const permissions = parsePermissions(props?.permissions);\n const owner = String(props?.[\"owner-id\"] || userId);\n const id = props.fileid || 0;\n const mtime = new Date(Date.parse(node.lastmod));\n const crtime = new Date(Date.parse(props.creationdate));\n const nodeData = {\n id,\n source: `${remoteURL}${node.filename}`,\n mtime: !isNaN(mtime.getTime()) && mtime.getTime() !== 0 ? mtime : void 0,\n crtime: !isNaN(crtime.getTime()) && crtime.getTime() !== 0 ? crtime : void 0,\n mime: node.mime || \"application/octet-stream\",\n // Manually cast to work around for https://github.com/perry-mitchell/webdav-client/pull/380\n displayname: props.displayname !== void 0 ? String(props.displayname) : void 0,\n size: props?.size || Number.parseInt(props.getcontentlength || \"0\"),\n // The fileid is set to -1 for failed requests\n status: id < 0 ? NodeStatus.FAILED : void 0,\n permissions,\n owner,\n root: filesRoot,\n attributes: {\n ...node,\n ...props,\n hasPreview: props?.[\"has-preview\"]\n }\n };\n delete nodeData.attributes?.props;\n return node.type === \"file\" ? new File(nodeData) : new Folder(nodeData);\n}\nexport {\n defaultDavNamespaces,\n defaultDavProperties,\n defaultRemoteURL,\n defaultRootPath,\n getClient,\n getDavNameSpaces,\n getDavProperties,\n getDefaultPropfind,\n getFavoriteNodes,\n getFavoritesReport,\n getRecentSearch,\n getRemoteURL,\n getRootPath,\n parsePermissions,\n registerDavProperty,\n resultToNode\n};\n//# sourceMappingURL=dav.mjs.map\n"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","vue_material_design_icons_ContentCopyvue_type_script_lang_js","name","emits","props","title","type","String","fillColor","default","size","Number","ContentCopy","componentNormalizer","A","_vm","this","_c","_self","_b","staticClass","attrs","role","on","click","$event","$emit","$attrs","fill","width","height","viewBox","d","_v","_s","_e","components_SharingEntrySimplevue_type_script_lang_js","components","NcActions","required","subtitle","isUnique","Boolean","ariaExpanded","computed","ariaExpandedValue","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","SharingEntrySimplevue_type_style_index_0_id_13d4a0bb_prod_lang_scss_scoped_true","locals","SharingEntrySimple","_t","$slots","ref","generateFileUrl","fileid","baseURL","getBaseUrl","globalscale","getCapabilities","token","generateUrl","components_SharingEntryInternalvue_type_script_lang_js","NcActionButton","CheckIcon","Check","ClipboardIcon","fileInfo","Object","data","copied","copySuccess","internalLink","copyLinkTooltip","t","internalLinkSubtitle","methods","copyLink","navigator","clipboard","writeText","showSuccess","$refs","shareEntrySimple","actionsComponent","$el","focus","error","logger","setTimeout","SharingEntryInternalvue_type_style_index_0_id_6c4cb23b_prod_lang_scss_scoped_true_options","SharingEntryInternalvue_type_style_index_0_id_6c4cb23b_prod_lang_scss_scoped_true","SharingEntryInternal","scopedSlots","_u","key","fn","proxy","ATOMIC_PERMISSIONS","BUNDLED_PERMISSIONS","READ_ONLY","UPLOAD_AND_UPDATE","FILE_DROP","ALL","ALL_FILE","getBundledPermissions","excludeShare","Share","constructor","ocsData","_defineProperty","ocs","parseInt","hide_download","mail_send","attributes","JSON","parse","warn","newPassword","undefined","_share","state","share_type","permissions","owner","uid_owner","ownerDisplayName","displayname_owner","shareWith","share_with","shareWithDisplayName","share_with_displayname","shareWithDisplayNameUnique","share_with_displayname_unique","shareWithLink","share_with_link","shareWithAvatar","share_with_avatar","uidFileOwner","uid_file_owner","displaynameFileOwner","displayname_file_owner","createdTime","stime","expireDate","expiration","date","note","label","mailSend","hideDownload","find","scope","value","attribute","password","passwordExpirationTime","password_expiration_time","sendPasswordByTalk","send_password_by_talk","path","itemType","item_type","mimetype","fileSource","file_source","fileTarget","file_target","fileParent","file_parent","hasReadPermission","window","OC","PERMISSION_READ","hasCreatePermission","PERMISSION_CREATE","hasDeletePermission","PERMISSION_DELETE","hasUpdatePermission","PERMISSION_UPDATE","hasSharePermission","PERMISSION_SHARE","hasDownloadPermission","some","isFileRequest","stringify","enabled","setAttribute","attrUpdate","i","attr","splice","canEdit","can_edit","canDelete","can_delete","viaFileid","via_fileid","viaPath","via_path","parent","storageId","storage_id","storage","itemSource","item_source","status","isTrustedServer","is_trusted_server","Config","_capabilities","defaultPermissions","files_sharing","default_permissions","excludeReshareFromEdit","exclude_reshare_from_edit","isPublicUploadEnabled","public","upload","federatedShareDocLink","appConfig","core","federatedCloudShareDoc","defaultExpirationDate","isDefaultExpireDateEnabled","defaultExpireDate","Date","setDate","getDate","defaultInternalExpirationDate","isDefaultInternalExpireDateEnabled","defaultInternalExpireDate","defaultRemoteExpirationDateString","isDefaultRemoteExpireDateEnabled","defaultRemoteExpireDate","enforcePasswordForPublicLink","enableLinkPasswordByDefault","isDefaultExpireDateEnforced","defaultExpireDateEnforced","defaultExpireDateEnabled","isDefaultInternalExpireDateEnforced","defaultInternalExpireDateEnforced","defaultInternalExpireDateEnabled","isDefaultRemoteExpireDateEnforced","defaultRemoteExpireDateEnforced","defaultRemoteExpireDateEnabled","isRemoteShareAllowed","remoteShareAllowed","isFederationEnabled","federation","outgoing","isPublicShareAllowed","isMailShareAllowed","sharebymail","isResharingAllowed","resharingAllowed","isPasswordForMailSharesRequired","enforced","shouldAlwaysShowUnique","sharee","always_show_unique","allowGroupSharing","maxAutocompleteResults","config","minSearchStringLength","passwordPolicy","password_policy","allowCustomTokens","custom_tokens","showFederatedSharesAsInternal","loadState","showFederatedSharesToTrustedServersAsInternal","showExternalSharing","ShareDetails","openSharingDetails","shareRequestObject","share","handler","handlerInput","suggestions","query","externalShareRequestObject","mapShareRequestToShareObject","originalPermissions","strippedPermissions","debug","shareDetails","openShareDetailsForCustomSettings","setCustomPermissions","shareType","is_no_user","isNoUser","user","displayName","shareUrl","generateOcsUrl","ShareRequests","createShare","publicUpload","request","axios","post","emit","errorMessage","getErrorMessage","showError","Error","cause","deleteShare","delete","updateShare","properties","put","isAxiosError","response","meta","message","components_SharingInputvue_type_script_lang_js","NcSelect","mixins","shares","Array","linkShares","reshare","canReshare","isExternal","placeholder","setup","shareInputId","Math","random","toString","slice","loading","recommendations","ShareSearch","OCA","Sharing","externalResults","results","inputPlaceholder","allowRemoteSharing","isValidQuery","trim","length","noResultText","mounted","getRecommendations","onSelected","option","asyncFind","debounceGetSuggestions","getSuggestions","search","lookup","query_lookup_default","remoteTypes","ShareType","Remote","RemoteGroup","showFederatedAsInternal","shouldAddRemoteTypes","Email","User","Group","Team","Room","Guest","Deck","ScienceMesh","get","params","format","perPage","exact","rawExactSuggestions","values","flat","rawSuggestions","exactSuggestions","filterOutExistingShares","filter","result","filterByTrustedServer","map","formatForMultiselect","sort","a","b","lookupEntry","lookupEnabled","condition","allSuggestions","concat","nameCounts","reduce","item","desc","debounce","args","rawRecommendations","arr","elem","getCurrentUser","uid","indexOf","sharesObj","obj","shareTypeToIcon","icon","iconTitle","Sciencemesh","subname","extra","email","server","shareWithDescription","uuid","SharingInputvue_type_style_index_0_id_0b151499_prod_lang_scss_options","SharingInputvue_type_style_index_0_id_0b151499_prod_lang_scss","SharingInput","for","disabled","filterable","clear-search-on-blur","model","callback","$$v","expression","SidebarTabExternal_SidebarTabExternalSectionvue_type_script_lang_ts_setup_true","_defineComponent","__name","node","section","__props","sectionElement","watchEffect","__sfc","SidebarTabExternalSection","_setupProxy","element","tag","domProps","SidebarTabExternal_SidebarTabExternalSectionLegacyvue_type_script_lang_ts_setup_true","sectionCallback","Function","component","SidebarTabExternalSectionLegacyvue_type_style_index_0_id_3e4e67d2_prod_scoped_true_lang_css_options","SidebarTabExternalSectionLegacyvue_type_style_index_0_id_3e4e67d2_prod_scoped_true_lang_css","SidebarTabExternalSectionLegacy","vue_material_design_icons_AccountCircleOutlinevue_type_script_lang_js","AccountCircleOutline","vue_material_design_icons_AccountGroupvue_type_script_lang_js","AccountGroup","vue_material_design_icons_CircleOutlinevue_type_script_lang_js","CircleOutline","vue_material_design_icons_Emailvue_type_script_lang_js","vue_material_design_icons_Eyevue_type_script_lang_js","Eye","vue_material_design_icons_Refreshvue_type_script_lang_js","Refresh","vue_material_design_icons_ShareCirclevue_type_script_lang_js","ShareCircle","vue_material_design_icons_TrayArrowUpvue_type_script_lang_js","TrayArrowUp","SidebarTabExternal_SidebarTabExternalActionvue_type_script_lang_ts_setup_true","action","expose","save","actionElement","savingCallback","async","onSave","toRaw","SidebarTabExternalAction","_setup","SidebarTabExternal_SidebarTabExternalActionLegacyvue_type_script_lang_js","SidebarTabExternalActionLegacy","is","_g","handlers","text","client","getClient","GeneratePassword","verbose","api","generate","info","array","Uint8Array","ratio","passwordSet","self","crypto","getRandomValues","len","floor","charAt","SharesMixin","SharesRequests","sharing_dist","I","errors","saving","open","passwordProtectedState","updateQueue","PQueue","concurrency","reactiveState","replace","hasNote","set","dateTomorrow","lang","weekdaysShort","dayNamesShort","monthsShort","monthNamesShort","formatLocale","firstDayOfWeek","firstDay","weekdaysMin","monthFormat","isNewShare","isFolder","isPublicShare","Link","includes","isRemoteShare","isShareOwner","isExpiryDateEnforced","hasCustomPermissions","basePermissions","bundledPermissions","permissionsWithoutShare","maxExpirationDateEnforced","isPasswordProtected","generatedPassword","$set","getNode","propfindPayload","getDefaultPropfind","stat","getRootPath","details","resultToNode","fetchNode","checkShare","expirationDate","isValid","formatDateToString","UTC","getFullYear","getMonth","toISOString","split","onExpirationChange","parsedDate","onNoteChange","onNoteSubmit","newNote","$delete","queueUpdate","onDelete","shareId","propertyNames","add","updatedShare","property","updateSuccessMessage","onSyncError","propertyEl","focusable","querySelector","debounceQueueUpdate","views_SharingDetailsTabvue_type_script_lang_js","NcAvatar","NcButton","NcCheckboxRadioSwitch","NcDateTimePickerNative","NcInputField","NcLoadingIcon","NcPasswordField","NcTextArea","CloseIcon","Close","CircleIcon","EditIcon","PencilOutline","LinkIcon","GroupIcon","ShareIcon","UserIcon","UploadIcon","ViewIcon","MenuDownIcon","MenuDown","MenuUpIcon","MenuUp","DotsHorizontalIcon","DotsHorizontal","shareRequestValue","writeNoteToRecipientIsChecked","sharingPermission","revertSharingPermission","passwordError","advancedSectionAccordionExpanded","isFirstComponentLoad","test","creating","initialToken","loadingToken","externalShareActions","_nc_files_sharing_sidebar_actions","ExternalShareActions","allPermissions","checked","updateAtomicPermissions","isEditChecked","canCreate","isCreateChecked","isDeleteChecked","isReshareChecked","showInGridView","getShareAttribute","setShareAttribute","canDownload","hasRead","isReadChecked","hasExpirationDate","isValidShareAttribute","defaultExpiryDate","isSetDownloadButtonVisible","isPasswordEnforced","isGroupShare","isUserShare","allowsFileDrop","hasFileDropPermissions","shareButtonText","resharingIsPossible","canSetEdit","sharePermissions","canSetCreate","canSetDelete","canSetReshare","canSetDownload","canRemoveReadPermission","hasUnsavedPassword","expirationTime","moment","diff","fromNow","isTalkEnabled","appswebroots","spreed","isPasswordProtectedByTalkAvailable","isPasswordProtectedByTalk","isEmailShareType","canTogglePasswordProtectedByTalkAvailable","canChangeHideDownload","shareAttributes","shareAttribute","customPermissionsList","translatedPermissions","ATOMIC_PERMISSIONS_READ","ATOMIC_PERMISSIONS_CREATE","ATOMIC_PERMISSIONS_UPDATE","ATOMIC_PERMISSIONS_SHARE","ATOMIC_PERMISSIONS_DELETE","permission","hasPermissions","initialPermissionSet","permissionsToCheck","index","toLocaleLowerCase","getLanguage","join","advancedControlExpandedValue","errorPasswordLabel","passwordHint","sortedExternalShareActions","order","externalLegacyShareActions","actions","advanced","watch","isChecked","beforeMount","initializePermissions","initializeAttributes","quickPermissions","fallback","generateNewToken","generateToken","cancel","expandCustomPermissions","toggleCustomPermissions","selectedPermission","isCustomPermissions","toDateString","handleShareType","handleDefaultPermissions","handleCustomPermissions","saveShare","permissionsAndAttributes","publicShareAttributes","sharePermissionsSet","incomingShare","addShare","prop","Promise","allSettled","externalLinkActions","$children","at","resolve","removeShare","onPasswordChange","onPasswordProtectedByTalkChange","getShareTypeIcon","EmailIcon","SharingDetailsTabvue_type_style_index_0_id_289355eb_prod_lang_scss_scoped_true_options","SharingDetailsTabvue_type_style_index_0_id_289355eb_prod_lang_scss_scoped_true","SharingDetailsTab_component","url","variant","alignment","autocomplete","min","max","input","_l","refInFor","readonly","preventDefault","apply","arguments","SharingDetailsTab","components_SharingEntryInheritedvue_type_script_lang_js","NcActionLink","NcActionText","viaFileTargetUrl","viaFolderName","basename","SharingEntryInheritedvue_type_style_index_0_id_731a9650_prod_lang_scss_scoped_true_options","SharingEntryInheritedvue_type_style_index_0_id_731a9650_prod_lang_scss_scoped_true","SharingEntryInherited_component","initiator","href","folder","SharingEntryInherited","views_SharingInheritedvue_type_script_lang_js","loaded","showInheritedShares","showInheritedSharesIcon","mainTitle","subTitle","toggleTooltip","fullPath","resetState","toggleInheritedShares","fetchInheritedShares","Notification","showTemporary","findIndex","SharingInheritedvue_type_style_index_0_id_cedf3238_prod_lang_scss_scoped_true_options","SharingInheritedvue_type_style_index_0_id_cedf3238_prod_lang_scss_scoped_true","SharingInherited_component","stopPropagation","SharingInherited","vue_material_design_icons_CalendarBlankOutlinevue_type_script_lang_js","CalendarBlankOutline","vue_material_design_icons_CheckBoldvue_type_script_lang_js","CheckBold","vue_material_design_icons_Exclamationvue_type_script_lang_js","Exclamation","vue_material_design_icons_LockOutlinevue_type_script_lang_js","LockOutline","vue_material_design_icons_Plusvue_type_script_lang_js","Plus","vue_material_design_icons_Qrcodevue_type_script_lang_js","Qrcode","vue_material_design_icons_Tunevue_type_script_lang_js","Tune","vue_material_design_icons_ClockOutlinevue_type_script_lang_js","ClockOutline","components_ShareExpiryTimevue_type_script_lang_js","NcPopover","NcDateTime","ClockIcon","expiryTime","getTime","timeFormat","dateStyle","timeStyle","ShareExpiryTimevue_type_style_index_0_id_c9199db0_prod_scoped_true_lang_scss_options","ShareExpiryTimevue_type_style_index_0_id_c9199db0_prod_scoped_true_lang_scss","ShareExpiryTime","toLocaleString","timestamp","vue_material_design_icons_EyeOutlinevue_type_script_lang_js","EyeOutline","vue_material_design_icons_TriangleSmallDownvue_type_script_lang_js","SharingEntryQuickShareSelectvue_type_script_lang_js","DropdownIcon","selectedOption","ariaLabel","canViewText","canEditText","fileDropText","customPermissionsText","preSelectedOption","IconEyeOutline","IconPencil","supportsFileDrop","IconFileUpload","IconTune","dropDownPermissionValue","created","subscribe","unmounted","unsubscribe","selectOption","optionLabel","quickShareActions","menuButton","components_SharingEntryQuickShareSelectvue_type_script_lang_js","SharingEntryQuickShareSelectvue_type_style_index_0_id_b5eca1ec_prod_lang_scss_scoped_true_options","SharingEntryQuickShareSelectvue_type_style_index_0_id_b5eca1ec_prod_lang_scss_scoped_true","SharingEntryQuickShareSelect","SharingEntryLinkvue_type_script_lang_js","NcActionCheckbox","NcActionCheckbox_Cbg5yktN","N","NcActionInput","NcActionSeparator","NcDialog","NcIconSvgWrapper","VueQrcode","vue_qrcode_default","IconCalendarBlank","IconQr","ErrorIcon","LockIcon","PlusIcon","mdiCheck","mdi","Tfj","mdiContentCopy","shareCreationComplete","defaultExpirationDateEnabled","pending","_nc_files_sharing_sidebar_inline_actions","showQRCode","l10nOptions","escape","pendingDataIsMissing","pendingPassword","pendingEnforcedPassword","pendingDefaultExpirationDate","pendingEnforcedExpirationDate","isPendingShare","isNaN","sharePolicyHasEnforcedProperties","enforcedPropertiesMissing","isPasswordMissing","isExpireDateMissing","shareLink","actionsTooltip","copyLinkLabel","isPasswordPolicyEnabled","shareRequiresReview","shareReviewComplete","onNewLinkShare","shareDefaults","pushNewLinkShare","e","update","newShare","match","copyButton","prompt","onPasswordDisable","onPasswordSubmit","onMenuClose","onExpirationDateToggleUpdate","expirationDateChanged","event","target","onCancel","components_SharingEntryLinkvue_type_script_lang_js","SharingEntryLinkvue_type_style_index_0_id_4ca4172c_prod_lang_scss_scoped_true_options","SharingEntryLinkvue_type_style_index_0_id_4ca4172c_prod_lang_scss_scoped_true","SharingEntryLink_component","class","close","uncheck","minlength","minLength","submit","change","exec","svg","iconSvg","views_SharingLinkListvue_type_script_lang_js","SharingEntryLink","canLinkShare","hasLinkShares","hasShares","l10n_dist","awaitForShare","$nextTick","SharingLinkList_component","SharingLinkList","components_SharingEntryvue_type_script_lang_js","showAsInternal","tooltip","hasStatus","isArray","SharingEntryvue_type_style_index_0_id_469e5e80_prod_lang_scss_scoped_true_options","SharingEntryvue_type_style_index_0_id_469e5e80_prod_lang_scss_scoped_true","views_SharingListvue_type_script_lang_js","SharingEntry","SharingList","productName","theme","SharingTabvue_type_script_lang_js","InfoIcon","InformationOutline","NcCollectionList","NcCollectionList_q7zkDwqG","deleteEvent","expirationInterval","sharedWithMe","externalShares","legacySections","ShareTabSections","getSections","sections","_nc_files_sharing_sidebar_sections","projectsEnabled","showSharingDetailsView","shareDetailsData","returnFocusElement","internalSharesHelpText","externalSharesHelpText","additionalSharesHelpText","hasExternalSections","sortedExternalSections","isSharedWithMe","isLinkSharingAllowed","capabilities","internalShareInputPlaceholder","externalShareInputPlaceholder","immediate","newValue","oldValue","getShares","fetchShares","reshares","fetchSharedWithMe","shared_with_me","all","processSharedWithMe","processShares","clearInterval","updateExpirationSubtitle","unix","relativetime","orderBy","findShareListByShare","group","circle","conversation","shareWithTitle","setInterval","shareOwnerId","shareOwner","unshift","removeShareFromList","shareList","listComponent","linkShareList","toggleShareDetailsView","eventData","from","document","activeElement","classList","className","startsWith","menuId","closest","views_SharingTabvue_type_script_lang_js","SharingTabvue_type_style_index_0_id_cd6ad9ee_prod_scoped_true_lang_scss_options","SharingTabvue_type_style_index_0_id_cd6ad9ee_prod_scoped_true_lang_scss","SharingTab","emptyContentWithSections","directives","rawName","FileInfo","dirname","mtime","etag","hasPreview","isEncrypted","isFavourited","favorite","mime","mountType","isDirectory","Permission","UPDATE","views_FilesSidebarTabvue_type_script_setup_true_lang_ts","active","view","FilesSidebarTab","defaultDavProperties","defaultDavNamespaces","nc","oc","getDavProperties","_chunks_folder_29HuacU_mjs__WEBPACK_IMPORTED_MODULE_4__","s","davProperties","getDavNameSpaces","davNamespaces","keys","ns","getRecentSearch","lastModified","_nextcloud_auth__WEBPACK_IMPORTED_MODULE_0__","HW","_nextcloud_sharing_public__WEBPACK_IMPORTED_MODULE_2__","f","G","defaultRootPath","defaultRemoteURL","_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__","dC","getRemoteURL","remoteURL","headers","webdav__WEBPACK_IMPORTED_MODULE_3__","UU","setHeaders","requesttoken","zo","Gu","patch","headers2","method","fetch","getFavoriteNodes","davRoot","getDirectoryContents","signal","includeSelf","filename","filesRoot","userId","permString","P","NONE","READ","WRITE","CREATE","DELETE","SHARE","parsePermissions","lastmod","crtime","creationdate","nodeData","source","displayname","getcontentlength","c","FAILED","root"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/1991-1991.js.map.license b/dist/1991-1991.js.map.license deleted file mode 120000 index b587a1a500190..0000000000000 --- a/dist/1991-1991.js.map.license +++ /dev/null @@ -1 +0,0 @@ -1991-1991.js.license \ No newline at end of file diff --git a/dist/9553-9553.js b/dist/3108-3108.js similarity index 88% rename from dist/9553-9553.js rename to dist/3108-3108.js index 8a758cfb1dbe3..72c12e6228e2d 100644 --- a/dist/9553-9553.js +++ b/dist/3108-3108.js @@ -1,2 +1,2 @@ -"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[9553],{89075(t,e,n){var a=n(71354),l=n.n(a),o=n(76314),s=n.n(o)()(l());s.push([t.id,".legacy-prompt__text[data-v-48faebc7]{margin-block:0 .75em}.legacy-prompt__input[data-v-48faebc7]{margin-block:0 1em}[data-v-48faebc7] .legacy-prompt__dialog .dialog__actions{min-width:calc(100% - 12px);justify-content:space-between}","",{version:3,sources:["webpack://./core/src/components/LegacyDialogPrompt.vue"],names:[],mappings:"AAEC,sCACC,oBAAA,CAGD,uCACC,kBAAA,CAIF,0DACC,2BAAA,CACA,6BAAA",sourcesContent:["\n.legacy-prompt {\n\t&__text {\n\t\tmargin-block: 0 .75em;\n\t}\n\n\t&__input {\n\t\tmargin-block: 0 1em;\n\t}\n}\n\n:deep(.legacy-prompt__dialog .dialog__actions) {\n\tmin-width: calc(100% - 12px);\n\tjustify-content: space-between;\n}\n"],sourceRoot:""}]);const i=s;n.d(e,["A",0,i])},99553(t,e,n){n.r(e),n.d(e,{default:()=>k});var a=n(53334),l=n(85471),o=n(94219),s=n(16044),i=n(82182);const c=(0,l.pM)({name:"LegacyDialogPrompt",components:{NcDialog:o.A,NcTextField:i.A,NcPasswordField:s.A},props:{name:{type:String,required:!0},text:{type:String,required:!0},isPassword:{type:Boolean,required:!0},inputName:{type:String,default:"prompt-input"}},emits:["close"],data:()=>({inputValue:""}),computed:{buttons(){return[{label:(0,a.Tl)("core","No"),callback:()=>this.$emit("close",!1,this.inputValue)},{label:(0,a.Tl)("core","Yes"),type:"primary",callback:()=>this.$emit("close",!0,this.inputValue)}]}},mounted(){this.$nextTick(()=>this.$refs.input?.focus?.())}});var p=n(85072),u=n.n(p),r=n(97825),m=n.n(r),d=n(77659),g=n.n(d),A=n(55056),_=n.n(A),b=n(10540),y=n.n(b),f=n(41113),C=n.n(f),x=n(89075),h={};h.styleTagTransform=C(),h.setAttributes=_(),h.insert=g().bind(null,"head"),h.domAPI=m(),h.insertStyleElement=y(),u()(x.A,h),x.A&&x.A.locals&&x.A.locals;const k=(0,n(14486).A)(c,function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcDialog",{attrs:{"dialog-classes":"legacy-prompt__dialog",buttons:t.buttons,name:t.name},on:{"update:open":function(e){return t.$emit("close",!1,t.inputValue)}}},[e("p",{staticClass:"legacy-prompt__text",domProps:{textContent:t._s(t.text)}}),t._v(" "),t.isPassword?e("NcPasswordField",{ref:"input",staticClass:"legacy-prompt__input",attrs:{autocomplete:"new-password",label:t.name,name:t.inputName},model:{value:t.inputValue,callback:function(e){t.inputValue=e},expression:"inputValue"}}):e("NcTextField",{ref:"input",staticClass:"legacy-prompt__input",attrs:{label:t.name,name:t.inputName},model:{value:t.inputValue,callback:function(e){t.inputValue=e},expression:"inputValue"}})],1)},[],!1,null,"48faebc7",null).exports}}]); -//# sourceMappingURL=9553-9553.js.map?v=b85e61bc001e949e120f \ No newline at end of file +"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[3108],{53400(t,e,n){var a=n(71354),l=n.n(a),o=n(76314),s=n.n(o)()(l());s.push([t.id,".legacy-prompt__text[data-v-48faebc7]{margin-block:0 .75em}.legacy-prompt__input[data-v-48faebc7]{margin-block:0 1em}[data-v-48faebc7] .legacy-prompt__dialog .dialog__actions{min-width:calc(100% - 12px);justify-content:space-between}","",{version:3,sources:["webpack://./core/src/components/LegacyDialogPrompt.vue"],names:[],mappings:"AAEC,sCACC,oBAAA,CAGD,uCACC,kBAAA,CAIF,0DACC,2BAAA,CACA,6BAAA",sourcesContent:["\n.legacy-prompt {\n\t&__text {\n\t\tmargin-block: 0 .75em;\n\t}\n\n\t&__input {\n\t\tmargin-block: 0 1em;\n\t}\n}\n\n:deep(.legacy-prompt__dialog .dialog__actions) {\n\tmin-width: calc(100% - 12px);\n\tjustify-content: space-between;\n}\n"],sourceRoot:""}]);const i=s;n.d(e,["A",0,i])},43108(t,e,n){n.r(e),n.d(e,{default:()=>k});var a=n(53334),l=n(85471),o=n(94219),s=n(16044),i=n(82182);const c=(0,l.pM)({name:"LegacyDialogPrompt",components:{NcDialog:o.A,NcTextField:i.A,NcPasswordField:s.A},props:{name:{type:String,required:!0},text:{type:String,required:!0},isPassword:{type:Boolean,required:!0},inputName:{type:String,default:"prompt-input"}},emits:["close"],data:()=>({inputValue:""}),computed:{buttons(){return[{label:(0,a.Tl)("core","No"),callback:()=>this.$emit("close",!1,this.inputValue)},{label:(0,a.Tl)("core","Yes"),type:"primary",callback:()=>this.$emit("close",!0,this.inputValue)}]}},mounted(){this.$nextTick(()=>this.$refs.input?.focus?.())}});var p=n(85072),u=n.n(p),r=n(97825),m=n.n(r),d=n(77659),g=n.n(d),A=n(55056),_=n.n(A),b=n(10540),y=n.n(b),f=n(41113),C=n.n(f),x=n(53400),h={};h.styleTagTransform=C(),h.setAttributes=_(),h.insert=g().bind(null,"head"),h.domAPI=m(),h.insertStyleElement=y(),u()(x.A,h),x.A&&x.A.locals&&x.A.locals;const k=(0,n(14486).A)(c,function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcDialog",{attrs:{"dialog-classes":"legacy-prompt__dialog",buttons:t.buttons,name:t.name},on:{"update:open":function(e){return t.$emit("close",!1,t.inputValue)}}},[e("p",{staticClass:"legacy-prompt__text",domProps:{textContent:t._s(t.text)}}),t._v(" "),t.isPassword?e("NcPasswordField",{ref:"input",staticClass:"legacy-prompt__input",attrs:{autocomplete:"new-password",label:t.name,name:t.inputName},model:{value:t.inputValue,callback:function(e){t.inputValue=e},expression:"inputValue"}}):e("NcTextField",{ref:"input",staticClass:"legacy-prompt__input",attrs:{label:t.name,name:t.inputName},model:{value:t.inputValue,callback:function(e){t.inputValue=e},expression:"inputValue"}})],1)},[],!1,null,"48faebc7",null).exports}}]); +//# sourceMappingURL=3108-3108.js.map?v=fbc612ced17de0b7a0b8 \ No newline at end of file diff --git a/dist/9553-9553.js.license b/dist/3108-3108.js.license similarity index 100% rename from dist/9553-9553.js.license rename to dist/3108-3108.js.license diff --git a/dist/9553-9553.js.map b/dist/3108-3108.js.map similarity index 65% rename from dist/9553-9553.js.map rename to dist/3108-3108.js.map index b9c7536db428b..bfddc8e71f6a8 100644 --- a/dist/9553-9553.js.map +++ b/dist/3108-3108.js.map @@ -1 +1 @@ -{"version":3,"file":"9553-9553.js?v=3fb3c692ca186ac77c3c","mappings":"6HAGAA,QAA8BC,GAA4BC,KAE1DF,EAAAG,KAAA,CAAAC,EAAAC,GAAA,4OAAmR,IAAOC,QAAA,EAAAC,QAAA,2DAAAC,MAAA,GAAAC,SAAA,gEAAAC,eAAA,oPAAuaC,WAAA,MAEjsB,MAAAC,EAAA,+DCPA,2DAKA,MCLyPC,GDK1OC,EAAAA,EAAAA,IAAgB,CAC3BC,KAAM,qBACNC,WAAY,CACRC,SAAQA,EAAAC,EACRC,YAAWA,EAAAD,EACXE,gBAAeA,EAAAA,GAEnBC,MAAO,CACHN,KAAM,CACFO,KAAMC,OACNC,UAAU,GAEdC,KAAM,CACFH,KAAMC,OACNC,UAAU,GAEdE,WAAY,CACRJ,KAAMK,QACNH,UAAU,GAEdI,UAAW,CACPN,KAAMC,OACNM,QAAS,iBAGjBC,MAAO,CAAC,SACRC,KAAIA,KACO,CACHC,WAAY,KAGpBC,SAAU,CACNC,OAAAA,GACI,MAAO,CACH,CACIC,OAAOC,EAAAA,EAAAA,IAAE,OAAQ,MACjBC,SAAUA,IAAMC,KAAKC,MAAM,SAAS,EAAOD,KAAKN,aAEpD,CACIG,OAAOC,EAAAA,EAAAA,IAAE,OAAQ,OACjBd,KAAM,UACNe,SAAUA,IAAMC,KAAKC,MAAM,SAAS,EAAMD,KAAKN,aAG3D,GAEJQ,OAAAA,GACIF,KAAKG,UAAU,IAAMH,KAAKI,MAAMC,OAAOC,UAC3C,2IE1CJC,EAAA,GAEAA,EAAAC,kBAA4BC,IAC5BF,EAAAG,cAAwBC,IACxBJ,EAAAK,OAAiBC,IAAAC,KAAa,aAC9BP,EAAAQ,OAAiBC,IACjBT,EAAAU,mBAA6BC,IAEhBC,IAAIC,EAAAxC,EAAO2B,GAKFa,EAAAxC,GAAWwC,EAAAxC,EAAOyC,QAAUD,EAAAxC,EAAOyC,OCLzD,MAAAC,GAXgB,WAAA1C,GACdL,EHTW,WAAkB,IAAIgD,EAAIvB,KAAKwB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMC,YAAmBF,EAAG,WAAW,CAACG,MAAM,CAAC,iBAAiB,wBAAwB/B,QAAU2B,EAAI3B,QAAQnB,KAAO8C,EAAI9C,MAAMmD,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAON,EAAItB,MAAM,SAAS,EAAOsB,EAAI7B,WAAW,IAAI,CAAC8B,EAAG,IAAI,CAACM,YAAY,sBAAsBC,SAAS,CAACC,YAAcT,EAAIU,GAAGV,EAAIpC,SAASoC,EAAIW,GAAG,KAAMX,EAAInC,WAAYoC,EAAG,kBAAkB,CAACW,IAAI,QAAQL,YAAY,uBAAuBH,MAAM,CAACS,aAAe,eAAevC,MAAQ0B,EAAI9C,KAAKA,KAAO8C,EAAIjC,WAAW+C,MAAM,CAACC,MAAOf,EAAI7B,WAAYK,SAAS,SAAUwC,GAAMhB,EAAI7B,WAAW6C,CAAG,EAAEC,WAAW,gBAAgBhB,EAAG,cAAc,CAACW,IAAI,QAAQL,YAAY,uBAAuBH,MAAM,CAAC9B,MAAQ0B,EAAI9C,KAAKA,KAAO8C,EAAIjC,WAAW+C,MAAM,CAACC,MAAOf,EAAI7B,WAAYK,SAAS,SAAUwC,GAAMhB,EAAI7B,WAAW6C,CAAG,EAAEC,WAAW,iBAAiB,EAC91B,EACsB,IGUtB,EACA,KACA,WACA","sources":["webpack:///nextcloud/core/src/components/LegacyDialogPrompt.vue?vue&type=style&index=0&id=48faebc7&prod&scoped=true&lang=scss","webpack:///nextcloud/core/src/components/LegacyDialogPrompt.vue","webpack:///nextcloud/core/src/components/LegacyDialogPrompt.vue?vue&type=script&lang=ts","webpack://nextcloud/./core/src/components/LegacyDialogPrompt.vue?a108","webpack://nextcloud/./core/src/components/LegacyDialogPrompt.vue?4e2f"],"sourcesContent":["// 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, `.legacy-prompt__text[data-v-48faebc7]{margin-block:0 .75em}.legacy-prompt__input[data-v-48faebc7]{margin-block:0 1em}[data-v-48faebc7] .legacy-prompt__dialog .dialog__actions{min-width:calc(100% - 12px);justify-content:space-between}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/LegacyDialogPrompt.vue\"],\"names\":[],\"mappings\":\"AAEC,sCACC,oBAAA,CAGD,uCACC,kBAAA,CAIF,0DACC,2BAAA,CACA,6BAAA\",\"sourcesContent\":[\"\\n.legacy-prompt {\\n\\t&__text {\\n\\t\\tmargin-block: 0 .75em;\\n\\t}\\n\\n\\t&__input {\\n\\t\\tmargin-block: 0 1em;\\n\\t}\\n}\\n\\n:deep(.legacy-prompt__dialog .dialog__actions) {\\n\\tmin-width: calc(100% - 12px);\\n\\tjustify-content: space-between;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcDialog',{attrs:{\"dialog-classes\":\"legacy-prompt__dialog\",\"buttons\":_vm.buttons,\"name\":_vm.name},on:{\"update:open\":function($event){return _vm.$emit('close', false, _vm.inputValue)}}},[_c('p',{staticClass:\"legacy-prompt__text\",domProps:{\"textContent\":_vm._s(_vm.text)}}),_vm._v(\" \"),(_vm.isPassword)?_c('NcPasswordField',{ref:\"input\",staticClass:\"legacy-prompt__input\",attrs:{\"autocomplete\":\"new-password\",\"label\":_vm.name,\"name\":_vm.inputName},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}}):_c('NcTextField',{ref:\"input\",staticClass:\"legacy-prompt__input\",attrs:{\"label\":_vm.name,\"name\":_vm.inputName},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}})],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-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyDialogPrompt.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-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyDialogPrompt.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!./LegacyDialogPrompt.vue?vue&type=style&index=0&id=48faebc7&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./LegacyDialogPrompt.vue?vue&type=style&index=0&id=48faebc7&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LegacyDialogPrompt.vue?vue&type=template&id=48faebc7&scoped=true\"\nimport script from \"./LegacyDialogPrompt.vue?vue&type=script&lang=ts\"\nexport * from \"./LegacyDialogPrompt.vue?vue&type=script&lang=ts\"\nimport style0 from \"./LegacyDialogPrompt.vue?vue&type=style&index=0&id=48faebc7&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 \"48faebc7\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","components_LegacyDialogPromptvue_type_script_lang_ts","defineComponent","name","components","NcDialog","A","NcTextField","NcPasswordField","props","type","String","required","text","isPassword","Boolean","inputName","default","emits","data","inputValue","computed","buttons","label","t","callback","this","$emit","mounted","$nextTick","$refs","input","focus","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","LegacyDialogPromptvue_type_style_index_0_id_48faebc7_prod_scoped_true_lang_scss","locals","LegacyDialogPrompt","_vm","_c","_self","_setupProxy","attrs","on","$event","staticClass","domProps","textContent","_s","_v","ref","autocomplete","model","value","$$v","expression"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"3108-3108.js?v=71c2314a13f8bd9bb9f3","mappings":"6HAGAA,QAA8BC,GAA4BC,KAE1DF,EAAAG,KAAA,CAAAC,EAAAC,GAAA,4OAAmR,IAAOC,QAAA,EAAAC,QAAA,2DAAAC,MAAA,GAAAC,SAAA,gEAAAC,eAAA,oPAAuaC,WAAA,MAEjsB,MAAAC,EAAA,+DCPA,2DAKA,MCLyPC,GDK1OC,EAAAA,EAAAA,IAAgB,CAC3BC,KAAM,qBACNC,WAAY,CACRC,SAAQA,EAAAC,EACRC,YAAWA,EAAAD,EACXE,gBAAeA,EAAAA,GAEnBC,MAAO,CACHN,KAAM,CACFO,KAAMC,OACNC,UAAU,GAEdC,KAAM,CACFH,KAAMC,OACNC,UAAU,GAEdE,WAAY,CACRJ,KAAMK,QACNH,UAAU,GAEdI,UAAW,CACPN,KAAMC,OACNM,QAAS,iBAGjBC,MAAO,CAAC,SACRC,KAAIA,KACO,CACHC,WAAY,KAGpBC,SAAU,CACNC,OAAAA,GACI,MAAO,CACH,CACIC,OAAOC,EAAAA,EAAAA,IAAE,OAAQ,MACjBC,SAAUA,IAAMC,KAAKC,MAAM,SAAS,EAAOD,KAAKN,aAEpD,CACIG,OAAOC,EAAAA,EAAAA,IAAE,OAAQ,OACjBd,KAAM,UACNe,SAAUA,IAAMC,KAAKC,MAAM,SAAS,EAAMD,KAAKN,aAG3D,GAEJQ,OAAAA,GACIF,KAAKG,UAAU,IAAMH,KAAKI,MAAMC,OAAOC,UAC3C,2IE1CJC,EAAA,GAEAA,EAAAC,kBAA4BC,IAC5BF,EAAAG,cAAwBC,IACxBJ,EAAAK,OAAiBC,IAAAC,KAAa,aAC9BP,EAAAQ,OAAiBC,IACjBT,EAAAU,mBAA6BC,IAEhBC,IAAIC,EAAAxC,EAAO2B,GAKFa,EAAAxC,GAAWwC,EAAAxC,EAAOyC,QAAUD,EAAAxC,EAAOyC,OCLzD,MAAAC,GAXgB,WAAA1C,GACdL,EHTW,WAAkB,IAAIgD,EAAIvB,KAAKwB,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMC,YAAmBF,EAAG,WAAW,CAACG,MAAM,CAAC,iBAAiB,wBAAwB/B,QAAU2B,EAAI3B,QAAQnB,KAAO8C,EAAI9C,MAAMmD,GAAG,CAAC,cAAc,SAASC,GAAQ,OAAON,EAAItB,MAAM,SAAS,EAAOsB,EAAI7B,WAAW,IAAI,CAAC8B,EAAG,IAAI,CAACM,YAAY,sBAAsBC,SAAS,CAACC,YAAcT,EAAIU,GAAGV,EAAIpC,SAASoC,EAAIW,GAAG,KAAMX,EAAInC,WAAYoC,EAAG,kBAAkB,CAACW,IAAI,QAAQL,YAAY,uBAAuBH,MAAM,CAACS,aAAe,eAAevC,MAAQ0B,EAAI9C,KAAKA,KAAO8C,EAAIjC,WAAW+C,MAAM,CAACC,MAAOf,EAAI7B,WAAYK,SAAS,SAAUwC,GAAMhB,EAAI7B,WAAW6C,CAAG,EAAEC,WAAW,gBAAgBhB,EAAG,cAAc,CAACW,IAAI,QAAQL,YAAY,uBAAuBH,MAAM,CAAC9B,MAAQ0B,EAAI9C,KAAKA,KAAO8C,EAAIjC,WAAW+C,MAAM,CAACC,MAAOf,EAAI7B,WAAYK,SAAS,SAAUwC,GAAMhB,EAAI7B,WAAW6C,CAAG,EAAEC,WAAW,iBAAiB,EAC91B,EACsB,IGUtB,EACA,KACA,WACA","sources":["webpack:///nextcloud/core/src/components/LegacyDialogPrompt.vue?vue&type=style&index=0&id=48faebc7&prod&scoped=true&lang=scss","webpack:///nextcloud/core/src/components/LegacyDialogPrompt.vue","webpack:///nextcloud/core/src/components/LegacyDialogPrompt.vue?vue&type=script&lang=ts","webpack://nextcloud/./core/src/components/LegacyDialogPrompt.vue?25de","webpack://nextcloud/./core/src/components/LegacyDialogPrompt.vue?4e2f"],"sourcesContent":["// 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, `.legacy-prompt__text[data-v-48faebc7]{margin-block:0 .75em}.legacy-prompt__input[data-v-48faebc7]{margin-block:0 1em}[data-v-48faebc7] .legacy-prompt__dialog .dialog__actions{min-width:calc(100% - 12px);justify-content:space-between}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/LegacyDialogPrompt.vue\"],\"names\":[],\"mappings\":\"AAEC,sCACC,oBAAA,CAGD,uCACC,kBAAA,CAIF,0DACC,2BAAA,CACA,6BAAA\",\"sourcesContent\":[\"\\n.legacy-prompt {\\n\\t&__text {\\n\\t\\tmargin-block: 0 .75em;\\n\\t}\\n\\n\\t&__input {\\n\\t\\tmargin-block: 0 1em;\\n\\t}\\n}\\n\\n:deep(.legacy-prompt__dialog .dialog__actions) {\\n\\tmin-width: calc(100% - 12px);\\n\\tjustify-content: space-between;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcDialog',{attrs:{\"dialog-classes\":\"legacy-prompt__dialog\",\"buttons\":_vm.buttons,\"name\":_vm.name},on:{\"update:open\":function($event){return _vm.$emit('close', false, _vm.inputValue)}}},[_c('p',{staticClass:\"legacy-prompt__text\",domProps:{\"textContent\":_vm._s(_vm.text)}}),_vm._v(\" \"),(_vm.isPassword)?_c('NcPasswordField',{ref:\"input\",staticClass:\"legacy-prompt__input\",attrs:{\"autocomplete\":\"new-password\",\"label\":_vm.name,\"name\":_vm.inputName},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}}):_c('NcTextField',{ref:\"input\",staticClass:\"legacy-prompt__input\",attrs:{\"label\":_vm.name,\"name\":_vm.inputName},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}})],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-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyDialogPrompt.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-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyDialogPrompt.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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyDialogPrompt.vue?vue&type=style&index=0&id=48faebc7&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyDialogPrompt.vue?vue&type=style&index=0&id=48faebc7&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LegacyDialogPrompt.vue?vue&type=template&id=48faebc7&scoped=true\"\nimport script from \"./LegacyDialogPrompt.vue?vue&type=script&lang=ts\"\nexport * from \"./LegacyDialogPrompt.vue?vue&type=script&lang=ts\"\nimport style0 from \"./LegacyDialogPrompt.vue?vue&type=style&index=0&id=48faebc7&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 \"48faebc7\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","components_LegacyDialogPromptvue_type_script_lang_ts","defineComponent","name","components","NcDialog","A","NcTextField","NcPasswordField","props","type","String","required","text","isPassword","Boolean","inputName","default","emits","data","inputValue","computed","buttons","label","t","callback","this","$emit","mounted","$nextTick","$refs","input","focus","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","LegacyDialogPromptvue_type_style_index_0_id_48faebc7_prod_scoped_true_lang_scss","locals","LegacyDialogPrompt","_vm","_c","_self","_setupProxy","attrs","on","$event","staticClass","domProps","textContent","_s","_v","ref","autocomplete","model","value","$$v","expression"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/3108-3108.js.map.license b/dist/3108-3108.js.map.license new file mode 120000 index 0000000000000..493e23bb367ed --- /dev/null +++ b/dist/3108-3108.js.map.license @@ -0,0 +1 @@ +3108-3108.js.license \ No newline at end of file diff --git a/dist/3486-3486.js b/dist/3486-3486.js deleted file mode 100644 index d1fa0a3570312..0000000000000 --- a/dist/3486-3486.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[3486],{8206(e,t,n){var r=n(71354),s=n.n(r),i=n(76314),l=n.n(i)()(s());l.push([e.id,"[data-v-7b1cfb7a] .app-changelog-dialog{min-height:50vh !important}.app-changelog-dialog__text[data-v-7b1cfb7a]{padding-inline:14px}","",{version:3,sources:["webpack://./apps/updatenotification/src/components/AppChangelogDialog.vue"],names:[],mappings:"AACA,wCACC,0BAAA,CAGD,6CACC,mBAAA",sourcesContent:["\n:deep(.app-changelog-dialog) {\n\tmin-height: 50vh !important;\n}\n\n.app-changelog-dialog__text {\n\tpadding-inline: 14px;\n}\n"],sourceRoot:""}]);const a=l;n.d(t,["A",0,a])},82498(e,t,n){var r=n(71354),s=n.n(r),i=n(76314),l=n.n(i)()(s());l.push([e.id,".markdown[data-v-98b6d70a] ul{list-style:disc;padding-inline-start:20px}.markdown[data-v-98b6d70a] h3,.markdown[data-v-98b6d70a] h4,.markdown[data-v-98b6d70a] h5,.markdown[data-v-98b6d70a] h6{font-weight:600;line-height:1.5;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}.markdown[data-v-98b6d70a] h3{font-size:20px}.markdown[data-v-98b6d70a] h4{font-size:18px}.markdown[data-v-98b6d70a] h5{font-size:17px}.markdown[data-v-98b6d70a] h6{font-size:var(--default-font-size)}","",{version:3,sources:["webpack://./apps/updatenotification/src/components/Markdown.vue"],names:[],mappings:"AAGE,8BACC,eAAA,CACA,yBAAA,CAGD,wHACC,eAAA,CACA,eAAA,CACA,eAAA,CACA,kBAAA,CACA,4BAAA,CAGD,8BACC,cAAA,CAGD,8BACC,cAAA,CAGD,8BACC,cAAA,CAGD,8BACC,kCAAA",sourcesContent:["\n.markdown {\n\t:deep {\n\t\tul {\n\t\t\tlist-style: disc;\n\t\t\tpadding-inline-start: 20px;\n\t\t}\n\n\t\th3, h4, h5, h6 {\n\t\t\tfont-weight: 600;\n\t\t\tline-height: 1.5;\n\t\t\tmargin-top: 24px;\n\t\t\tmargin-bottom: 12px;\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\n\t\th3 {\n\t\t\tfont-size: 20px;\n\t\t}\n\n\t\th4 {\n\t\t\tfont-size: 18px;\n\t\t}\n\n\t\th5 {\n\t\t\tfont-size: 17px;\n\t\t}\n\n\t\th6 {\n\t\t\tfont-size: var(--default-font-size);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=l;n.d(t,["A",0,a])},73486(e,t,n){n.r(t),n.d(t,{default:()=>We});var r=n(85471),s=n(44368),i=n(53334),l=n(63814),a=n(94219),o=n(99418);var c={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function p(e){c=e}var h={exec:()=>null};function u(e,t=""){let n="string"==typeof e?e:e.source,r={replace:(e,t)=>{let s="string"==typeof t?t:t.source;return s=s.replace(k.caret,"$1"),n=n.replace(e,s),r},getRegex:()=>new RegExp(n,t)};return r}var g=(()=>{try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[\t ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}>`)},d=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,f=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,x=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,b=u(x).replace(/bull/g,f).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),m=u(x).replace(/bull/g,f).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),w=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,A=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,y=u(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",A).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),$=u(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,f).getRegex(),R="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",S=/|$))/,T=u("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",S).replace("tag",R).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),z=u(w).replace("hr",d).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",R).getRegex(),v={blockquote:u(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",z).getRegex(),code:/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,def:y,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:d,html:T,lheading:b,list:$,newline:/^(?:[ \t]*(?:\n|$))+/,paragraph:z,table:h,text:/^[^\n]+/},_=u("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",d).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",R).getRegex(),C={...v,lheading:m,table:_,paragraph:u(w).replace("hr",d).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",_).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",R).getRegex()},P={...v,html:u("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",S).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:h,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:u(w).replace("hr",d).replace("heading"," *#{1,6} *[^\n]").replace("lheading",b).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},I=/^( {2,}|\\)\n(?!\s*$)/,B=/[\p{P}\p{S}]/u,L=/[\s\p{P}\p{S}]/u,E=/[^\s\p{P}\p{S}]/u,q=u(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,L).getRegex(),D=/(?!~)[\p{P}\p{S}]/u,M=u(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",g?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Z=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,G=u(Z,"u").replace(/punct/g,B).getRegex(),N=u(Z,"u").replace(/punct/g,D).getRegex(),Q="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",H=u(Q,"gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,B).getRegex(),O=u(Q,"gu").replace(/notPunctSpace/g,/(?:[^\s\p{P}\p{S}]|~)/u).replace(/punctSpace/g,/(?!~)[\s\p{P}\p{S}]/u).replace(/punct/g,D).getRegex(),j=u("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,B).getRegex(),W=u(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,B).getRegex(),F=u("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)","gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,B).getRegex(),K=u(/\\(punct)/,"gu").replace(/punct/g,B).getRegex(),X=u(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),U=u(S).replace("(?:--\x3e|$)","--\x3e").getRegex(),V=u("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",U).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Y=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,J=u(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Y).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),ee=u(/^!?\[(label)\]\[(ref)\]/).replace("label",Y).replace("ref",A).getRegex(),te=u(/^!?\[(ref)\](?:\[\])?/).replace("ref",A).getRegex(),ne=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,re={_backpedal:h,anyPunctuation:K,autolink:X,blockSkip:M,br:I,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:h,delLDelim:h,delRDelim:h,emStrongLDelim:G,emStrongRDelimAst:H,emStrongRDelimUnd:j,escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,link:J,nolink:te,punctuation:q,reflink:ee,reflinkSearch:u("reflink|nolink(?!\\()","g").replace("reflink",ee).replace("nolink",te).getRegex(),tag:V,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},pe=e=>ce[e];function he(e,t){if(t){if(k.escapeTest.test(e))return e.replace(k.escapeReplace,pe)}else if(k.escapeTestNoEncode.test(e))return e.replace(k.escapeReplaceNoEncode,pe);return e}function ue(e){try{e=encodeURI(e).replace(k.percentDecode,"%")}catch{return null}return e}function ge(e,t){let n=e.replace(k.findPipe,(e,t,n)=>{let r=!1,s=t;for(;--s>=0&&"\\"===n[s];)r=!r;return r?"|":" |"}).split(k.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?e:ke(e,"\n")}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let e=t[0],n=function(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(null===r)return t;let s=r[1];return t.split("\n").map(e=>{let t=e.match(n.other.beginningSpace);if(null===t)return e;let[r]=t;return r.length>=s.length?e.slice(s.length):e}).join("\n")}(e,t[3]||"",this.rules);return{type:"code",raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:n}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(this.rules.other.endingHash.test(e)){let t=ke(e,"#");(this.options.pedantic||!t||this.rules.other.endingSpaceChar.test(t))&&(e=t.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:ke(t[0],"\n")}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let e=ke(t[0],"\n").split("\n"),n="",r="",s=[];for(;e.length>0;){let t,i=!1,l=[];for(t=0;t1,s={type:"list",raw:"",ordered:r,start:r?+n.slice(0,-1):"",loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:"[*+-]");let i=this.rules.other.listItemRegex(n),l=!1;for(;e;){let n=!1,r="",a="";if(!(t=i.exec(e))||this.rules.block.hr.test(e))break;r=t[0],e=e.substring(r.length);let o=de(t[2].split("\n",1)[0],t[1].length),c=e.split("\n",1)[0],p=!o.trim(),h=0;if(this.options.pedantic?(h=2,a=o.trimStart()):p?h=t[1].length+1:(h=o.search(this.rules.other.nonSpaceChar),h=h>4?1:h,a=o.slice(h),h+=t[1].length),p&&this.rules.other.blankLine.test(c)&&(r+=c+"\n",e=e.substring(c.length+1),n=!0),!n){let t=this.rules.other.nextBulletRegex(h),n=this.rules.other.hrRegex(h),s=this.rules.other.fencesBeginRegex(h),i=this.rules.other.headingBeginRegex(h),l=this.rules.other.htmlBeginRegex(h),u=this.rules.other.blockquoteBeginRegex(h);for(;e;){let g,k=e.split("\n",1)[0];if(c=k,this.options.pedantic?(c=c.replace(this.rules.other.listReplaceNesting," "),g=c):g=c.replace(this.rules.other.tabCharGlobal," "),s.test(c)||i.test(c)||l.test(c)||u.test(c)||t.test(c)||n.test(c))break;if(g.search(this.rules.other.nonSpaceChar)>=h||!c.trim())a+="\n"+g.slice(h);else{if(p||o.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||s.test(o)||i.test(o)||n.test(o))break;a+="\n"+c}p=!c.trim(),r+=k+"\n",e=e.substring(k.length+1),o=g.slice(h)}}s.loose||(l?s.loose=!0:this.rules.other.doubleBlankLine.test(r)&&(l=!0)),s.items.push({type:"list_item",raw:r,task:!!this.options.gfm&&this.rules.other.listIsTask.test(a),loose:!1,text:a,tokens:[]}),s.raw+=r}let a=s.items.at(-1);if(!a)return;a.raw=a.raw.trimEnd(),a.text=a.text.trimEnd(),s.raw=s.raw.trimEnd();for(let e of s.items){if(this.lexer.state.top=!1,e.tokens=this.lexer.blockTokens(e.text,[]),e.task){if(e.text=e.text.replace(this.rules.other.listReplaceTask,""),"text"===e.tokens[0]?.type||"paragraph"===e.tokens[0]?.type){e.tokens[0].raw=e.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),e.tokens[0].text=e.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let e=this.lexer.inlineQueue.length-1;e>=0;e--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[e].src)){this.lexer.inlineQueue[e].src=this.lexer.inlineQueue[e].src.replace(this.rules.other.listReplaceTask,"");break}}let t=this.rules.other.listTaskCheckbox.exec(e.raw);if(t){let n={type:"checkbox",raw:t[0]+" ",checked:"[ ]"!==t[0]};e.checked=n.checked,s.loose?e.tokens[0]&&["paragraph","text"].includes(e.tokens[0].type)&&"tokens"in e.tokens[0]&&e.tokens[0].tokens?(e.tokens[0].raw=n.raw+e.tokens[0].raw,e.tokens[0].text=n.raw+e.tokens[0].text,e.tokens[0].tokens.unshift(n)):e.tokens.unshift({type:"paragraph",raw:n.raw,text:n.raw,tokens:[n]}):e.tokens.unshift(n)}}if(!s.loose){let t=e.tokens.filter(e=>"space"===e.type),n=t.length>0&&t.some(e=>this.rules.other.anyLine.test(e.raw));s.loose=n}}if(s.loose)for(let e of s.items){e.loose=!0;for(let t of e.tokens)"text"===t.type&&(t.type="paragraph")}return s}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:"html",block:!0,raw:t[0],pre:"pre"===t[1]||"script"===t[1]||"style"===t[1],text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let e=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),n=t[2]?t[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",r=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:e,raw:t[0],href:n,title:r}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=ge(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,"").split("|"),s=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,"").split("\n"):[],i={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let e of r)this.rules.other.tableAlignRight.test(e)?i.align.push("right"):this.rules.other.tableAlignCenter.test(e)?i.align.push("center"):this.rules.other.tableAlignLeft.test(e)?i.align.push("left"):i.align.push(null);for(let e=0;e({text:e,tokens:this.lexer.inline(e),header:!1,align:i.align[t]})));return i}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let e=t[1].trim();return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:e,tokens:this.lexer.inline(e)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let e="\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let e=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(e)){if(!this.rules.other.endAngleBracket.test(e))return;let t=ke(e.slice(0,-1),"\\");if((e.length-t.length)%2==0)return}else{let e=function(e,t){if(-1===e.indexOf(t[1]))return-1;let n=0;for(let r=0;r0?-2:-1}(t[2],"()");if(-2===e)return;if(e>-1){let n=(0===t[0].indexOf("!")?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,n).trim(),t[3]=""}}let n=t[2],r="";if(this.options.pedantic){let e=this.rules.other.pedanticHrefTitle.exec(n);e&&(n=e[1],r=e[3])}else r=t[3]?t[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(n=this.options.pedantic&&!this.rules.other.endAngleBracket.test(e)?n.slice(1):n.slice(1,-1)),fe(t,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:r&&r.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let e=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," ").toLowerCase()];if(!e){let e=n[0].charAt(0);return{type:"text",raw:e,text:e}}return fe(n,e,n[0],this.lexer,this.rules)}}emStrong(e,t,n=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(r&&(r[1]||r[2]||r[3]||r[4])&&(!r[4]||!n.match(this.rules.other.unicodeAlphaNumeric))&&(!r[1]&&!r[3]||!n||this.rules.inline.punctuation.exec(n))){let n,s,i=[...r[0]].length-1,l=i,a=0,o="*"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(o.lastIndex=0,t=t.slice(-1*e.length+i);null!==(r=o.exec(t));){if(n=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!n)continue;if(s=[...n].length,r[3]||r[4]){l+=s;continue}if((r[5]||r[6])&&i%3&&!((i+s)%3)){a+=s;continue}if(l-=s,l>0)continue;s=Math.min(s,s+l+a);let t=[...r[0]][0].length,o=e.slice(0,i+r.index+t+s);if(Math.min(i,s)%2){let e=o.slice(1,-1);return{type:"em",raw:o,text:e,tokens:this.lexer.inlineTokens(e)}}let c=o.slice(2,-2);return{type:"strong",raw:o,text:c,tokens:this.lexer.inlineTokens(c)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(e),r=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return n&&r&&(e=e.substring(1,e.length-1)),{type:"codespan",raw:t[0],text:e}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e,t,n=""){let r=this.rules.inline.delLDelim.exec(e);if(r&&(!r[1]||!n||this.rules.inline.punctuation.exec(n))){let n,s,i=[...r[0]].length-1,l=i,a=this.rules.inline.delRDelim;for(a.lastIndex=0,t=t.slice(-1*e.length+i);null!==(r=a.exec(t));){if(n=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!n||(s=[...n].length,s!==i))continue;if(r[3]||r[4]){l+=s;continue}if(l-=s,l>0)continue;s=Math.min(s,s+l);let t=[...r[0]][0].length,a=e.slice(0,i+r.index+t+s),o=a.slice(i,-i);return{type:"del",raw:a,text:o,tokens:this.lexer.inlineTokens(o)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let e,n;return"@"===t[2]?(e=t[1],n="mailto:"+e):(e=t[1],n=e),{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,n;if("@"===t[2])e=t[0],n="mailto:"+e;else{let r;do{r=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??""}while(r!==t[0]);e=t[0],n="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let e=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:e}}}},be=class e{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||c,this.options.tokenizer=this.options.tokenizer||new xe,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:k,block:ae.normal,inline:oe.normal};this.options.pedantic?(t.block=ae.pedantic,t.inline=oe.pedantic):this.options.gfm&&(t.block=ae.gfm,this.options.breaks?t.inline=oe.breaks:t.inline=oe.gfm),this.tokenizer.rules=t}static get rules(){return{block:ae,inline:oe}}static lex(t,n){return new e(n).lex(t)}static lexInline(t,n){return new e(n).inlineTokens(t)}lex(e){e=e.replace(k.carriageReturn,"\n"),this.blockTokens(e,this.tokens);for(let e=0;e!!(r=n.call({lexer:this},e,t))&&(e=e.substring(r.raw.length),t.push(r),!0)))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let n=t.at(-1);1===r.raw.length&&void 0!==n?n.raw+="\n":t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let n=t.at(-1);"paragraph"===n?.type||"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.text,this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let n=t.at(-1);"paragraph"===n?.type||"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.raw,this.inlineQueue.at(-1).src=n.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let s=e;if(this.options.extensions?.startBlock){let t,n=1/0,r=e.slice(1);this.options.extensions.startBlock.forEach(e=>{t=e.call({lexer:this},r),"number"==typeof t&&t>=0&&(n=Math.min(n,t))}),n<1/0&&n>=0&&(s=e.substring(0,n+1))}if(this.state.top&&(r=this.tokenizer.paragraph(s))){let i=t.at(-1);n&&"paragraph"===i?.type?(i.raw+=(i.raw.endsWith("\n")?"":"\n")+r.raw,i.text+="\n"+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=i.text):t.push(r),n=s.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let n=t.at(-1);"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(e){let t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){this.tokenizer.lexer=this;let n,r=e,s=null;if(this.tokens.links){let e=Object.keys(this.tokens.links);if(e.length>0)for(;null!==(s=this.tokenizer.rules.inline.reflinkSearch.exec(r));)e.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!==(s=this.tokenizer.rules.inline.anyPunctuation.exec(r));)r=r.slice(0,s.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;null!==(s=this.tokenizer.rules.inline.blockSkip.exec(r));)n=s[2]?s[2].length:0,r=r.slice(0,s.index+n)+"["+"a".repeat(s[0].length-n-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);r=this.options.hooks?.emStrongMask?.call({lexer:this},r)??r;let i=!1,l="";for(;e;){let n;if(i||(l=""),i=!1,this.options.extensions?.inline?.some(r=>!!(n=r.call({lexer:this},e,t))&&(e=e.substring(n.raw.length),t.push(n),!0)))continue;if(n=this.tokenizer.escape(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.tag(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.link(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(n.raw.length);let r=t.at(-1);"text"===n.type&&"text"===r?.type?(r.raw+=n.raw,r.text+=n.text):t.push(n);continue}if(n=this.tokenizer.emStrong(e,r,l)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.codespan(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.br(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.del(e,r,l)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.autolink(e)){e=e.substring(n.raw.length),t.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(e))){e=e.substring(n.raw.length),t.push(n);continue}let s=e;if(this.options.extensions?.startInline){let t,n=1/0,r=e.slice(1);this.options.extensions.startInline.forEach(e=>{t=e.call({lexer:this},r),"number"==typeof t&&t>=0&&(n=Math.min(n,t))}),n<1/0&&n>=0&&(s=e.substring(0,n+1))}if(n=this.tokenizer.inlineText(s)){e=e.substring(n.raw.length),"_"!==n.raw.slice(-1)&&(l=n.raw.slice(-1)),i=!0;let r=t.at(-1);"text"===r?.type?(r.raw+=n.raw,r.text+=n.text):t.push(n);continue}if(e){let t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return t}},me=class{options;parser;constructor(e){this.options=e||c}space(e){return""}code({text:e,lang:t,escaped:n}){let r=(t||"").match(k.notSpaceStart)?.[0],s=e.replace(k.endingNewline,"")+"\n";return r?'
'+(n?s:he(s,!0))+"
\n":"
"+(n?s:he(s,!0))+"
\n"}blockquote({tokens:e}){return`
\n${this.parser.parse(e)}
\n`}html({text:e}){return e}def(e){return""}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)}\n`}hr(e){return"
\n"}list(e){let t=e.ordered,n=e.start,r="";for(let t=0;t\n"+r+"\n"}listitem(e){return`
  • ${this.parser.parse(e.tokens)}
  • \n`}checkbox({checked:e}){return" '}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    \n`}table(e){let t="",n="";for(let t=0;t${r}`),"\n\n"+t+"\n"+r+"
    \n"}tablerow({text:e}){return`\n${e}\n`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`\n`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${he(e,!0)}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),s=ue(e);if(null===s)return r;let i='
    ",i}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let s=ue(e);if(null===s)return he(n);let i=`${he(n)}{let s=e[r].flat(1/0);n=n.concat(this.walkTokens(s,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw new Error("extension name required");if("renderer"in e){let n=t.renderers[e.name];t.renderers[e.name]=n?function(...t){let r=e.renderer.apply(this,t);return!1===r&&(r=n.apply(this,t)),r}:e.renderer}if("tokenizer"in e){if(!e.level||"block"!==e.level&&"inline"!==e.level)throw new Error("extension level must be 'block' or 'inline'");let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&("block"===e.level?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:"inline"===e.level&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}"childTokens"in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new me(this.defaults);for(let n in e.renderer){if(!(n in t))throw new Error(`renderer '${n}' does not exist`);if(["options","parser"].includes(n))continue;let r=n,s=e.renderer[r],i=t[r];t[r]=(...e)=>{let n=s.apply(t,e);return!1===n&&(n=i.apply(t,e)),n||""}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new xe(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw new Error(`tokenizer '${n}' does not exist`);if(["options","rules","lexer"].includes(n))continue;let r=n,s=e.tokenizer[r],i=t[r];t[r]=(...e)=>{let n=s.apply(t,e);return!1===n&&(n=i.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new ye;for(let n in e.hooks){if(!(n in t))throw new Error(`hook '${n}' does not exist`);if(["options","block"].includes(n))continue;let r=n,s=e.hooks[r],i=t[r];ye.passThroughHooks.has(n)?t[r]=e=>{if(this.defaults.async&&ye.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await s.call(t,e);return i.call(t,n)})();let r=s.call(t,e);return i.call(t,r)}:t[r]=(...e)=>{if(this.defaults.async)return(async()=>{let n=await s.apply(t,e);return!1===n&&(n=await i.apply(t,e)),n})();let n=s.apply(t,e);return!1===n&&(n=i.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return be.lex(e,t??this.defaults)}parser(e,t){return Ae.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},s={...this.defaults,...r},i=this.onError(!!s.silent,!!s.async);if(!0===this.defaults.async&&!1===r.async)return i(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||null===t)return i(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof t)return i(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));if(s.hooks&&(s.hooks.options=s,s.hooks.block=e),s.async)return(async()=>{let n=s.hooks?await s.hooks.preprocess(t):t,r=await(s.hooks?await s.hooks.provideLexer(e):e?be.lex:be.lexInline)(n,s),i=s.hooks?await s.hooks.processAllTokens(r):r;s.walkTokens&&await Promise.all(this.walkTokens(i,s.walkTokens));let l=await(s.hooks?await s.hooks.provideParser(e):e?Ae.parse:Ae.parseInline)(i,s);return s.hooks?await s.hooks.postprocess(l):l})().catch(i);try{s.hooks&&(t=s.hooks.preprocess(t));let n=(s.hooks?s.hooks.provideLexer(e):e?be.lex:be.lexInline)(t,s);s.hooks&&(n=s.hooks.processAllTokens(n)),s.walkTokens&&this.walkTokens(n,s.walkTokens);let r=(s.hooks?s.hooks.provideParser(e):e?Ae.parse:Ae.parseInline)(n,s);return s.hooks&&(r=s.hooks.postprocess(r)),r}catch(e){return i(e)}}}onError(e,t){return n=>{if(n.message+="\nPlease report this to https://github.com/markedjs/marked.",e){let e="

    An error occurred:

    "+he(n.message+"",!0)+"
    ";return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function Re(e,t){return $e.parse(e,t)}Re.options=Re.setOptions=function(e){return $e.setOptions(e),Re.defaults=$e.defaults,p(Re.defaults),Re},Re.getDefaults=function(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}},Re.defaults=c,Re.use=function(...e){return $e.use(...e),Re.defaults=$e.defaults,p(Re.defaults),Re},Re.walkTokens=function(e,t){return $e.walkTokens(e,t)},Re.parseInline=$e.parseInline,Re.Parser=Ae,Re.parser=Ae.parse,Re.Renderer=me,Re.TextRenderer=we,Re.Lexer=be,Re.lexer=be.lex,Re.Tokenizer=xe,Re.Hooks=ye,Re.parse=Re,Re.options,Re.setOptions,Re.use,Re.walkTokens,Re.parseInline,Ae.parse,be.lex;const Se=(0,r.pM)({__name:"Markdown",props:{markdown:null,minHeadingLevel:{default:2}},setup(e){const t=e,{html:n}=function(e,t){const n=(0,r.EW)(()=>Math.min(Math.max(t.value??1,1),6)),s=new Re.Renderer;return s.link=function(e,t,n){let r=`
    ",r},s.image=function(e,t,n){return n||(t??"")},s.heading=(e,t)=>{const r=Math.max(n.value,t);return`${e}`},{html:(0,r.EW)(()=>o.A.sanitize(Re((e.value??"").trim(),{renderer:s,gfm:!1,breaks:!1,pedantic:!1}),{SAFE_FOR_JQUERY:!0,ALLOWED_TAGS:["h1","h2","h3","h4","h5","h6","strong","p","a","ul","ol","li","em","del","blockquote"]}))}}((0,r.lW)(t,"markdown"),(0,r.lW)(t,"minHeadingLevel"));return{__sfc:!0,props:t,html:n}}});var Te=n(85072),ze=n.n(Te),ve=n(97825),_e=n.n(ve),Ce=n(77659),Pe=n.n(Ce),Ie=n(55056),Be=n.n(Ie),Le=n(10540),Ee=n.n(Le),qe=n(41113),De=n.n(qe),Me=n(82498),Ze={};Ze.styleTagTransform=De(),Ze.setAttributes=Be(),Ze.insert=Pe().bind(null,"head"),Ze.domAPI=_e(),Ze.insertStyleElement=Ee(),ze()(Me.A,Ze),Me.A&&Me.A.locals&&Me.A.locals;var Ge=n(14486);const Ne=(0,Ge.A)(Se,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("div",{staticClass:"markdown",domProps:{innerHTML:e._s(n.html)}})},[],!1,null,"98b6d70a",null).exports,Qe=(0,n(35947).YK)().detectLogLevel().setApp("updatenotification").build(),He=(0,r.pM)({__name:"AppChangelogDialog",props:{appId:null,version:{default:void 0},open:{type:Boolean,default:!0}},emits:["dismiss","update:open"],setup(e,{emit:t}){const n=e,o=[{label:(0,i.Tl)("updatenotification","Give feedback"),callback:()=>{window.open(`https://apps.nextcloud.com/apps/${n.appId}#comments`,"_blank","noreferrer noopener")}},{label:(0,i.Tl)("updatenotification","Get started"),variant:"primary",callback:()=>{t("dismiss"),t("update:open",!1)}}],c=(0,r.KR)(n.appId),p=(0,r.KR)(n.version??""),h=(0,r.KR)("");return(0,r.nT)(()=>{const e=n.version?(0,l.KT)("/apps/updatenotification/api/v1/changelog/{app}?version={version}",{version:n.version,app:n.appId}):(0,l.KT)("/apps/updatenotification/api/v1/changelog/{app}",{version:n.version,app:n.appId});s.Ay.get(e).then(({data:e})=>{c.value=e.ocs.data.appName,p.value=e.ocs.data.version,h.value=e.ocs.data.content}).catch(e=>{404===e?.response?.status?(c.value=n.appId,h.value=(0,i.Tl)("updatenotification","No changelog available")):(Qe.error("Failed to load changelog entry",e),t("update:open",!1))})}),{__sfc:!0,props:n,emit:t,dialogButtons:o,appName:c,appVersion:p,markdown:h,t:i.Tl,NcDialog:a.A,Markdown:Ne}}});var Oe=n(8206),je={};je.styleTagTransform=De(),je.setAttributes=Be(),je.insert=Pe().bind(null,"head"),je.domAPI=_e(),je.insertStyleElement=Ee(),ze()(Oe.A,je),Oe.A&&Oe.A.locals&&Oe.A.locals;const We=(0,Ge.A)(He,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t(n.NcDialog,{attrs:{"content-classes":"app-changelog-dialog",buttons:n.dialogButtons,name:n.t("updatenotification","What's new in {app} {version}",{app:n.appName,version:n.appVersion}),open:e.open&&void 0!==n.markdown,size:"normal"},on:{"update:open":function(t){return e.$emit("update:open",t)}}},[t(n.Markdown,{staticClass:"app-changelog-dialog__text",attrs:{markdown:n.markdown,"min-heading-level":3}})],1)},[],!1,null,"7b1cfb7a",null).exports}}]); -//# sourceMappingURL=3486-3486.js.map?v=14a6d8aa94af8ac01d2e \ No newline at end of file diff --git a/dist/3486-3486.js.map.license b/dist/3486-3486.js.map.license deleted file mode 120000 index 9fe2c0be99838..0000000000000 --- a/dist/3486-3486.js.map.license +++ /dev/null @@ -1 +0,0 @@ -3486-3486.js.license \ No newline at end of file diff --git a/dist/3874-3874.js b/dist/3874-3874.js new file mode 100644 index 0000000000000..cbf6ad5cf1a74 --- /dev/null +++ b/dist/3874-3874.js @@ -0,0 +1,2 @@ +"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[3874],{32971(e,t,n){var r=n(71354),s=n.n(r),i=n(76314),l=n.n(i)()(s());l.push([e.id,"[data-v-7b1cfb7a] .app-changelog-dialog{min-height:50vh !important}.app-changelog-dialog__text[data-v-7b1cfb7a]{padding-inline:14px}","",{version:3,sources:["webpack://./apps/updatenotification/src/components/AppChangelogDialog.vue"],names:[],mappings:"AACA,wCACC,0BAAA,CAGD,6CACC,mBAAA",sourcesContent:["\n:deep(.app-changelog-dialog) {\n\tmin-height: 50vh !important;\n}\n\n.app-changelog-dialog__text {\n\tpadding-inline: 14px;\n}\n"],sourceRoot:""}]);const a=l;n.d(t,["A",0,a])},51611(e,t,n){var r=n(71354),s=n.n(r),i=n(76314),l=n.n(i)()(s());l.push([e.id,".markdown[data-v-98b6d70a] ul{list-style:disc;padding-inline-start:20px}.markdown[data-v-98b6d70a] h3,.markdown[data-v-98b6d70a] h4,.markdown[data-v-98b6d70a] h5,.markdown[data-v-98b6d70a] h6{font-weight:600;line-height:1.5;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}.markdown[data-v-98b6d70a] h3{font-size:20px}.markdown[data-v-98b6d70a] h4{font-size:18px}.markdown[data-v-98b6d70a] h5{font-size:17px}.markdown[data-v-98b6d70a] h6{font-size:var(--default-font-size)}","",{version:3,sources:["webpack://./apps/updatenotification/src/components/Markdown.vue"],names:[],mappings:"AAGE,8BACC,eAAA,CACA,yBAAA,CAGD,wHACC,eAAA,CACA,eAAA,CACA,eAAA,CACA,kBAAA,CACA,4BAAA,CAGD,8BACC,cAAA,CAGD,8BACC,cAAA,CAGD,8BACC,cAAA,CAGD,8BACC,kCAAA",sourcesContent:["\n.markdown {\n\t:deep {\n\t\tul {\n\t\t\tlist-style: disc;\n\t\t\tpadding-inline-start: 20px;\n\t\t}\n\n\t\th3, h4, h5, h6 {\n\t\t\tfont-weight: 600;\n\t\t\tline-height: 1.5;\n\t\t\tmargin-top: 24px;\n\t\t\tmargin-bottom: 12px;\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\n\t\th3 {\n\t\t\tfont-size: 20px;\n\t\t}\n\n\t\th4 {\n\t\t\tfont-size: 18px;\n\t\t}\n\n\t\th5 {\n\t\t\tfont-size: 17px;\n\t\t}\n\n\t\th6 {\n\t\t\tfont-size: var(--default-font-size);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=l;n.d(t,["A",0,a])},53874(e,t,n){n.r(t),n.d(t,{default:()=>We});var r=n(85471),s=n(44368),i=n(53334),l=n(63814),a=n(94219),o=n(99418);var c={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function p(e){c=e}var h={exec:()=>null};function u(e,t=""){let n="string"==typeof e?e:e.source,r={replace:(e,t)=>{let s="string"==typeof t?t:t.source;return s=s.replace(k.caret,"$1"),n=n.replace(e,s),r},getRegex:()=>new RegExp(n,t)};return r}var g=(()=>{try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[\t ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}>`)},d=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,f=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,x=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,b=u(x).replace(/bull/g,f).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),m=u(x).replace(/bull/g,f).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),w=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,A=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,y=u(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",A).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),$=u(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,f).getRegex(),R="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",S=/|$))/,T=u("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",S).replace("tag",R).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),z=u(w).replace("hr",d).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",R).getRegex(),v={blockquote:u(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",z).getRegex(),code:/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,def:y,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:d,html:T,lheading:b,list:$,newline:/^(?:[ \t]*(?:\n|$))+/,paragraph:z,table:h,text:/^[^\n]+/},_=u("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",d).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",R).getRegex(),C={...v,lheading:m,table:_,paragraph:u(w).replace("hr",d).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",_).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",R).getRegex()},P={...v,html:u("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",S).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:h,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:u(w).replace("hr",d).replace("heading"," *#{1,6} *[^\n]").replace("lheading",b).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},I=/^( {2,}|\\)\n(?!\s*$)/,B=/[\p{P}\p{S}]/u,L=/[\s\p{P}\p{S}]/u,E=/[^\s\p{P}\p{S}]/u,q=u(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,L).getRegex(),D=/(?!~)[\p{P}\p{S}]/u,M=u(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",g?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Z=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,G=u(Z,"u").replace(/punct/g,B).getRegex(),N=u(Z,"u").replace(/punct/g,D).getRegex(),Q="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",H=u(Q,"gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,B).getRegex(),O=u(Q,"gu").replace(/notPunctSpace/g,/(?:[^\s\p{P}\p{S}]|~)/u).replace(/punctSpace/g,/(?!~)[\s\p{P}\p{S}]/u).replace(/punct/g,D).getRegex(),j=u("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,B).getRegex(),W=u(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,B).getRegex(),F=u("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)","gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,B).getRegex(),K=u(/\\(punct)/,"gu").replace(/punct/g,B).getRegex(),X=u(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),U=u(S).replace("(?:--\x3e|$)","--\x3e").getRegex(),V=u("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",U).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Y=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,J=u(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Y).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),ee=u(/^!?\[(label)\]\[(ref)\]/).replace("label",Y).replace("ref",A).getRegex(),te=u(/^!?\[(ref)\](?:\[\])?/).replace("ref",A).getRegex(),ne=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,re={_backpedal:h,anyPunctuation:K,autolink:X,blockSkip:M,br:I,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:h,delLDelim:h,delRDelim:h,emStrongLDelim:G,emStrongRDelimAst:H,emStrongRDelimUnd:j,escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,link:J,nolink:te,punctuation:q,reflink:ee,reflinkSearch:u("reflink|nolink(?!\\()","g").replace("reflink",ee).replace("nolink",te).getRegex(),tag:V,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},pe=e=>ce[e];function he(e,t){if(t){if(k.escapeTest.test(e))return e.replace(k.escapeReplace,pe)}else if(k.escapeTestNoEncode.test(e))return e.replace(k.escapeReplaceNoEncode,pe);return e}function ue(e){try{e=encodeURI(e).replace(k.percentDecode,"%")}catch{return null}return e}function ge(e,t){let n=e.replace(k.findPipe,(e,t,n)=>{let r=!1,s=t;for(;--s>=0&&"\\"===n[s];)r=!r;return r?"|":" |"}).split(k.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?e:ke(e,"\n")}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let e=t[0],n=function(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(null===r)return t;let s=r[1];return t.split("\n").map(e=>{let t=e.match(n.other.beginningSpace);if(null===t)return e;let[r]=t;return r.length>=s.length?e.slice(s.length):e}).join("\n")}(e,t[3]||"",this.rules);return{type:"code",raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:n}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(this.rules.other.endingHash.test(e)){let t=ke(e,"#");(this.options.pedantic||!t||this.rules.other.endingSpaceChar.test(t))&&(e=t.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:ke(t[0],"\n")}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let e=ke(t[0],"\n").split("\n"),n="",r="",s=[];for(;e.length>0;){let t,i=!1,l=[];for(t=0;t1,s={type:"list",raw:"",ordered:r,start:r?+n.slice(0,-1):"",loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:"[*+-]");let i=this.rules.other.listItemRegex(n),l=!1;for(;e;){let n=!1,r="",a="";if(!(t=i.exec(e))||this.rules.block.hr.test(e))break;r=t[0],e=e.substring(r.length);let o=de(t[2].split("\n",1)[0],t[1].length),c=e.split("\n",1)[0],p=!o.trim(),h=0;if(this.options.pedantic?(h=2,a=o.trimStart()):p?h=t[1].length+1:(h=o.search(this.rules.other.nonSpaceChar),h=h>4?1:h,a=o.slice(h),h+=t[1].length),p&&this.rules.other.blankLine.test(c)&&(r+=c+"\n",e=e.substring(c.length+1),n=!0),!n){let t=this.rules.other.nextBulletRegex(h),n=this.rules.other.hrRegex(h),s=this.rules.other.fencesBeginRegex(h),i=this.rules.other.headingBeginRegex(h),l=this.rules.other.htmlBeginRegex(h),u=this.rules.other.blockquoteBeginRegex(h);for(;e;){let g,k=e.split("\n",1)[0];if(c=k,this.options.pedantic?(c=c.replace(this.rules.other.listReplaceNesting," "),g=c):g=c.replace(this.rules.other.tabCharGlobal," "),s.test(c)||i.test(c)||l.test(c)||u.test(c)||t.test(c)||n.test(c))break;if(g.search(this.rules.other.nonSpaceChar)>=h||!c.trim())a+="\n"+g.slice(h);else{if(p||o.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||s.test(o)||i.test(o)||n.test(o))break;a+="\n"+c}p=!c.trim(),r+=k+"\n",e=e.substring(k.length+1),o=g.slice(h)}}s.loose||(l?s.loose=!0:this.rules.other.doubleBlankLine.test(r)&&(l=!0)),s.items.push({type:"list_item",raw:r,task:!!this.options.gfm&&this.rules.other.listIsTask.test(a),loose:!1,text:a,tokens:[]}),s.raw+=r}let a=s.items.at(-1);if(!a)return;a.raw=a.raw.trimEnd(),a.text=a.text.trimEnd(),s.raw=s.raw.trimEnd();for(let e of s.items){if(this.lexer.state.top=!1,e.tokens=this.lexer.blockTokens(e.text,[]),e.task){if(e.text=e.text.replace(this.rules.other.listReplaceTask,""),"text"===e.tokens[0]?.type||"paragraph"===e.tokens[0]?.type){e.tokens[0].raw=e.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),e.tokens[0].text=e.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let e=this.lexer.inlineQueue.length-1;e>=0;e--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[e].src)){this.lexer.inlineQueue[e].src=this.lexer.inlineQueue[e].src.replace(this.rules.other.listReplaceTask,"");break}}let t=this.rules.other.listTaskCheckbox.exec(e.raw);if(t){let n={type:"checkbox",raw:t[0]+" ",checked:"[ ]"!==t[0]};e.checked=n.checked,s.loose?e.tokens[0]&&["paragraph","text"].includes(e.tokens[0].type)&&"tokens"in e.tokens[0]&&e.tokens[0].tokens?(e.tokens[0].raw=n.raw+e.tokens[0].raw,e.tokens[0].text=n.raw+e.tokens[0].text,e.tokens[0].tokens.unshift(n)):e.tokens.unshift({type:"paragraph",raw:n.raw,text:n.raw,tokens:[n]}):e.tokens.unshift(n)}}if(!s.loose){let t=e.tokens.filter(e=>"space"===e.type),n=t.length>0&&t.some(e=>this.rules.other.anyLine.test(e.raw));s.loose=n}}if(s.loose)for(let e of s.items){e.loose=!0;for(let t of e.tokens)"text"===t.type&&(t.type="paragraph")}return s}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:"html",block:!0,raw:t[0],pre:"pre"===t[1]||"script"===t[1]||"style"===t[1],text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let e=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),n=t[2]?t[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",r=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:e,raw:t[0],href:n,title:r}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=ge(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,"").split("|"),s=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,"").split("\n"):[],i={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let e of r)this.rules.other.tableAlignRight.test(e)?i.align.push("right"):this.rules.other.tableAlignCenter.test(e)?i.align.push("center"):this.rules.other.tableAlignLeft.test(e)?i.align.push("left"):i.align.push(null);for(let e=0;e({text:e,tokens:this.lexer.inline(e),header:!1,align:i.align[t]})));return i}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let e=t[1].trim();return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:e,tokens:this.lexer.inline(e)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let e="\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let e=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(e)){if(!this.rules.other.endAngleBracket.test(e))return;let t=ke(e.slice(0,-1),"\\");if((e.length-t.length)%2==0)return}else{let e=function(e,t){if(-1===e.indexOf(t[1]))return-1;let n=0;for(let r=0;r0?-2:-1}(t[2],"()");if(-2===e)return;if(e>-1){let n=(0===t[0].indexOf("!")?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,n).trim(),t[3]=""}}let n=t[2],r="";if(this.options.pedantic){let e=this.rules.other.pedanticHrefTitle.exec(n);e&&(n=e[1],r=e[3])}else r=t[3]?t[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(n=this.options.pedantic&&!this.rules.other.endAngleBracket.test(e)?n.slice(1):n.slice(1,-1)),fe(t,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:r&&r.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let e=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," ").toLowerCase()];if(!e){let e=n[0].charAt(0);return{type:"text",raw:e,text:e}}return fe(n,e,n[0],this.lexer,this.rules)}}emStrong(e,t,n=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(r&&(r[1]||r[2]||r[3]||r[4])&&(!r[4]||!n.match(this.rules.other.unicodeAlphaNumeric))&&(!r[1]&&!r[3]||!n||this.rules.inline.punctuation.exec(n))){let n,s,i=[...r[0]].length-1,l=i,a=0,o="*"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(o.lastIndex=0,t=t.slice(-1*e.length+i);null!==(r=o.exec(t));){if(n=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!n)continue;if(s=[...n].length,r[3]||r[4]){l+=s;continue}if((r[5]||r[6])&&i%3&&!((i+s)%3)){a+=s;continue}if(l-=s,l>0)continue;s=Math.min(s,s+l+a);let t=[...r[0]][0].length,o=e.slice(0,i+r.index+t+s);if(Math.min(i,s)%2){let e=o.slice(1,-1);return{type:"em",raw:o,text:e,tokens:this.lexer.inlineTokens(e)}}let c=o.slice(2,-2);return{type:"strong",raw:o,text:c,tokens:this.lexer.inlineTokens(c)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(e),r=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return n&&r&&(e=e.substring(1,e.length-1)),{type:"codespan",raw:t[0],text:e}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e,t,n=""){let r=this.rules.inline.delLDelim.exec(e);if(r&&(!r[1]||!n||this.rules.inline.punctuation.exec(n))){let n,s,i=[...r[0]].length-1,l=i,a=this.rules.inline.delRDelim;for(a.lastIndex=0,t=t.slice(-1*e.length+i);null!==(r=a.exec(t));){if(n=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!n||(s=[...n].length,s!==i))continue;if(r[3]||r[4]){l+=s;continue}if(l-=s,l>0)continue;s=Math.min(s,s+l);let t=[...r[0]][0].length,a=e.slice(0,i+r.index+t+s),o=a.slice(i,-i);return{type:"del",raw:a,text:o,tokens:this.lexer.inlineTokens(o)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let e,n;return"@"===t[2]?(e=t[1],n="mailto:"+e):(e=t[1],n=e),{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,n;if("@"===t[2])e=t[0],n="mailto:"+e;else{let r;do{r=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??""}while(r!==t[0]);e=t[0],n="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let e=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:e}}}},be=class e{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||c,this.options.tokenizer=this.options.tokenizer||new xe,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:k,block:ae.normal,inline:oe.normal};this.options.pedantic?(t.block=ae.pedantic,t.inline=oe.pedantic):this.options.gfm&&(t.block=ae.gfm,this.options.breaks?t.inline=oe.breaks:t.inline=oe.gfm),this.tokenizer.rules=t}static get rules(){return{block:ae,inline:oe}}static lex(t,n){return new e(n).lex(t)}static lexInline(t,n){return new e(n).inlineTokens(t)}lex(e){e=e.replace(k.carriageReturn,"\n"),this.blockTokens(e,this.tokens);for(let e=0;e!!(r=n.call({lexer:this},e,t))&&(e=e.substring(r.raw.length),t.push(r),!0)))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let n=t.at(-1);1===r.raw.length&&void 0!==n?n.raw+="\n":t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let n=t.at(-1);"paragraph"===n?.type||"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.text,this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let n=t.at(-1);"paragraph"===n?.type||"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.raw,this.inlineQueue.at(-1).src=n.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let s=e;if(this.options.extensions?.startBlock){let t,n=1/0,r=e.slice(1);this.options.extensions.startBlock.forEach(e=>{t=e.call({lexer:this},r),"number"==typeof t&&t>=0&&(n=Math.min(n,t))}),n<1/0&&n>=0&&(s=e.substring(0,n+1))}if(this.state.top&&(r=this.tokenizer.paragraph(s))){let i=t.at(-1);n&&"paragraph"===i?.type?(i.raw+=(i.raw.endsWith("\n")?"":"\n")+r.raw,i.text+="\n"+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=i.text):t.push(r),n=s.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let n=t.at(-1);"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(e){let t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){this.tokenizer.lexer=this;let n,r=e,s=null;if(this.tokens.links){let e=Object.keys(this.tokens.links);if(e.length>0)for(;null!==(s=this.tokenizer.rules.inline.reflinkSearch.exec(r));)e.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!==(s=this.tokenizer.rules.inline.anyPunctuation.exec(r));)r=r.slice(0,s.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;null!==(s=this.tokenizer.rules.inline.blockSkip.exec(r));)n=s[2]?s[2].length:0,r=r.slice(0,s.index+n)+"["+"a".repeat(s[0].length-n-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);r=this.options.hooks?.emStrongMask?.call({lexer:this},r)??r;let i=!1,l="";for(;e;){let n;if(i||(l=""),i=!1,this.options.extensions?.inline?.some(r=>!!(n=r.call({lexer:this},e,t))&&(e=e.substring(n.raw.length),t.push(n),!0)))continue;if(n=this.tokenizer.escape(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.tag(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.link(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(n.raw.length);let r=t.at(-1);"text"===n.type&&"text"===r?.type?(r.raw+=n.raw,r.text+=n.text):t.push(n);continue}if(n=this.tokenizer.emStrong(e,r,l)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.codespan(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.br(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.del(e,r,l)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.autolink(e)){e=e.substring(n.raw.length),t.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(e))){e=e.substring(n.raw.length),t.push(n);continue}let s=e;if(this.options.extensions?.startInline){let t,n=1/0,r=e.slice(1);this.options.extensions.startInline.forEach(e=>{t=e.call({lexer:this},r),"number"==typeof t&&t>=0&&(n=Math.min(n,t))}),n<1/0&&n>=0&&(s=e.substring(0,n+1))}if(n=this.tokenizer.inlineText(s)){e=e.substring(n.raw.length),"_"!==n.raw.slice(-1)&&(l=n.raw.slice(-1)),i=!0;let r=t.at(-1);"text"===r?.type?(r.raw+=n.raw,r.text+=n.text):t.push(n);continue}if(e){let t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return t}},me=class{options;parser;constructor(e){this.options=e||c}space(e){return""}code({text:e,lang:t,escaped:n}){let r=(t||"").match(k.notSpaceStart)?.[0],s=e.replace(k.endingNewline,"")+"\n";return r?'
    '+(n?s:he(s,!0))+"
    \n":"
    "+(n?s:he(s,!0))+"
    \n"}blockquote({tokens:e}){return`
    \n${this.parser.parse(e)}
    \n`}html({text:e}){return e}def(e){return""}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)}\n`}hr(e){return"
    \n"}list(e){let t=e.ordered,n=e.start,r="";for(let t=0;t\n"+r+"\n"}listitem(e){return`
  • ${this.parser.parse(e.tokens)}
  • \n`}checkbox({checked:e}){return" '}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    \n`}table(e){let t="",n="";for(let t=0;t${r}`),"\n\n"+t+"\n"+r+"
    \n"}tablerow({text:e}){return`\n${e}\n`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`\n`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${he(e,!0)}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),s=ue(e);if(null===s)return r;let i='
    ",i}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let s=ue(e);if(null===s)return he(n);let i=`${he(n)}{let s=e[r].flat(1/0);n=n.concat(this.walkTokens(s,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw new Error("extension name required");if("renderer"in e){let n=t.renderers[e.name];t.renderers[e.name]=n?function(...t){let r=e.renderer.apply(this,t);return!1===r&&(r=n.apply(this,t)),r}:e.renderer}if("tokenizer"in e){if(!e.level||"block"!==e.level&&"inline"!==e.level)throw new Error("extension level must be 'block' or 'inline'");let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&("block"===e.level?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:"inline"===e.level&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}"childTokens"in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new me(this.defaults);for(let n in e.renderer){if(!(n in t))throw new Error(`renderer '${n}' does not exist`);if(["options","parser"].includes(n))continue;let r=n,s=e.renderer[r],i=t[r];t[r]=(...e)=>{let n=s.apply(t,e);return!1===n&&(n=i.apply(t,e)),n||""}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new xe(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw new Error(`tokenizer '${n}' does not exist`);if(["options","rules","lexer"].includes(n))continue;let r=n,s=e.tokenizer[r],i=t[r];t[r]=(...e)=>{let n=s.apply(t,e);return!1===n&&(n=i.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new ye;for(let n in e.hooks){if(!(n in t))throw new Error(`hook '${n}' does not exist`);if(["options","block"].includes(n))continue;let r=n,s=e.hooks[r],i=t[r];ye.passThroughHooks.has(n)?t[r]=e=>{if(this.defaults.async&&ye.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await s.call(t,e);return i.call(t,n)})();let r=s.call(t,e);return i.call(t,r)}:t[r]=(...e)=>{if(this.defaults.async)return(async()=>{let n=await s.apply(t,e);return!1===n&&(n=await i.apply(t,e)),n})();let n=s.apply(t,e);return!1===n&&(n=i.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return be.lex(e,t??this.defaults)}parser(e,t){return Ae.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},s={...this.defaults,...r},i=this.onError(!!s.silent,!!s.async);if(!0===this.defaults.async&&!1===r.async)return i(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||null===t)return i(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof t)return i(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));if(s.hooks&&(s.hooks.options=s,s.hooks.block=e),s.async)return(async()=>{let n=s.hooks?await s.hooks.preprocess(t):t,r=await(s.hooks?await s.hooks.provideLexer(e):e?be.lex:be.lexInline)(n,s),i=s.hooks?await s.hooks.processAllTokens(r):r;s.walkTokens&&await Promise.all(this.walkTokens(i,s.walkTokens));let l=await(s.hooks?await s.hooks.provideParser(e):e?Ae.parse:Ae.parseInline)(i,s);return s.hooks?await s.hooks.postprocess(l):l})().catch(i);try{s.hooks&&(t=s.hooks.preprocess(t));let n=(s.hooks?s.hooks.provideLexer(e):e?be.lex:be.lexInline)(t,s);s.hooks&&(n=s.hooks.processAllTokens(n)),s.walkTokens&&this.walkTokens(n,s.walkTokens);let r=(s.hooks?s.hooks.provideParser(e):e?Ae.parse:Ae.parseInline)(n,s);return s.hooks&&(r=s.hooks.postprocess(r)),r}catch(e){return i(e)}}}onError(e,t){return n=>{if(n.message+="\nPlease report this to https://github.com/markedjs/marked.",e){let e="

    An error occurred:

    "+he(n.message+"",!0)+"
    ";return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function Re(e,t){return $e.parse(e,t)}Re.options=Re.setOptions=function(e){return $e.setOptions(e),Re.defaults=$e.defaults,p(Re.defaults),Re},Re.getDefaults=function(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}},Re.defaults=c,Re.use=function(...e){return $e.use(...e),Re.defaults=$e.defaults,p(Re.defaults),Re},Re.walkTokens=function(e,t){return $e.walkTokens(e,t)},Re.parseInline=$e.parseInline,Re.Parser=Ae,Re.parser=Ae.parse,Re.Renderer=me,Re.TextRenderer=we,Re.Lexer=be,Re.lexer=be.lex,Re.Tokenizer=xe,Re.Hooks=ye,Re.parse=Re,Re.options,Re.setOptions,Re.use,Re.walkTokens,Re.parseInline,Ae.parse,be.lex;const Se=(0,r.pM)({__name:"Markdown",props:{markdown:null,minHeadingLevel:{default:2}},setup(e){const t=e,{html:n}=function(e,t){const n=(0,r.EW)(()=>Math.min(Math.max(t.value??1,1),6)),s=new Re.Renderer;return s.link=function(e,t,n){let r=`
    ",r},s.image=function(e,t,n){return n||(t??"")},s.heading=(e,t)=>{const r=Math.max(n.value,t);return`${e}`},{html:(0,r.EW)(()=>o.A.sanitize(Re((e.value??"").trim(),{renderer:s,gfm:!1,breaks:!1,pedantic:!1}),{SAFE_FOR_JQUERY:!0,ALLOWED_TAGS:["h1","h2","h3","h4","h5","h6","strong","p","a","ul","ol","li","em","del","blockquote"]}))}}((0,r.lW)(t,"markdown"),(0,r.lW)(t,"minHeadingLevel"));return{__sfc:!0,props:t,html:n}}});var Te=n(85072),ze=n.n(Te),ve=n(97825),_e=n.n(ve),Ce=n(77659),Pe=n.n(Ce),Ie=n(55056),Be=n.n(Ie),Le=n(10540),Ee=n.n(Le),qe=n(41113),De=n.n(qe),Me=n(51611),Ze={};Ze.styleTagTransform=De(),Ze.setAttributes=Be(),Ze.insert=Pe().bind(null,"head"),Ze.domAPI=_e(),Ze.insertStyleElement=Ee(),ze()(Me.A,Ze),Me.A&&Me.A.locals&&Me.A.locals;var Ge=n(14486);const Ne=(0,Ge.A)(Se,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t("div",{staticClass:"markdown",domProps:{innerHTML:e._s(n.html)}})},[],!1,null,"98b6d70a",null).exports,Qe=(0,n(35947).YK)().detectLogLevel().setApp("updatenotification").build(),He=(0,r.pM)({__name:"AppChangelogDialog",props:{appId:null,version:{default:void 0},open:{type:Boolean,default:!0}},emits:["dismiss","update:open"],setup(e,{emit:t}){const n=e,o=[{label:(0,i.Tl)("updatenotification","Give feedback"),callback:()=>{window.open(`https://apps.nextcloud.com/apps/${n.appId}#comments`,"_blank","noreferrer noopener")}},{label:(0,i.Tl)("updatenotification","Get started"),variant:"primary",callback:()=>{t("dismiss"),t("update:open",!1)}}],c=(0,r.KR)(n.appId),p=(0,r.KR)(n.version??""),h=(0,r.KR)("");return(0,r.nT)(()=>{const e=n.version?(0,l.KT)("/apps/updatenotification/api/v1/changelog/{app}?version={version}",{version:n.version,app:n.appId}):(0,l.KT)("/apps/updatenotification/api/v1/changelog/{app}",{version:n.version,app:n.appId});s.Ay.get(e).then(({data:e})=>{c.value=e.ocs.data.appName,p.value=e.ocs.data.version,h.value=e.ocs.data.content}).catch(e=>{404===e?.response?.status?(c.value=n.appId,h.value=(0,i.Tl)("updatenotification","No changelog available")):(Qe.error("Failed to load changelog entry",e),t("update:open",!1))})}),{__sfc:!0,props:n,emit:t,dialogButtons:o,appName:c,appVersion:p,markdown:h,t:i.Tl,NcDialog:a.A,Markdown:Ne}}});var Oe=n(32971),je={};je.styleTagTransform=De(),je.setAttributes=Be(),je.insert=Pe().bind(null,"head"),je.domAPI=_e(),je.insertStyleElement=Ee(),ze()(Oe.A,je),Oe.A&&Oe.A.locals&&Oe.A.locals;const We=(0,Ge.A)(He,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t(n.NcDialog,{attrs:{"content-classes":"app-changelog-dialog",buttons:n.dialogButtons,name:n.t("updatenotification","What's new in {app} {version}",{app:n.appName,version:n.appVersion}),open:e.open&&void 0!==n.markdown,size:"normal"},on:{"update:open":function(t){return e.$emit("update:open",t)}}},[t(n.Markdown,{staticClass:"app-changelog-dialog__text",attrs:{markdown:n.markdown,"min-heading-level":3}})],1)},[],!1,null,"7b1cfb7a",null).exports}}]); +//# sourceMappingURL=3874-3874.js.map?v=9a62c835bdbec0b2d5e3 \ No newline at end of file diff --git a/dist/3486-3486.js.license b/dist/3874-3874.js.license similarity index 100% rename from dist/3486-3486.js.license rename to dist/3874-3874.js.license diff --git a/dist/3486-3486.js.map b/dist/3874-3874.js.map similarity index 90% rename from dist/3486-3486.js.map rename to dist/3874-3874.js.map index 2952c9e5f5616..54c93ab1ced10 100644 --- a/dist/3486-3486.js.map +++ b/dist/3874-3874.js.map @@ -1 +1 @@ -{"version":3,"file":"3486-3486.js?v=0986f2527cb079eceacd","mappings":"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","sources":["webpack:///nextcloud/apps/updatenotification/src/components/AppChangelogDialog.vue?vue&type=style&index=0&id=7b1cfb7a&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/updatenotification/src/components/Markdown.vue?vue&type=style&index=0&id=98b6d70a&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/updatenotification/src/components/AppChangelogDialog.vue","webpack:///nextcloud/node_modules/marked/lib/marked.esm.js","webpack:///nextcloud/apps/updatenotification/src/components/Markdown.vue","webpack:///nextcloud/apps/updatenotification/src/components/Markdown.vue?vue&type=script&setup=true&lang=ts","webpack:///nextcloud/apps/updatenotification/src/composables/useMarkdown.ts","webpack://nextcloud/./apps/updatenotification/src/components/Markdown.vue?1ec0","webpack://nextcloud/./apps/updatenotification/src/components/Markdown.vue?8d8c","webpack:///nextcloud/apps/updatenotification/src/logger.ts","webpack:///nextcloud/apps/updatenotification/src/components/AppChangelogDialog.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/updatenotification/src/components/AppChangelogDialog.vue?2392","webpack://nextcloud/./apps/updatenotification/src/components/AppChangelogDialog.vue?c992"],"sourcesContent":["// 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-7b1cfb7a] .app-changelog-dialog{min-height:50vh !important}.app-changelog-dialog__text[data-v-7b1cfb7a]{padding-inline:14px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/updatenotification/src/components/AppChangelogDialog.vue\"],\"names\":[],\"mappings\":\"AACA,wCACC,0BAAA,CAGD,6CACC,mBAAA\",\"sourcesContent\":[\"\\n:deep(.app-changelog-dialog) {\\n\\tmin-height: 50vh !important;\\n}\\n\\n.app-changelog-dialog__text {\\n\\tpadding-inline: 14px;\\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, `.markdown[data-v-98b6d70a] ul{list-style:disc;padding-inline-start:20px}.markdown[data-v-98b6d70a] h3,.markdown[data-v-98b6d70a] h4,.markdown[data-v-98b6d70a] h5,.markdown[data-v-98b6d70a] h6{font-weight:600;line-height:1.5;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}.markdown[data-v-98b6d70a] h3{font-size:20px}.markdown[data-v-98b6d70a] h4{font-size:18px}.markdown[data-v-98b6d70a] h5{font-size:17px}.markdown[data-v-98b6d70a] h6{font-size:var(--default-font-size)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/updatenotification/src/components/Markdown.vue\"],\"names\":[],\"mappings\":\"AAGE,8BACC,eAAA,CACA,yBAAA,CAGD,wHACC,eAAA,CACA,eAAA,CACA,eAAA,CACA,kBAAA,CACA,4BAAA,CAGD,8BACC,cAAA,CAGD,8BACC,cAAA,CAGD,8BACC,cAAA,CAGD,8BACC,kCAAA\",\"sourcesContent\":[\"\\n.markdown {\\n\\t:deep {\\n\\t\\tul {\\n\\t\\t\\tlist-style: disc;\\n\\t\\t\\tpadding-inline-start: 20px;\\n\\t\\t}\\n\\n\\t\\th3, h4, h5, h6 {\\n\\t\\t\\tfont-weight: 600;\\n\\t\\t\\tline-height: 1.5;\\n\\t\\t\\tmargin-top: 24px;\\n\\t\\t\\tmargin-bottom: 12px;\\n\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t}\\n\\n\\t\\th3 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t}\\n\\n\\t\\th4 {\\n\\t\\t\\tfont-size: 18px;\\n\\t\\t}\\n\\n\\t\\th5 {\\n\\t\\t\\tfont-size: 17px;\\n\\t\\t}\\n\\n\\t\\th6 {\\n\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcDialog,{attrs:{\"content-classes\":\"app-changelog-dialog\",\"buttons\":_setup.dialogButtons,\"name\":_setup.t('updatenotification', 'What\\'s new in {app} {version}', { app: _setup.appName, version: _setup.appVersion }),\"open\":_vm.open && _setup.markdown !== undefined,\"size\":\"normal\"},on:{\"update:open\":function($event){return _vm.$emit('update:open', $event)}}},[_c(_setup.Markdown,{staticClass:\"app-changelog-dialog__text\",attrs:{\"markdown\":_setup.markdown,\"min-heading-level\":3}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * marked v17.0.6 - a markdown parser\n * Copyright (c) 2018-2026, MarkedJS. (MIT License)\n * Copyright (c) 2011-2018, Christopher Jeffrey. (MIT License)\n * https://github.com/markedjs/marked\n */\n\n/**\n * DO NOT EDIT THIS FILE\n * The code in this file is generated from files in ./src/\n */\n\nfunction M(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var O=M();function G(u){O=u}var _={exec:()=>null};function k(u,e=\"\"){let t=typeof u==\"string\"?u:u.source,n={replace:(r,i)=>{let s=typeof i==\"string\"?i:i.source;return s=s.replace(m.caret,\"$1\"),t=t.replace(r,s),n},getRegex:()=>new RegExp(t,e)};return n}var be=(()=>{try{return!!new RegExp(\"(?<=1)(?/,blockquoteSetextReplace:/\\n {0,3}((?:=+|-+) *)(?=\\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \\t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\\[[ xX]\\] +\\S/,listReplaceTask:/^\\[[ xX]\\] +/,listTaskCheckbox:/\\[[ xX]\\]/,anyLine:/\\n.*\\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\\||\\| *$/g,tableRowBlankLine:/\\n[ \\t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\\s|>)/i,endPreScriptTag:/^<\\/(pre|code|kbd|script)(\\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/,unicodeAlphaNumeric:/[\\p{L}\\p{N}]/u,escapeTest:/[&<>\"']/,escapeReplace:/[&<>\"']/g,escapeTestNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/,escapeReplaceNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/g,caret:/(^|[^\\[])\\^/g,percentDecode:/%25/g,findPipe:/\\|/g,splitPipe:/ \\|/,slashPipe:/\\\\\\|/g,carriageReturn:/\\r\\n|\\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\\S*/,endingNewline:/\\n$/,listItemRegex:u=>new RegExp(`^( {0,3}${u})((?:[\t ][^\\\\n]*)?(?:\\\\n|$))`),nextBulletRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}(?:[*+-]|\\\\d{1,9}[.)])((?:[ \t][^\\\\n]*)?(?:\\\\n|$))`),hrRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$)`),fencesBeginRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}(?:\\`\\`\\`|~~~)`),headingBeginRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}#`),htmlBeginRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}<(?:[a-z].*>|!--)`,\"i\"),blockquoteBeginRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}>`)},Re=/^(?:[ \\t]*(?:\\n|$))+/,Oe=/^((?: {4}| {0,3}\\t)[^\\n]+(?:\\n(?:[ \\t]*(?:\\n|$))*)?)+/,Te=/^ {0,3}(`{3,}(?=[^`\\n]*(?:\\n|$))|~{3,})([^\\n]*)(?:\\n|$)(?:|([\\s\\S]*?)(?:\\n|$))(?: {0,3}\\1[~`]* *(?=\\n|$)|$)/,C=/^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/,we=/^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/,Q=/ {0,3}(?:[*+-]|\\d{1,9}[.)])/,se=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\\n(?!\\s*?\\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,ie=k(se).replace(/bull/g,Q).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/\\|table/g,\"\").getRegex(),ye=k(se).replace(/bull/g,Q).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/table/g,/ {0,3}\\|?(?:[:\\- ]*\\|)+[\\:\\- ]*\\n/).getRegex(),j=/^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/,Pe=/^[^\\n]+/,F=/(?!\\s*\\])(?:\\\\[\\s\\S]|[^\\[\\]\\\\])+/,Se=k(/^ {0,3}\\[(label)\\]: *(?:\\n[ \\t]*)?([^<\\s][^\\s]*|<.*?>)(?:(?: +(?:\\n[ \\t]*)?| *\\n[ \\t]*)(title))? *(?:\\n+|$)/).replace(\"label\",F).replace(\"title\",/(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/).getRegex(),$e=k(/^(bull)([ \\t][^\\n]+?)?(?:\\n|$)/).replace(/bull/g,Q).getRegex(),v=\"address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul\",U=/|$))/,_e=k(\"^ {0,3}(?:<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:[^\\\\n]*\\\\n+|$)|comment[^\\\\n]*(\\\\n+|$)|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)|\\\\n*|$)|\\\\n*|$)|)[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$)|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$)|(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$))\",\"i\").replace(\"comment\",U).replace(\"tag\",v).replace(\"attribute\",/ +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/).getRegex(),oe=k(j).replace(\"hr\",C).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)])[ \\\\t]\").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex(),Le=k(/^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/).replace(\"paragraph\",oe).getRegex(),K={blockquote:Le,code:Oe,def:Se,fences:Te,heading:we,hr:C,html:_e,lheading:ie,list:$e,newline:Re,paragraph:oe,table:_,text:Pe},ne=k(\"^ *([^\\\\n ].*)\\\\n {0,3}((?:\\\\| *)?:?-+:? *(?:\\\\| *:?-+:? *)*(?:\\\\| *)?)(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)\").replace(\"hr\",C).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"blockquote\",\" {0,3}>\").replace(\"code\",\"(?: {4}| {0,3}\t)[^\\\\n]\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)])[ \\\\t]\").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex(),Me={...K,lheading:ye,table:ne,paragraph:k(j).replace(\"hr\",C).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"table\",ne).replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)])[ \\\\t]\").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex()},ze={...K,html:k(`^ *(?:comment *(?:\\\\n|\\\\s*$)|<(tag)[\\\\s\\\\S]+? *(?:\\\\n{2,}|\\\\s*$)|\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))`).replace(\"comment\",U).replace(/tag/g,\"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b\").getRegex(),def:/^ *\\[([^\\]]+)\\]: *]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,heading:/^(#{1,6})(.*)(?:\\n+|$)/,fences:_,lheading:/^(.+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,paragraph:k(j).replace(\"hr\",C).replace(\"heading\",` *#{1,6} *[^\n]`).replace(\"lheading\",ie).replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"|fences\",\"\").replace(\"|list\",\"\").replace(\"|html\",\"\").replace(\"|tag\",\"\").getRegex()},Ee=/^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,Ie=/^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,ae=/^( {2,}|\\\\)\\n(?!\\s*$)/,Ae=/^(`+|[^`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\`+)[^`]+\\k(?!`))*?\\]\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)]|\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)])*\\))*\\)/).replace(\"precode-\",be?\"(?`+)[^`]+\\k(?!`)/).replace(\"html\",/<(?! )[^<>]*?>/).getRegex(),ue=/^(?:\\*+(?:((?!\\*)punct)|([^\\s*]))?)|^_+(?:((?!_)punct)|([^\\s_]))?/,ve=k(ue,\"u\").replace(/punct/g,z).getRegex(),He=k(ue,\"u\").replace(/punct/g,le).getRegex(),pe=\"^[^_*]*?__[^_*]*?\\\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\\\*)punct(\\\\*+)(?=[\\\\s]|$)|notPunctSpace(\\\\*+)(?!\\\\*)(?=punctSpace|$)|(?!\\\\*)punctSpace(\\\\*+)(?=notPunctSpace)|[\\\\s](\\\\*+)(?!\\\\*)(?=punct)|(?!\\\\*)punct(\\\\*+)(?!\\\\*)(?=punct)|notPunctSpace(\\\\*+)(?=notPunctSpace)\",Ze=k(pe,\"gu\").replace(/notPunctSpace/g,W).replace(/punctSpace/g,H).replace(/punct/g,z).getRegex(),Ge=k(pe,\"gu\").replace(/notPunctSpace/g,De).replace(/punctSpace/g,Be).replace(/punct/g,le).getRegex(),Ne=k(\"^[^_*]*?\\\\*\\\\*[^_*]*?_[^_*]*?(?=\\\\*\\\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)\",\"gu\").replace(/notPunctSpace/g,W).replace(/punctSpace/g,H).replace(/punct/g,z).getRegex(),Qe=k(/^~~?(?:((?!~)punct)|[^\\s~])/,\"u\").replace(/punct/g,z).getRegex(),je=\"^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)\",Fe=k(je,\"gu\").replace(/notPunctSpace/g,W).replace(/punctSpace/g,H).replace(/punct/g,z).getRegex(),Ue=k(/\\\\(punct)/,\"gu\").replace(/punct/g,z).getRegex(),Ke=k(/^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/).replace(\"scheme\",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(\"email\",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),We=k(U).replace(\"(?:-->|$)\",\"-->\").getRegex(),Xe=k(\"^comment|^|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>|^<\\\\?[\\\\s\\\\S]*?\\\\?>|^|^\").replace(\"comment\",We).replace(\"attribute\",/\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/).getRegex(),q=/(?:\\[(?:\\\\[\\s\\S]|[^\\[\\]\\\\])*\\]|\\\\[\\s\\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\\])|[^\\[\\]\\\\`])*?/,Je=k(/^!?\\[(label)\\]\\(\\s*(href)(?:(?:[ \\t]+(?:\\n[ \\t]*)?|\\n[ \\t]*)(title))?\\s*\\)/).replace(\"label\",q).replace(\"href\",/<(?:\\\\.|[^\\n<>\\\\])+>|[^ \\t\\n\\x00-\\x1f]*/).replace(\"title\",/\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/).getRegex(),ce=k(/^!?\\[(label)\\]\\[(ref)\\]/).replace(\"label\",q).replace(\"ref\",F).getRegex(),he=k(/^!?\\[(ref)\\](?:\\[\\])?/).replace(\"ref\",F).getRegex(),Ve=k(\"reflink|nolink(?!\\\\()\",\"g\").replace(\"reflink\",ce).replace(\"nolink\",he).getRegex(),re=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,X={_backpedal:_,anyPunctuation:Ue,autolink:Ke,blockSkip:qe,br:ae,code:Ie,del:_,delLDelim:_,delRDelim:_,emStrongLDelim:ve,emStrongRDelimAst:Ze,emStrongRDelimUnd:Ne,escape:Ee,link:Je,nolink:he,punctuation:Ce,reflink:ce,reflinkSearch:Ve,tag:Xe,text:Ae,url:_},Ye={...X,link:k(/^!?\\[(label)\\]\\((.*?)\\)/).replace(\"label\",q).getRegex(),reflink:k(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/).replace(\"label\",q).getRegex()},N={...X,emStrongRDelimAst:Ge,emStrongLDelim:He,delLDelim:Qe,delRDelim:Fe,url:k(/^((?:protocol):\\/\\/|www\\.)(?:[a-zA-Z0-9\\-]+\\.?)+[^\\s<]*|^email/).replace(\"protocol\",re).replace(\"email\",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'\"~()&]+|\\([^)]*\\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'\"~)]+(?!$))+/,del:/^(~~?)(?=[^\\s~])((?:\\\\[\\s\\S]|[^\\\\])*?(?:\\\\[\\s\\S]|[^\\s~\\\\]))\\1(?=[^~]|$)/,text:k(/^([`~]+|[^`~])(?:(?= {2,}\\n)|(?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)|[\\s\\S]*?(?:(?=[\\\\\":\">\",'\"':\""\",\"'\":\"'\"},ke=u=>tt[u];function T(u,e){if(e){if(m.escapeTest.test(u))return u.replace(m.escapeReplace,ke)}else if(m.escapeTestNoEncode.test(u))return u.replace(m.escapeReplaceNoEncode,ke);return u}function J(u){try{u=encodeURI(u).replace(m.percentDecode,\"%\")}catch{return null}return u}function V(u,e){let t=u.replace(m.findPipe,(i,s,a)=>{let o=!1,l=s;for(;--l>=0&&a[l]===\"\\\\\";)o=!o;return o?\"|\":\" |\"}),n=t.split(m.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length0?-2:-1}function ge(u,e=0){let t=e,n=\"\";for(let r of u)if(r===\"\t\"){let i=4-t%4;n+=\" \".repeat(i),t+=i}else n+=r,t++;return n}function fe(u,e,t,n,r){let i=e.href,s=e.title||null,a=u[1].replace(r.other.outputLinkReplace,\"$1\");n.state.inLink=!0;let o={type:u[0].charAt(0)===\"!\"?\"image\":\"link\",raw:t,href:i,title:s,text:a,tokens:n.inlineTokens(a)};return n.state.inLink=!1,o}function nt(u,e,t){let n=u.match(t.other.indentCodeCompensation);if(n===null)return e;let r=n[1];return e.split(`\n`).map(i=>{let s=i.match(t.other.beginningSpace);if(s===null)return i;let[a]=s;return a.length>=r.length?i.slice(r.length):i}).join(`\n`)}var w=class{options;rules;lexer;constructor(e){this.options=e||O}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:\"space\",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let n=t[0].replace(this.rules.other.codeRemoveIndent,\"\");return{type:\"code\",raw:t[0],codeBlockStyle:\"indented\",text:this.options.pedantic?n:I(n,`\n`)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let n=t[0],r=nt(n,t[3]||\"\",this.rules);return{type:\"code\",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,\"$1\"):t[2],text:r}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(this.rules.other.endingHash.test(n)){let r=I(n,\"#\");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:\"heading\",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:\"hr\",raw:I(t[0],`\n`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let n=I(t[0],`\n`).split(`\n`),r=\"\",i=\"\",s=[];for(;n.length>0;){let a=!1,o=[],l;for(l=0;l1,i={type:\"list\",raw:\"\",ordered:r,start:r?+n.slice(0,-1):\"\",loose:!1,items:[]};n=r?`\\\\d{1,9}\\\\${n.slice(-1)}`:`\\\\${n}`,this.options.pedantic&&(n=r?n:\"[*+-]\");let s=this.rules.other.listItemRegex(n),a=!1;for(;e;){let l=!1,p=\"\",c=\"\";if(!(t=s.exec(e))||this.rules.block.hr.test(e))break;p=t[0],e=e.substring(p.length);let d=ge(t[2].split(`\n`,1)[0],t[1].length),h=e.split(`\n`,1)[0],R=!d.trim(),f=0;if(this.options.pedantic?(f=2,c=d.trimStart()):R?f=t[1].length+1:(f=d.search(this.rules.other.nonSpaceChar),f=f>4?1:f,c=d.slice(f),f+=t[1].length),R&&this.rules.other.blankLine.test(h)&&(p+=h+`\n`,e=e.substring(h.length+1),l=!0),!l){let S=this.rules.other.nextBulletRegex(f),Y=this.rules.other.hrRegex(f),ee=this.rules.other.fencesBeginRegex(f),te=this.rules.other.headingBeginRegex(f),me=this.rules.other.htmlBeginRegex(f),xe=this.rules.other.blockquoteBeginRegex(f);for(;e;){let Z=e.split(`\n`,1)[0],A;if(h=Z,this.options.pedantic?(h=h.replace(this.rules.other.listReplaceNesting,\" \"),A=h):A=h.replace(this.rules.other.tabCharGlobal,\" \"),ee.test(h)||te.test(h)||me.test(h)||xe.test(h)||S.test(h)||Y.test(h))break;if(A.search(this.rules.other.nonSpaceChar)>=f||!h.trim())c+=`\n`+A.slice(f);else{if(R||d.replace(this.rules.other.tabCharGlobal,\" \").search(this.rules.other.nonSpaceChar)>=4||ee.test(d)||te.test(d)||Y.test(d))break;c+=`\n`+h}R=!h.trim(),p+=Z+`\n`,e=e.substring(Z.length+1),d=A.slice(f)}}i.loose||(a?i.loose=!0:this.rules.other.doubleBlankLine.test(p)&&(a=!0)),i.items.push({type:\"list_item\",raw:p,task:!!this.options.gfm&&this.rules.other.listIsTask.test(c),loose:!1,text:c,tokens:[]}),i.raw+=p}let o=i.items.at(-1);if(o)o.raw=o.raw.trimEnd(),o.text=o.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let l of i.items){if(this.lexer.state.top=!1,l.tokens=this.lexer.blockTokens(l.text,[]),l.task){if(l.text=l.text.replace(this.rules.other.listReplaceTask,\"\"),l.tokens[0]?.type===\"text\"||l.tokens[0]?.type===\"paragraph\"){l.tokens[0].raw=l.tokens[0].raw.replace(this.rules.other.listReplaceTask,\"\"),l.tokens[0].text=l.tokens[0].text.replace(this.rules.other.listReplaceTask,\"\");for(let c=this.lexer.inlineQueue.length-1;c>=0;c--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[c].src)){this.lexer.inlineQueue[c].src=this.lexer.inlineQueue[c].src.replace(this.rules.other.listReplaceTask,\"\");break}}let p=this.rules.other.listTaskCheckbox.exec(l.raw);if(p){let c={type:\"checkbox\",raw:p[0]+\" \",checked:p[0]!==\"[ ]\"};l.checked=c.checked,i.loose?l.tokens[0]&&[\"paragraph\",\"text\"].includes(l.tokens[0].type)&&\"tokens\"in l.tokens[0]&&l.tokens[0].tokens?(l.tokens[0].raw=c.raw+l.tokens[0].raw,l.tokens[0].text=c.raw+l.tokens[0].text,l.tokens[0].tokens.unshift(c)):l.tokens.unshift({type:\"paragraph\",raw:c.raw,text:c.raw,tokens:[c]}):l.tokens.unshift(c)}}if(!i.loose){let p=l.tokens.filter(d=>d.type===\"space\"),c=p.length>0&&p.some(d=>this.rules.other.anyLine.test(d.raw));i.loose=c}}if(i.loose)for(let l of i.items){l.loose=!0;for(let p of l.tokens)p.type===\"text\"&&(p.type=\"paragraph\")}return i}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:\"html\",block:!0,raw:t[0],pre:t[1]===\"pre\"||t[1]===\"script\"||t[1]===\"style\",text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let n=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal,\" \"),r=t[2]?t[2].replace(this.rules.other.hrefBrackets,\"$1\").replace(this.rules.inline.anyPunctuation,\"$1\"):\"\",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,\"$1\"):t[3];return{type:\"def\",tag:n,raw:t[0],href:r,title:i}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=V(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,\"\").split(\"|\"),i=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,\"\").split(`\n`):[],s={type:\"table\",raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let a of r)this.rules.other.tableAlignRight.test(a)?s.align.push(\"right\"):this.rules.other.tableAlignCenter.test(a)?s.align.push(\"center\"):this.rules.other.tableAlignLeft.test(a)?s.align.push(\"left\"):s.align.push(null);for(let a=0;a({text:o,tokens:this.lexer.inline(o),header:!1,align:s.align[l]})));return s}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let n=t[1].trim();return{type:\"heading\",raw:t[0],depth:t[2].charAt(0)===\"=\"?1:2,text:n,tokens:this.lexer.inline(n)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let n=t[1].charAt(t[1].length-1)===`\n`?t[1].slice(0,-1):t[1];return{type:\"paragraph\",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:\"text\",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:\"escape\",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:\"html\",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let n=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(n)){if(!this.rules.other.endAngleBracket.test(n))return;let s=I(n.slice(0,-1),\"\\\\\");if((n.length-s.length)%2===0)return}else{let s=de(t[2],\"()\");if(s===-2)return;if(s>-1){let o=(t[0].indexOf(\"!\")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,o).trim(),t[3]=\"\"}}let r=t[2],i=\"\";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(r);s&&(r=s[1],i=s[3])}else i=t[3]?t[3].slice(1,-1):\"\";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?r=r.slice(1):r=r.slice(1,-1)),fe(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,\"$1\"),title:i&&i.replace(this.rules.inline.anyPunctuation,\"$1\")},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let r=(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,\" \"),i=t[r.toLowerCase()];if(!i){let s=n[0].charAt(0);return{type:\"text\",raw:s,text:s}}return fe(n,i,n[0],this.lexer,this.rules)}}emStrong(e,t,n=\"\"){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||!r[1]&&!r[2]&&!r[3]&&!r[4]||r[4]&&n.match(this.rules.other.unicodeAlphaNumeric))return;if(!(r[1]||r[3]||\"\")||!n||this.rules.inline.punctuation.exec(n)){let s=[...r[0]].length-1,a,o,l=s,p=0,c=r[0][0]===\"*\"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+s);(r=c.exec(t))!==null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(o=[...a].length,r[3]||r[4]){l+=o;continue}else if((r[5]||r[6])&&s%3&&!((s+o)%3)){p+=o;continue}if(l-=o,l>0)continue;o=Math.min(o,o+l+p);let d=[...r[0]][0].length,h=e.slice(0,s+r.index+d+o);if(Math.min(s,o)%2){let f=h.slice(1,-1);return{type:\"em\",raw:h,text:f,tokens:this.lexer.inlineTokens(f)}}let R=h.slice(2,-2);return{type:\"strong\",raw:h,text:R,tokens:this.lexer.inlineTokens(R)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(this.rules.other.newLineCharGlobal,\" \"),r=this.rules.other.nonSpaceChar.test(n),i=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&i&&(n=n.substring(1,n.length-1)),{type:\"codespan\",raw:t[0],text:n}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:\"br\",raw:t[0]}}del(e,t,n=\"\"){let r=this.rules.inline.delLDelim.exec(e);if(!r)return;if(!(r[1]||\"\")||!n||this.rules.inline.punctuation.exec(n)){let s=[...r[0]].length-1,a,o,l=s,p=this.rules.inline.delRDelim;for(p.lastIndex=0,t=t.slice(-1*e.length+s);(r=p.exec(t))!==null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a||(o=[...a].length,o!==s))continue;if(r[3]||r[4]){l+=o;continue}if(l-=o,l>0)continue;o=Math.min(o,o+l);let c=[...r[0]][0].length,d=e.slice(0,s+r.index+c+o),h=d.slice(s,-s);return{type:\"del\",raw:d,text:h,tokens:this.lexer.inlineTokens(h)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let n,r;return t[2]===\"@\"?(n=t[1],r=\"mailto:\"+n):(n=t[1],r=n),{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let n,r;if(t[2]===\"@\")n=t[0],r=\"mailto:\"+n;else{let i;do i=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??\"\";while(i!==t[0]);n=t[0],t[1]===\"www.\"?r=\"http://\"+t[0]:r=t[0]}return{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let n=this.lexer.state.inRawBlock;return{type:\"text\",raw:t[0],text:t[0],escaped:n}}}};var x=class u{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||O,this.options.tokenizer=this.options.tokenizer||new w,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:m,block:B.normal,inline:E.normal};this.options.pedantic?(t.block=B.pedantic,t.inline=E.pedantic):this.options.gfm&&(t.block=B.gfm,this.options.breaks?t.inline=E.breaks:t.inline=E.gfm),this.tokenizer.rules=t}static get rules(){return{block:B,inline:E}}static lex(e,t){return new u(t).lex(e)}static lexInline(e,t){return new u(t).inlineTokens(e)}lex(e){e=e.replace(m.carriageReturn,`\n`),this.blockTokens(e,this.tokens);for(let t=0;t(r=s.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let s=t.at(-1);r.raw.length===1&&s!==void 0?s.raw+=`\n`:t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"paragraph\"||s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.at(-1).src=s.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"paragraph\"||s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.raw,this.inlineQueue.at(-1).src=s.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startBlock){let s=1/0,a=e.slice(1),o;this.options.extensions.startBlock.forEach(l=>{o=l.call({lexer:this},a),typeof o==\"number\"&&o>=0&&(s=Math.min(s,o))}),s<1/0&&s>=0&&(i=e.substring(0,s+1))}if(this.state.top&&(r=this.tokenizer.paragraph(i))){let s=t.at(-1);n&&s?.type===\"paragraph\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):t.push(r),n=i.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):t.push(r);continue}if(e){let s=\"Infinite loop on byte: \"+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){this.tokenizer.lexer=this;let n=e,r=null;if(this.tokens.links){let o=Object.keys(this.tokens.links);if(o.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(n))!==null;)o.includes(r[0].slice(r[0].lastIndexOf(\"[\")+1,-1))&&(n=n.slice(0,r.index)+\"[\"+\"a\".repeat(r[0].length-2)+\"]\"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(n))!==null;)n=n.slice(0,r.index)+\"++\"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let i;for(;(r=this.tokenizer.rules.inline.blockSkip.exec(n))!==null;)i=r[2]?r[2].length:0,n=n.slice(0,r.index+i)+\"[\"+\"a\".repeat(r[0].length-i-2)+\"]\"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let s=!1,a=\"\";for(;e;){s||(a=\"\"),s=!1;let o;if(this.options.extensions?.inline?.some(p=>(o=p.call({lexer:this},e,t))?(e=e.substring(o.raw.length),t.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let p=t.at(-1);o.type===\"text\"&&p?.type===\"text\"?(p.raw+=o.raw,p.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,n,a)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e,n,a)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),t.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),t.push(o);continue}let l=e;if(this.options.extensions?.startInline){let p=1/0,c=e.slice(1),d;this.options.extensions.startInline.forEach(h=>{d=h.call({lexer:this},c),typeof d==\"number\"&&d>=0&&(p=Math.min(p,d))}),p<1/0&&p>=0&&(l=e.substring(0,p+1))}if(o=this.tokenizer.inlineText(l)){e=e.substring(o.raw.length),o.raw.slice(-1)!==\"_\"&&(a=o.raw.slice(-1)),s=!0;let p=t.at(-1);p?.type===\"text\"?(p.raw+=o.raw,p.text+=o.text):t.push(o);continue}if(e){let p=\"Infinite loop on byte: \"+e.charCodeAt(0);if(this.options.silent){console.error(p);break}else throw new Error(p)}}return t}};var y=class{options;parser;constructor(e){this.options=e||O}space(e){return\"\"}code({text:e,lang:t,escaped:n}){let r=(t||\"\").match(m.notSpaceStart)?.[0],i=e.replace(m.endingNewline,\"\")+`\n`;return r?'
    '+(n?i:T(i,!0))+`
    \n`:\"
    \"+(n?i:T(i,!0))+`
    \n`}blockquote({tokens:e}){return`
    \n${this.parser.parse(e)}
    \n`}html({text:e}){return e}def(e){return\"\"}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)}\n`}hr(e){return`
    \n`}list(e){let t=e.ordered,n=e.start,r=\"\";for(let a=0;a\n`+r+\"\n`}listitem(e){return`
  • ${this.parser.parse(e.tokens)}
  • \n`}checkbox({checked:e}){return\" '}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    \n`}table(e){let t=\"\",n=\"\";for(let i=0;i${r}`),`\n\n`+t+`\n`+r+`
    \n`}tablerow({text:e}){return`\n${e}\n`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?\"th\":\"td\";return(e.align?`<${n} align=\"${e.align}\">`:`<${n}>`)+t+`\n`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${T(e,!0)}`}br(e){return\"
    \"}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=J(e);if(i===null)return r;e=i;let s='
    \"+r+\"\",s}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=J(e);if(i===null)return T(n);e=i;let s=`\"${T(n)}\"`;return\",s}text(e){return\"tokens\"in e&&e.tokens?this.parser.parseInline(e.tokens):\"escaped\"in e&&e.escaped?e.text:T(e.text)}};var $=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return\"\"+e}image({text:e}){return\"\"+e}br(){return\"\"}checkbox({raw:e}){return e}};var b=class u{options;renderer;textRenderer;constructor(e){this.options=e||O,this.options.renderer=this.options.renderer||new y,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new $}static parse(e,t){return new u(t).parse(e)}static parseInline(e,t){return new u(t).parseInline(e)}parse(e){this.renderer.parser=this;let t=\"\";for(let n=0;n{let a=i[s].flat(1/0);n=n.concat(this.walkTokens(a,t))}):i.tokens&&(n=n.concat(this.walkTokens(i.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{let r={...n};if(r.async=this.defaults.async||r.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error(\"extension name required\");if(\"renderer\"in i){let s=t.renderers[i.name];s?t.renderers[i.name]=function(...a){let o=i.renderer.apply(this,a);return o===!1&&(o=s.apply(this,a)),o}:t.renderers[i.name]=i.renderer}if(\"tokenizer\"in i){if(!i.level||i.level!==\"block\"&&i.level!==\"inline\")throw new Error(\"extension level must be 'block' or 'inline'\");let s=t[i.level];s?s.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level===\"block\"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level===\"inline\"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}\"childTokens\"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),r.extensions=t),n.renderer){let i=this.defaults.renderer||new y(this.defaults);for(let s in n.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if([\"options\",\"parser\"].includes(s))continue;let a=s,o=n.renderer[a],l=i[a];i[a]=(...p)=>{let c=o.apply(i,p);return c===!1&&(c=l.apply(i,p)),c||\"\"}}r.renderer=i}if(n.tokenizer){let i=this.defaults.tokenizer||new w(this.defaults);for(let s in n.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if([\"options\",\"rules\",\"lexer\"].includes(s))continue;let a=s,o=n.tokenizer[a],l=i[a];i[a]=(...p)=>{let c=o.apply(i,p);return c===!1&&(c=l.apply(i,p)),c}}r.tokenizer=i}if(n.hooks){let i=this.defaults.hooks||new P;for(let s in n.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if([\"options\",\"block\"].includes(s))continue;let a=s,o=n.hooks[a],l=i[a];P.passThroughHooks.has(s)?i[a]=p=>{if(this.defaults.async&&P.passThroughHooksRespectAsync.has(s))return(async()=>{let d=await o.call(i,p);return l.call(i,d)})();let c=o.call(i,p);return l.call(i,c)}:i[a]=(...p)=>{if(this.defaults.async)return(async()=>{let d=await o.apply(i,p);return d===!1&&(d=await l.apply(i,p)),d})();let c=o.apply(i,p);return c===!1&&(c=l.apply(i,p)),c}}r.hooks=i}if(n.walkTokens){let i=this.defaults.walkTokens,s=n.walkTokens;r.walkTokens=function(a){let o=[];return o.push(s.call(this,a)),i&&(o=o.concat(i.call(this,a))),o}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return x.lex(e,t??this.defaults)}parser(e,t){return b.parse(e,t??this.defaults)}parseMarkdown(e){return(n,r)=>{let i={...r},s={...this.defaults,...i},a=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&i.async===!1)return a(new Error(\"marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.\"));if(typeof n>\"u\"||n===null)return a(new Error(\"marked(): input parameter is undefined or null\"));if(typeof n!=\"string\")return a(new Error(\"marked(): input parameter is of type \"+Object.prototype.toString.call(n)+\", string expected\"));if(s.hooks&&(s.hooks.options=s,s.hooks.block=e),s.async)return(async()=>{let o=s.hooks?await s.hooks.preprocess(n):n,p=await(s.hooks?await s.hooks.provideLexer(e):e?x.lex:x.lexInline)(o,s),c=s.hooks?await s.hooks.processAllTokens(p):p;s.walkTokens&&await Promise.all(this.walkTokens(c,s.walkTokens));let h=await(s.hooks?await s.hooks.provideParser(e):e?b.parse:b.parseInline)(c,s);return s.hooks?await s.hooks.postprocess(h):h})().catch(a);try{s.hooks&&(n=s.hooks.preprocess(n));let l=(s.hooks?s.hooks.provideLexer(e):e?x.lex:x.lexInline)(n,s);s.hooks&&(l=s.hooks.processAllTokens(l)),s.walkTokens&&this.walkTokens(l,s.walkTokens);let c=(s.hooks?s.hooks.provideParser(e):e?b.parse:b.parseInline)(l,s);return s.hooks&&(c=s.hooks.postprocess(c)),c}catch(o){return a(o)}}}onError(e,t){return n=>{if(n.message+=`\nPlease report this to https://github.com/markedjs/marked.`,e){let r=\"

    An error occurred:

    \"+T(n.message+\"\",!0)+\"
    \";return t?Promise.resolve(r):r}if(t)return Promise.reject(n);throw n}}};var L=new D;function g(u,e){return L.parse(u,e)}g.options=g.setOptions=function(u){return L.setOptions(u),g.defaults=L.defaults,G(g.defaults),g};g.getDefaults=M;g.defaults=O;g.use=function(...u){return L.use(...u),g.defaults=L.defaults,G(g.defaults),g};g.walkTokens=function(u,e){return L.walkTokens(u,e)};g.parseInline=L.parseInline;g.Parser=b;g.parser=b.parse;g.Renderer=y;g.TextRenderer=$;g.Lexer=x;g.lexer=x.lex;g.Tokenizer=w;g.Hooks=P;g.parse=g;var Qt=g.options,jt=g.setOptions,Ft=g.use,Ut=g.walkTokens,Kt=g.parseInline,Wt=g,Xt=b.parse,Jt=x.lex;export{P as Hooks,x as Lexer,D as Marked,b as Parser,y as Renderer,$ as TextRenderer,w as Tokenizer,O as defaults,M as getDefaults,Jt as lexer,g as marked,Qt as options,Wt as parse,Kt as parseInline,Xt as parser,jt as setOptions,Ft as use,Ut as walkTokens};\n//# sourceMappingURL=marked.esm.js.map\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"markdown\",domProps:{\"innerHTML\":_vm._s(_setup.html)}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Markdown.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Markdown.vue?vue&type=script&setup=true&lang=ts\"","import dompurify from 'dompurify';\nimport { marked } from 'marked';\nimport { computed } from 'vue';\n/**\n *\n * @param text\n * @param minHeadingLevel\n */\nexport function useMarkdown(text, minHeadingLevel) {\n const minHeading = computed(() => Math.min(Math.max(minHeadingLevel.value ?? 1, 1), 6));\n const renderer = new marked.Renderer();\n renderer.link = function (href, title, text) {\n let out = `';\n return out;\n };\n renderer.image = function (href, title, text) {\n if (text) {\n return text;\n }\n return title ?? '';\n };\n renderer.heading = (text, level) => {\n const headingLevel = Math.max(minHeading.value, level);\n return `${text}`;\n };\n const html = computed(() => dompurify.sanitize(marked((text.value ?? '').trim(), {\n renderer,\n gfm: false,\n breaks: false,\n pedantic: false,\n }), {\n SAFE_FOR_JQUERY: true,\n ALLOWED_TAGS: [\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'strong',\n 'p',\n 'a',\n 'ul',\n 'ol',\n 'li',\n 'em',\n 'del',\n 'blockquote',\n ],\n }));\n return { html };\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Markdown.vue?vue&type=style&index=0&id=98b6d70a&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./Markdown.vue?vue&type=style&index=0&id=98b6d70a&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Markdown.vue?vue&type=template&id=98b6d70a&scoped=true\"\nimport script from \"./Markdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Markdown.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./Markdown.vue?vue&type=style&index=0&id=98b6d70a&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 \"98b6d70a\",\n null\n \n)\n\nexport default component.exports","/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport const logger = getLoggerBuilder()\n .detectLogLevel()\n .setApp('updatenotification')\n .build();\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppChangelogDialog.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppChangelogDialog.vue?vue&type=script&setup=true&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!./AppChangelogDialog.vue?vue&type=style&index=0&id=7b1cfb7a&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./AppChangelogDialog.vue?vue&type=style&index=0&id=7b1cfb7a&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AppChangelogDialog.vue?vue&type=template&id=7b1cfb7a&scoped=true\"\nimport script from \"./AppChangelogDialog.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppChangelogDialog.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./AppChangelogDialog.vue?vue&type=style&index=0&id=7b1cfb7a&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 \"7b1cfb7a\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","O","async","breaks","extensions","gfm","hooks","pedantic","renderer","silent","tokenizer","walkTokens","G","u","_","exec","k","e","t","source","n","replace","r","i","s","m","caret","getRegex","RegExp","be","codeRemoveIndent","outputLinkReplace","indentCodeCompensation","beginningSpace","endingHash","startingSpaceChar","endingSpaceChar","nonSpaceChar","newLineCharGlobal","tabCharGlobal","multipleSpaceGlobal","blankLine","doubleBlankLine","blockquoteStart","blockquoteSetextReplace","blockquoteSetextReplace2","listReplaceNesting","listIsTask","listReplaceTask","listTaskCheckbox","anyLine","hrefBrackets","tableDelimiter","tableAlignChars","tableRowBlankLine","tableAlignRight","tableAlignCenter","tableAlignLeft","startATag","endATag","startPreScriptTag","endPreScriptTag","startAngleBracket","endAngleBracket","pedanticHrefTitle","unicodeAlphaNumeric","escapeTest","escapeReplace","escapeTestNoEncode","escapeReplaceNoEncode","percentDecode","findPipe","splitPipe","slashPipe","carriageReturn","spaceLine","notSpaceStart","endingNewline","listItemRegex","nextBulletRegex","Math","min","hrRegex","fencesBeginRegex","headingBeginRegex","htmlBeginRegex","blockquoteBeginRegex","C","Q","se","ie","ye","j","F","Se","$e","v","U","_e","oe","K","blockquote","code","def","fences","heading","hr","html","lheading","list","newline","paragraph","table","text","ne","Me","ze","ae","z","H","W","Ce","le","qe","ue","ve","He","pe","Ze","Ge","Ne","Qe","Fe","Ue","Ke","We","Xe","q","Je","ce","he","re","X","_backpedal","anyPunctuation","autolink","blockSkip","br","del","delLDelim","delRDelim","emStrongLDelim","emStrongRDelimAst","emStrongRDelimUnd","escape","link","nolink","punctuation","reflink","reflinkSearch","tag","url","Ye","N","et","B","normal","E","tt","ke","T","test","J","encodeURI","V","a","o","l","split","trim","shift","length","at","pop","splice","I","charAt","slice","ge","repeat","fe","href","title","other","state","inLink","type","raw","tokens","inlineTokens","w","options","rules","lexer","constructor","this","space","block","codeBlockStyle","match","map","join","nt","lang","inline","depth","p","c","d","top","blockTokens","h","R","f","S","substring","ordered","start","loose","items","trimStart","search","Y","ee","te","me","xe","A","Z","task","trimEnd","inlineQueue","src","checked","includes","unshift","filter","some","pre","toLowerCase","header","align","rows","inRawBlock","indexOf","de","emStrong","lastIndex","index","codespan","inlineText","escaped","x","links","Object","create","lex","lexInline","call","endsWith","startBlock","forEach","charCodeAt","console","error","Error","keys","lastIndexOf","emStrongMask","startInline","y","parser","parse","parseInline","listitem","checkbox","tablecell","tablerow","strong","em","image","textRenderer","$","b","renderers","P","static","Set","preprocess","postprocess","processAllTokens","provideLexer","provideParser","L","defaults","setOptions","parseMarkdown","Parser","Renderer","TextRenderer","Lexer","Tokenizer","Hooks","use","concat","childTokens","flat","name","apply","level","passThroughHooks","has","passThroughHooksRespectAsync","onError","prototype","toString","Promise","all","catch","message","resolve","reject","g","getDefaults","components_Markdownvue_type_script_setup_true_lang_ts","_defineComponent","__name","props","markdown","minHeadingLevel","default","setup","__props","minHeading","computed","max","value","marked","out","headingLevel","dompurify","sanitize","SAFE_FOR_JQUERY","ALLOWED_TAGS","useMarkdown","toRef","__sfc","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","Markdownvue_type_style_index_0_id_98b6d70a_prod_scoped_true_lang_scss","locals","Markdown","componentNormalizer","_vm","_c","_self","_setup","_setupProxy","staticClass","domProps","innerHTML","_s","logger","getLoggerBuilder","detectLogLevel","setApp","build","components_AppChangelogDialogvue_type_script_setup_true_lang_ts","appId","undefined","open","Boolean","emits","emit","dialogButtons","label","callback","window","variant","appName","ref","appVersion","watchEffect","generateOcsUrl","app","axios","get","then","data","ocs","content","response","status","l10n_dist","Tl","NcDialog","AppChangelogDialogvue_type_style_index_0_id_7b1cfb7a_prod_scoped_true_lang_scss_options","AppChangelogDialogvue_type_style_index_0_id_7b1cfb7a_prod_scoped_true_lang_scss","AppChangelogDialog","attrs","buttons","size","on","$event","$emit"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"3874-3874.js?v=d69ef0003ae3832ccdea","mappings":"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","sources":["webpack:///nextcloud/apps/updatenotification/src/components/AppChangelogDialog.vue?vue&type=style&index=0&id=7b1cfb7a&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/updatenotification/src/components/Markdown.vue?vue&type=style&index=0&id=98b6d70a&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/updatenotification/src/components/AppChangelogDialog.vue","webpack:///nextcloud/node_modules/marked/lib/marked.esm.js","webpack:///nextcloud/apps/updatenotification/src/components/Markdown.vue","webpack:///nextcloud/apps/updatenotification/src/components/Markdown.vue?vue&type=script&setup=true&lang=ts","webpack:///nextcloud/apps/updatenotification/src/composables/useMarkdown.ts","webpack://nextcloud/./apps/updatenotification/src/components/Markdown.vue?1bd7","webpack://nextcloud/./apps/updatenotification/src/components/Markdown.vue?8d8c","webpack:///nextcloud/apps/updatenotification/src/logger.ts","webpack:///nextcloud/apps/updatenotification/src/components/AppChangelogDialog.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/updatenotification/src/components/AppChangelogDialog.vue?ead3","webpack://nextcloud/./apps/updatenotification/src/components/AppChangelogDialog.vue?c992"],"sourcesContent":["// 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-7b1cfb7a] .app-changelog-dialog{min-height:50vh !important}.app-changelog-dialog__text[data-v-7b1cfb7a]{padding-inline:14px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/updatenotification/src/components/AppChangelogDialog.vue\"],\"names\":[],\"mappings\":\"AACA,wCACC,0BAAA,CAGD,6CACC,mBAAA\",\"sourcesContent\":[\"\\n:deep(.app-changelog-dialog) {\\n\\tmin-height: 50vh !important;\\n}\\n\\n.app-changelog-dialog__text {\\n\\tpadding-inline: 14px;\\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, `.markdown[data-v-98b6d70a] ul{list-style:disc;padding-inline-start:20px}.markdown[data-v-98b6d70a] h3,.markdown[data-v-98b6d70a] h4,.markdown[data-v-98b6d70a] h5,.markdown[data-v-98b6d70a] h6{font-weight:600;line-height:1.5;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}.markdown[data-v-98b6d70a] h3{font-size:20px}.markdown[data-v-98b6d70a] h4{font-size:18px}.markdown[data-v-98b6d70a] h5{font-size:17px}.markdown[data-v-98b6d70a] h6{font-size:var(--default-font-size)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/updatenotification/src/components/Markdown.vue\"],\"names\":[],\"mappings\":\"AAGE,8BACC,eAAA,CACA,yBAAA,CAGD,wHACC,eAAA,CACA,eAAA,CACA,eAAA,CACA,kBAAA,CACA,4BAAA,CAGD,8BACC,cAAA,CAGD,8BACC,cAAA,CAGD,8BACC,cAAA,CAGD,8BACC,kCAAA\",\"sourcesContent\":[\"\\n.markdown {\\n\\t:deep {\\n\\t\\tul {\\n\\t\\t\\tlist-style: disc;\\n\\t\\t\\tpadding-inline-start: 20px;\\n\\t\\t}\\n\\n\\t\\th3, h4, h5, h6 {\\n\\t\\t\\tfont-weight: 600;\\n\\t\\t\\tline-height: 1.5;\\n\\t\\t\\tmargin-top: 24px;\\n\\t\\t\\tmargin-bottom: 12px;\\n\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t}\\n\\n\\t\\th3 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t}\\n\\n\\t\\th4 {\\n\\t\\t\\tfont-size: 18px;\\n\\t\\t}\\n\\n\\t\\th5 {\\n\\t\\t\\tfont-size: 17px;\\n\\t\\t}\\n\\n\\t\\th6 {\\n\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcDialog,{attrs:{\"content-classes\":\"app-changelog-dialog\",\"buttons\":_setup.dialogButtons,\"name\":_setup.t('updatenotification', 'What\\'s new in {app} {version}', { app: _setup.appName, version: _setup.appVersion }),\"open\":_vm.open && _setup.markdown !== undefined,\"size\":\"normal\"},on:{\"update:open\":function($event){return _vm.$emit('update:open', $event)}}},[_c(_setup.Markdown,{staticClass:\"app-changelog-dialog__text\",attrs:{\"markdown\":_setup.markdown,\"min-heading-level\":3}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * marked v17.0.6 - a markdown parser\n * Copyright (c) 2018-2026, MarkedJS. (MIT License)\n * Copyright (c) 2011-2018, Christopher Jeffrey. (MIT License)\n * https://github.com/markedjs/marked\n */\n\n/**\n * DO NOT EDIT THIS FILE\n * The code in this file is generated from files in ./src/\n */\n\nfunction M(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var O=M();function G(u){O=u}var _={exec:()=>null};function k(u,e=\"\"){let t=typeof u==\"string\"?u:u.source,n={replace:(r,i)=>{let s=typeof i==\"string\"?i:i.source;return s=s.replace(m.caret,\"$1\"),t=t.replace(r,s),n},getRegex:()=>new RegExp(t,e)};return n}var be=(()=>{try{return!!new RegExp(\"(?<=1)(?/,blockquoteSetextReplace:/\\n {0,3}((?:=+|-+) *)(?=\\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \\t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\\[[ xX]\\] +\\S/,listReplaceTask:/^\\[[ xX]\\] +/,listTaskCheckbox:/\\[[ xX]\\]/,anyLine:/\\n.*\\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\\||\\| *$/g,tableRowBlankLine:/\\n[ \\t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\\s|>)/i,endPreScriptTag:/^<\\/(pre|code|kbd|script)(\\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/,unicodeAlphaNumeric:/[\\p{L}\\p{N}]/u,escapeTest:/[&<>\"']/,escapeReplace:/[&<>\"']/g,escapeTestNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/,escapeReplaceNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/g,caret:/(^|[^\\[])\\^/g,percentDecode:/%25/g,findPipe:/\\|/g,splitPipe:/ \\|/,slashPipe:/\\\\\\|/g,carriageReturn:/\\r\\n|\\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\\S*/,endingNewline:/\\n$/,listItemRegex:u=>new RegExp(`^( {0,3}${u})((?:[\t ][^\\\\n]*)?(?:\\\\n|$))`),nextBulletRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}(?:[*+-]|\\\\d{1,9}[.)])((?:[ \t][^\\\\n]*)?(?:\\\\n|$))`),hrRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$)`),fencesBeginRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}(?:\\`\\`\\`|~~~)`),headingBeginRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}#`),htmlBeginRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}<(?:[a-z].*>|!--)`,\"i\"),blockquoteBeginRegex:u=>new RegExp(`^ {0,${Math.min(3,u-1)}}>`)},Re=/^(?:[ \\t]*(?:\\n|$))+/,Oe=/^((?: {4}| {0,3}\\t)[^\\n]+(?:\\n(?:[ \\t]*(?:\\n|$))*)?)+/,Te=/^ {0,3}(`{3,}(?=[^`\\n]*(?:\\n|$))|~{3,})([^\\n]*)(?:\\n|$)(?:|([\\s\\S]*?)(?:\\n|$))(?: {0,3}\\1[~`]* *(?=\\n|$)|$)/,C=/^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/,we=/^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/,Q=/ {0,3}(?:[*+-]|\\d{1,9}[.)])/,se=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\\n(?!\\s*?\\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,ie=k(se).replace(/bull/g,Q).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/\\|table/g,\"\").getRegex(),ye=k(se).replace(/bull/g,Q).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/table/g,/ {0,3}\\|?(?:[:\\- ]*\\|)+[\\:\\- ]*\\n/).getRegex(),j=/^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/,Pe=/^[^\\n]+/,F=/(?!\\s*\\])(?:\\\\[\\s\\S]|[^\\[\\]\\\\])+/,Se=k(/^ {0,3}\\[(label)\\]: *(?:\\n[ \\t]*)?([^<\\s][^\\s]*|<.*?>)(?:(?: +(?:\\n[ \\t]*)?| *\\n[ \\t]*)(title))? *(?:\\n+|$)/).replace(\"label\",F).replace(\"title\",/(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/).getRegex(),$e=k(/^(bull)([ \\t][^\\n]+?)?(?:\\n|$)/).replace(/bull/g,Q).getRegex(),v=\"address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul\",U=/|$))/,_e=k(\"^ {0,3}(?:<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:[^\\\\n]*\\\\n+|$)|comment[^\\\\n]*(\\\\n+|$)|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)|\\\\n*|$)|\\\\n*|$)|)[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$)|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$)|(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$))\",\"i\").replace(\"comment\",U).replace(\"tag\",v).replace(\"attribute\",/ +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/).getRegex(),oe=k(j).replace(\"hr\",C).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)])[ \\\\t]\").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex(),Le=k(/^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/).replace(\"paragraph\",oe).getRegex(),K={blockquote:Le,code:Oe,def:Se,fences:Te,heading:we,hr:C,html:_e,lheading:ie,list:$e,newline:Re,paragraph:oe,table:_,text:Pe},ne=k(\"^ *([^\\\\n ].*)\\\\n {0,3}((?:\\\\| *)?:?-+:? *(?:\\\\| *:?-+:? *)*(?:\\\\| *)?)(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)\").replace(\"hr\",C).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"blockquote\",\" {0,3}>\").replace(\"code\",\"(?: {4}| {0,3}\t)[^\\\\n]\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)])[ \\\\t]\").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex(),Me={...K,lheading:ye,table:ne,paragraph:k(j).replace(\"hr\",C).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"table\",ne).replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)])[ \\\\t]\").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex()},ze={...K,html:k(`^ *(?:comment *(?:\\\\n|\\\\s*$)|<(tag)[\\\\s\\\\S]+? *(?:\\\\n{2,}|\\\\s*$)|\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))`).replace(\"comment\",U).replace(/tag/g,\"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b\").getRegex(),def:/^ *\\[([^\\]]+)\\]: *]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,heading:/^(#{1,6})(.*)(?:\\n+|$)/,fences:_,lheading:/^(.+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,paragraph:k(j).replace(\"hr\",C).replace(\"heading\",` *#{1,6} *[^\n]`).replace(\"lheading\",ie).replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"|fences\",\"\").replace(\"|list\",\"\").replace(\"|html\",\"\").replace(\"|tag\",\"\").getRegex()},Ee=/^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,Ie=/^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,ae=/^( {2,}|\\\\)\\n(?!\\s*$)/,Ae=/^(`+|[^`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\`+)[^`]+\\k(?!`))*?\\]\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)]|\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)])*\\))*\\)/).replace(\"precode-\",be?\"(?`+)[^`]+\\k(?!`)/).replace(\"html\",/<(?! )[^<>]*?>/).getRegex(),ue=/^(?:\\*+(?:((?!\\*)punct)|([^\\s*]))?)|^_+(?:((?!_)punct)|([^\\s_]))?/,ve=k(ue,\"u\").replace(/punct/g,z).getRegex(),He=k(ue,\"u\").replace(/punct/g,le).getRegex(),pe=\"^[^_*]*?__[^_*]*?\\\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\\\*)punct(\\\\*+)(?=[\\\\s]|$)|notPunctSpace(\\\\*+)(?!\\\\*)(?=punctSpace|$)|(?!\\\\*)punctSpace(\\\\*+)(?=notPunctSpace)|[\\\\s](\\\\*+)(?!\\\\*)(?=punct)|(?!\\\\*)punct(\\\\*+)(?!\\\\*)(?=punct)|notPunctSpace(\\\\*+)(?=notPunctSpace)\",Ze=k(pe,\"gu\").replace(/notPunctSpace/g,W).replace(/punctSpace/g,H).replace(/punct/g,z).getRegex(),Ge=k(pe,\"gu\").replace(/notPunctSpace/g,De).replace(/punctSpace/g,Be).replace(/punct/g,le).getRegex(),Ne=k(\"^[^_*]*?\\\\*\\\\*[^_*]*?_[^_*]*?(?=\\\\*\\\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)\",\"gu\").replace(/notPunctSpace/g,W).replace(/punctSpace/g,H).replace(/punct/g,z).getRegex(),Qe=k(/^~~?(?:((?!~)punct)|[^\\s~])/,\"u\").replace(/punct/g,z).getRegex(),je=\"^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)\",Fe=k(je,\"gu\").replace(/notPunctSpace/g,W).replace(/punctSpace/g,H).replace(/punct/g,z).getRegex(),Ue=k(/\\\\(punct)/,\"gu\").replace(/punct/g,z).getRegex(),Ke=k(/^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/).replace(\"scheme\",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(\"email\",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),We=k(U).replace(\"(?:-->|$)\",\"-->\").getRegex(),Xe=k(\"^comment|^|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>|^<\\\\?[\\\\s\\\\S]*?\\\\?>|^|^\").replace(\"comment\",We).replace(\"attribute\",/\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/).getRegex(),q=/(?:\\[(?:\\\\[\\s\\S]|[^\\[\\]\\\\])*\\]|\\\\[\\s\\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\\])|[^\\[\\]\\\\`])*?/,Je=k(/^!?\\[(label)\\]\\(\\s*(href)(?:(?:[ \\t]+(?:\\n[ \\t]*)?|\\n[ \\t]*)(title))?\\s*\\)/).replace(\"label\",q).replace(\"href\",/<(?:\\\\.|[^\\n<>\\\\])+>|[^ \\t\\n\\x00-\\x1f]*/).replace(\"title\",/\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/).getRegex(),ce=k(/^!?\\[(label)\\]\\[(ref)\\]/).replace(\"label\",q).replace(\"ref\",F).getRegex(),he=k(/^!?\\[(ref)\\](?:\\[\\])?/).replace(\"ref\",F).getRegex(),Ve=k(\"reflink|nolink(?!\\\\()\",\"g\").replace(\"reflink\",ce).replace(\"nolink\",he).getRegex(),re=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,X={_backpedal:_,anyPunctuation:Ue,autolink:Ke,blockSkip:qe,br:ae,code:Ie,del:_,delLDelim:_,delRDelim:_,emStrongLDelim:ve,emStrongRDelimAst:Ze,emStrongRDelimUnd:Ne,escape:Ee,link:Je,nolink:he,punctuation:Ce,reflink:ce,reflinkSearch:Ve,tag:Xe,text:Ae,url:_},Ye={...X,link:k(/^!?\\[(label)\\]\\((.*?)\\)/).replace(\"label\",q).getRegex(),reflink:k(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/).replace(\"label\",q).getRegex()},N={...X,emStrongRDelimAst:Ge,emStrongLDelim:He,delLDelim:Qe,delRDelim:Fe,url:k(/^((?:protocol):\\/\\/|www\\.)(?:[a-zA-Z0-9\\-]+\\.?)+[^\\s<]*|^email/).replace(\"protocol\",re).replace(\"email\",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'\"~()&]+|\\([^)]*\\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'\"~)]+(?!$))+/,del:/^(~~?)(?=[^\\s~])((?:\\\\[\\s\\S]|[^\\\\])*?(?:\\\\[\\s\\S]|[^\\s~\\\\]))\\1(?=[^~]|$)/,text:k(/^([`~]+|[^`~])(?:(?= {2,}\\n)|(?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)|[\\s\\S]*?(?:(?=[\\\\\":\">\",'\"':\""\",\"'\":\"'\"},ke=u=>tt[u];function T(u,e){if(e){if(m.escapeTest.test(u))return u.replace(m.escapeReplace,ke)}else if(m.escapeTestNoEncode.test(u))return u.replace(m.escapeReplaceNoEncode,ke);return u}function J(u){try{u=encodeURI(u).replace(m.percentDecode,\"%\")}catch{return null}return u}function V(u,e){let t=u.replace(m.findPipe,(i,s,a)=>{let o=!1,l=s;for(;--l>=0&&a[l]===\"\\\\\";)o=!o;return o?\"|\":\" |\"}),n=t.split(m.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length0?-2:-1}function ge(u,e=0){let t=e,n=\"\";for(let r of u)if(r===\"\t\"){let i=4-t%4;n+=\" \".repeat(i),t+=i}else n+=r,t++;return n}function fe(u,e,t,n,r){let i=e.href,s=e.title||null,a=u[1].replace(r.other.outputLinkReplace,\"$1\");n.state.inLink=!0;let o={type:u[0].charAt(0)===\"!\"?\"image\":\"link\",raw:t,href:i,title:s,text:a,tokens:n.inlineTokens(a)};return n.state.inLink=!1,o}function nt(u,e,t){let n=u.match(t.other.indentCodeCompensation);if(n===null)return e;let r=n[1];return e.split(`\n`).map(i=>{let s=i.match(t.other.beginningSpace);if(s===null)return i;let[a]=s;return a.length>=r.length?i.slice(r.length):i}).join(`\n`)}var w=class{options;rules;lexer;constructor(e){this.options=e||O}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:\"space\",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let n=t[0].replace(this.rules.other.codeRemoveIndent,\"\");return{type:\"code\",raw:t[0],codeBlockStyle:\"indented\",text:this.options.pedantic?n:I(n,`\n`)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let n=t[0],r=nt(n,t[3]||\"\",this.rules);return{type:\"code\",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,\"$1\"):t[2],text:r}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(this.rules.other.endingHash.test(n)){let r=I(n,\"#\");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:\"heading\",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:\"hr\",raw:I(t[0],`\n`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let n=I(t[0],`\n`).split(`\n`),r=\"\",i=\"\",s=[];for(;n.length>0;){let a=!1,o=[],l;for(l=0;l1,i={type:\"list\",raw:\"\",ordered:r,start:r?+n.slice(0,-1):\"\",loose:!1,items:[]};n=r?`\\\\d{1,9}\\\\${n.slice(-1)}`:`\\\\${n}`,this.options.pedantic&&(n=r?n:\"[*+-]\");let s=this.rules.other.listItemRegex(n),a=!1;for(;e;){let l=!1,p=\"\",c=\"\";if(!(t=s.exec(e))||this.rules.block.hr.test(e))break;p=t[0],e=e.substring(p.length);let d=ge(t[2].split(`\n`,1)[0],t[1].length),h=e.split(`\n`,1)[0],R=!d.trim(),f=0;if(this.options.pedantic?(f=2,c=d.trimStart()):R?f=t[1].length+1:(f=d.search(this.rules.other.nonSpaceChar),f=f>4?1:f,c=d.slice(f),f+=t[1].length),R&&this.rules.other.blankLine.test(h)&&(p+=h+`\n`,e=e.substring(h.length+1),l=!0),!l){let S=this.rules.other.nextBulletRegex(f),Y=this.rules.other.hrRegex(f),ee=this.rules.other.fencesBeginRegex(f),te=this.rules.other.headingBeginRegex(f),me=this.rules.other.htmlBeginRegex(f),xe=this.rules.other.blockquoteBeginRegex(f);for(;e;){let Z=e.split(`\n`,1)[0],A;if(h=Z,this.options.pedantic?(h=h.replace(this.rules.other.listReplaceNesting,\" \"),A=h):A=h.replace(this.rules.other.tabCharGlobal,\" \"),ee.test(h)||te.test(h)||me.test(h)||xe.test(h)||S.test(h)||Y.test(h))break;if(A.search(this.rules.other.nonSpaceChar)>=f||!h.trim())c+=`\n`+A.slice(f);else{if(R||d.replace(this.rules.other.tabCharGlobal,\" \").search(this.rules.other.nonSpaceChar)>=4||ee.test(d)||te.test(d)||Y.test(d))break;c+=`\n`+h}R=!h.trim(),p+=Z+`\n`,e=e.substring(Z.length+1),d=A.slice(f)}}i.loose||(a?i.loose=!0:this.rules.other.doubleBlankLine.test(p)&&(a=!0)),i.items.push({type:\"list_item\",raw:p,task:!!this.options.gfm&&this.rules.other.listIsTask.test(c),loose:!1,text:c,tokens:[]}),i.raw+=p}let o=i.items.at(-1);if(o)o.raw=o.raw.trimEnd(),o.text=o.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let l of i.items){if(this.lexer.state.top=!1,l.tokens=this.lexer.blockTokens(l.text,[]),l.task){if(l.text=l.text.replace(this.rules.other.listReplaceTask,\"\"),l.tokens[0]?.type===\"text\"||l.tokens[0]?.type===\"paragraph\"){l.tokens[0].raw=l.tokens[0].raw.replace(this.rules.other.listReplaceTask,\"\"),l.tokens[0].text=l.tokens[0].text.replace(this.rules.other.listReplaceTask,\"\");for(let c=this.lexer.inlineQueue.length-1;c>=0;c--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[c].src)){this.lexer.inlineQueue[c].src=this.lexer.inlineQueue[c].src.replace(this.rules.other.listReplaceTask,\"\");break}}let p=this.rules.other.listTaskCheckbox.exec(l.raw);if(p){let c={type:\"checkbox\",raw:p[0]+\" \",checked:p[0]!==\"[ ]\"};l.checked=c.checked,i.loose?l.tokens[0]&&[\"paragraph\",\"text\"].includes(l.tokens[0].type)&&\"tokens\"in l.tokens[0]&&l.tokens[0].tokens?(l.tokens[0].raw=c.raw+l.tokens[0].raw,l.tokens[0].text=c.raw+l.tokens[0].text,l.tokens[0].tokens.unshift(c)):l.tokens.unshift({type:\"paragraph\",raw:c.raw,text:c.raw,tokens:[c]}):l.tokens.unshift(c)}}if(!i.loose){let p=l.tokens.filter(d=>d.type===\"space\"),c=p.length>0&&p.some(d=>this.rules.other.anyLine.test(d.raw));i.loose=c}}if(i.loose)for(let l of i.items){l.loose=!0;for(let p of l.tokens)p.type===\"text\"&&(p.type=\"paragraph\")}return i}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:\"html\",block:!0,raw:t[0],pre:t[1]===\"pre\"||t[1]===\"script\"||t[1]===\"style\",text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let n=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal,\" \"),r=t[2]?t[2].replace(this.rules.other.hrefBrackets,\"$1\").replace(this.rules.inline.anyPunctuation,\"$1\"):\"\",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,\"$1\"):t[3];return{type:\"def\",tag:n,raw:t[0],href:r,title:i}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=V(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,\"\").split(\"|\"),i=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,\"\").split(`\n`):[],s={type:\"table\",raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let a of r)this.rules.other.tableAlignRight.test(a)?s.align.push(\"right\"):this.rules.other.tableAlignCenter.test(a)?s.align.push(\"center\"):this.rules.other.tableAlignLeft.test(a)?s.align.push(\"left\"):s.align.push(null);for(let a=0;a({text:o,tokens:this.lexer.inline(o),header:!1,align:s.align[l]})));return s}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let n=t[1].trim();return{type:\"heading\",raw:t[0],depth:t[2].charAt(0)===\"=\"?1:2,text:n,tokens:this.lexer.inline(n)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let n=t[1].charAt(t[1].length-1)===`\n`?t[1].slice(0,-1):t[1];return{type:\"paragraph\",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:\"text\",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:\"escape\",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:\"html\",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let n=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(n)){if(!this.rules.other.endAngleBracket.test(n))return;let s=I(n.slice(0,-1),\"\\\\\");if((n.length-s.length)%2===0)return}else{let s=de(t[2],\"()\");if(s===-2)return;if(s>-1){let o=(t[0].indexOf(\"!\")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,o).trim(),t[3]=\"\"}}let r=t[2],i=\"\";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(r);s&&(r=s[1],i=s[3])}else i=t[3]?t[3].slice(1,-1):\"\";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?r=r.slice(1):r=r.slice(1,-1)),fe(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,\"$1\"),title:i&&i.replace(this.rules.inline.anyPunctuation,\"$1\")},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let r=(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,\" \"),i=t[r.toLowerCase()];if(!i){let s=n[0].charAt(0);return{type:\"text\",raw:s,text:s}}return fe(n,i,n[0],this.lexer,this.rules)}}emStrong(e,t,n=\"\"){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||!r[1]&&!r[2]&&!r[3]&&!r[4]||r[4]&&n.match(this.rules.other.unicodeAlphaNumeric))return;if(!(r[1]||r[3]||\"\")||!n||this.rules.inline.punctuation.exec(n)){let s=[...r[0]].length-1,a,o,l=s,p=0,c=r[0][0]===\"*\"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+s);(r=c.exec(t))!==null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(o=[...a].length,r[3]||r[4]){l+=o;continue}else if((r[5]||r[6])&&s%3&&!((s+o)%3)){p+=o;continue}if(l-=o,l>0)continue;o=Math.min(o,o+l+p);let d=[...r[0]][0].length,h=e.slice(0,s+r.index+d+o);if(Math.min(s,o)%2){let f=h.slice(1,-1);return{type:\"em\",raw:h,text:f,tokens:this.lexer.inlineTokens(f)}}let R=h.slice(2,-2);return{type:\"strong\",raw:h,text:R,tokens:this.lexer.inlineTokens(R)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(this.rules.other.newLineCharGlobal,\" \"),r=this.rules.other.nonSpaceChar.test(n),i=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&i&&(n=n.substring(1,n.length-1)),{type:\"codespan\",raw:t[0],text:n}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:\"br\",raw:t[0]}}del(e,t,n=\"\"){let r=this.rules.inline.delLDelim.exec(e);if(!r)return;if(!(r[1]||\"\")||!n||this.rules.inline.punctuation.exec(n)){let s=[...r[0]].length-1,a,o,l=s,p=this.rules.inline.delRDelim;for(p.lastIndex=0,t=t.slice(-1*e.length+s);(r=p.exec(t))!==null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a||(o=[...a].length,o!==s))continue;if(r[3]||r[4]){l+=o;continue}if(l-=o,l>0)continue;o=Math.min(o,o+l);let c=[...r[0]][0].length,d=e.slice(0,s+r.index+c+o),h=d.slice(s,-s);return{type:\"del\",raw:d,text:h,tokens:this.lexer.inlineTokens(h)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let n,r;return t[2]===\"@\"?(n=t[1],r=\"mailto:\"+n):(n=t[1],r=n),{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let n,r;if(t[2]===\"@\")n=t[0],r=\"mailto:\"+n;else{let i;do i=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??\"\";while(i!==t[0]);n=t[0],t[1]===\"www.\"?r=\"http://\"+t[0]:r=t[0]}return{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let n=this.lexer.state.inRawBlock;return{type:\"text\",raw:t[0],text:t[0],escaped:n}}}};var x=class u{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||O,this.options.tokenizer=this.options.tokenizer||new w,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:m,block:B.normal,inline:E.normal};this.options.pedantic?(t.block=B.pedantic,t.inline=E.pedantic):this.options.gfm&&(t.block=B.gfm,this.options.breaks?t.inline=E.breaks:t.inline=E.gfm),this.tokenizer.rules=t}static get rules(){return{block:B,inline:E}}static lex(e,t){return new u(t).lex(e)}static lexInline(e,t){return new u(t).inlineTokens(e)}lex(e){e=e.replace(m.carriageReturn,`\n`),this.blockTokens(e,this.tokens);for(let t=0;t(r=s.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let s=t.at(-1);r.raw.length===1&&s!==void 0?s.raw+=`\n`:t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"paragraph\"||s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.at(-1).src=s.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"paragraph\"||s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.raw,this.inlineQueue.at(-1).src=s.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startBlock){let s=1/0,a=e.slice(1),o;this.options.extensions.startBlock.forEach(l=>{o=l.call({lexer:this},a),typeof o==\"number\"&&o>=0&&(s=Math.min(s,o))}),s<1/0&&s>=0&&(i=e.substring(0,s+1))}if(this.state.top&&(r=this.tokenizer.paragraph(i))){let s=t.at(-1);n&&s?.type===\"paragraph\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):t.push(r),n=i.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):t.push(r);continue}if(e){let s=\"Infinite loop on byte: \"+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){this.tokenizer.lexer=this;let n=e,r=null;if(this.tokens.links){let o=Object.keys(this.tokens.links);if(o.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(n))!==null;)o.includes(r[0].slice(r[0].lastIndexOf(\"[\")+1,-1))&&(n=n.slice(0,r.index)+\"[\"+\"a\".repeat(r[0].length-2)+\"]\"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(n))!==null;)n=n.slice(0,r.index)+\"++\"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let i;for(;(r=this.tokenizer.rules.inline.blockSkip.exec(n))!==null;)i=r[2]?r[2].length:0,n=n.slice(0,r.index+i)+\"[\"+\"a\".repeat(r[0].length-i-2)+\"]\"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let s=!1,a=\"\";for(;e;){s||(a=\"\"),s=!1;let o;if(this.options.extensions?.inline?.some(p=>(o=p.call({lexer:this},e,t))?(e=e.substring(o.raw.length),t.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let p=t.at(-1);o.type===\"text\"&&p?.type===\"text\"?(p.raw+=o.raw,p.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,n,a)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e,n,a)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),t.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),t.push(o);continue}let l=e;if(this.options.extensions?.startInline){let p=1/0,c=e.slice(1),d;this.options.extensions.startInline.forEach(h=>{d=h.call({lexer:this},c),typeof d==\"number\"&&d>=0&&(p=Math.min(p,d))}),p<1/0&&p>=0&&(l=e.substring(0,p+1))}if(o=this.tokenizer.inlineText(l)){e=e.substring(o.raw.length),o.raw.slice(-1)!==\"_\"&&(a=o.raw.slice(-1)),s=!0;let p=t.at(-1);p?.type===\"text\"?(p.raw+=o.raw,p.text+=o.text):t.push(o);continue}if(e){let p=\"Infinite loop on byte: \"+e.charCodeAt(0);if(this.options.silent){console.error(p);break}else throw new Error(p)}}return t}};var y=class{options;parser;constructor(e){this.options=e||O}space(e){return\"\"}code({text:e,lang:t,escaped:n}){let r=(t||\"\").match(m.notSpaceStart)?.[0],i=e.replace(m.endingNewline,\"\")+`\n`;return r?'
    '+(n?i:T(i,!0))+`
    \n`:\"
    \"+(n?i:T(i,!0))+`
    \n`}blockquote({tokens:e}){return`
    \n${this.parser.parse(e)}
    \n`}html({text:e}){return e}def(e){return\"\"}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)}\n`}hr(e){return`
    \n`}list(e){let t=e.ordered,n=e.start,r=\"\";for(let a=0;a\n`+r+\"\n`}listitem(e){return`
  • ${this.parser.parse(e.tokens)}
  • \n`}checkbox({checked:e}){return\" '}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    \n`}table(e){let t=\"\",n=\"\";for(let i=0;i${r}`),`\n\n`+t+`\n`+r+`
    \n`}tablerow({text:e}){return`\n${e}\n`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?\"th\":\"td\";return(e.align?`<${n} align=\"${e.align}\">`:`<${n}>`)+t+`\n`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${T(e,!0)}`}br(e){return\"
    \"}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=J(e);if(i===null)return r;e=i;let s='
    \"+r+\"\",s}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=J(e);if(i===null)return T(n);e=i;let s=`\"${T(n)}\"`;return\",s}text(e){return\"tokens\"in e&&e.tokens?this.parser.parseInline(e.tokens):\"escaped\"in e&&e.escaped?e.text:T(e.text)}};var $=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return\"\"+e}image({text:e}){return\"\"+e}br(){return\"\"}checkbox({raw:e}){return e}};var b=class u{options;renderer;textRenderer;constructor(e){this.options=e||O,this.options.renderer=this.options.renderer||new y,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new $}static parse(e,t){return new u(t).parse(e)}static parseInline(e,t){return new u(t).parseInline(e)}parse(e){this.renderer.parser=this;let t=\"\";for(let n=0;n{let a=i[s].flat(1/0);n=n.concat(this.walkTokens(a,t))}):i.tokens&&(n=n.concat(this.walkTokens(i.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{let r={...n};if(r.async=this.defaults.async||r.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error(\"extension name required\");if(\"renderer\"in i){let s=t.renderers[i.name];s?t.renderers[i.name]=function(...a){let o=i.renderer.apply(this,a);return o===!1&&(o=s.apply(this,a)),o}:t.renderers[i.name]=i.renderer}if(\"tokenizer\"in i){if(!i.level||i.level!==\"block\"&&i.level!==\"inline\")throw new Error(\"extension level must be 'block' or 'inline'\");let s=t[i.level];s?s.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level===\"block\"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level===\"inline\"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}\"childTokens\"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),r.extensions=t),n.renderer){let i=this.defaults.renderer||new y(this.defaults);for(let s in n.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if([\"options\",\"parser\"].includes(s))continue;let a=s,o=n.renderer[a],l=i[a];i[a]=(...p)=>{let c=o.apply(i,p);return c===!1&&(c=l.apply(i,p)),c||\"\"}}r.renderer=i}if(n.tokenizer){let i=this.defaults.tokenizer||new w(this.defaults);for(let s in n.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if([\"options\",\"rules\",\"lexer\"].includes(s))continue;let a=s,o=n.tokenizer[a],l=i[a];i[a]=(...p)=>{let c=o.apply(i,p);return c===!1&&(c=l.apply(i,p)),c}}r.tokenizer=i}if(n.hooks){let i=this.defaults.hooks||new P;for(let s in n.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if([\"options\",\"block\"].includes(s))continue;let a=s,o=n.hooks[a],l=i[a];P.passThroughHooks.has(s)?i[a]=p=>{if(this.defaults.async&&P.passThroughHooksRespectAsync.has(s))return(async()=>{let d=await o.call(i,p);return l.call(i,d)})();let c=o.call(i,p);return l.call(i,c)}:i[a]=(...p)=>{if(this.defaults.async)return(async()=>{let d=await o.apply(i,p);return d===!1&&(d=await l.apply(i,p)),d})();let c=o.apply(i,p);return c===!1&&(c=l.apply(i,p)),c}}r.hooks=i}if(n.walkTokens){let i=this.defaults.walkTokens,s=n.walkTokens;r.walkTokens=function(a){let o=[];return o.push(s.call(this,a)),i&&(o=o.concat(i.call(this,a))),o}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return x.lex(e,t??this.defaults)}parser(e,t){return b.parse(e,t??this.defaults)}parseMarkdown(e){return(n,r)=>{let i={...r},s={...this.defaults,...i},a=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&i.async===!1)return a(new Error(\"marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.\"));if(typeof n>\"u\"||n===null)return a(new Error(\"marked(): input parameter is undefined or null\"));if(typeof n!=\"string\")return a(new Error(\"marked(): input parameter is of type \"+Object.prototype.toString.call(n)+\", string expected\"));if(s.hooks&&(s.hooks.options=s,s.hooks.block=e),s.async)return(async()=>{let o=s.hooks?await s.hooks.preprocess(n):n,p=await(s.hooks?await s.hooks.provideLexer(e):e?x.lex:x.lexInline)(o,s),c=s.hooks?await s.hooks.processAllTokens(p):p;s.walkTokens&&await Promise.all(this.walkTokens(c,s.walkTokens));let h=await(s.hooks?await s.hooks.provideParser(e):e?b.parse:b.parseInline)(c,s);return s.hooks?await s.hooks.postprocess(h):h})().catch(a);try{s.hooks&&(n=s.hooks.preprocess(n));let l=(s.hooks?s.hooks.provideLexer(e):e?x.lex:x.lexInline)(n,s);s.hooks&&(l=s.hooks.processAllTokens(l)),s.walkTokens&&this.walkTokens(l,s.walkTokens);let c=(s.hooks?s.hooks.provideParser(e):e?b.parse:b.parseInline)(l,s);return s.hooks&&(c=s.hooks.postprocess(c)),c}catch(o){return a(o)}}}onError(e,t){return n=>{if(n.message+=`\nPlease report this to https://github.com/markedjs/marked.`,e){let r=\"

    An error occurred:

    \"+T(n.message+\"\",!0)+\"
    \";return t?Promise.resolve(r):r}if(t)return Promise.reject(n);throw n}}};var L=new D;function g(u,e){return L.parse(u,e)}g.options=g.setOptions=function(u){return L.setOptions(u),g.defaults=L.defaults,G(g.defaults),g};g.getDefaults=M;g.defaults=O;g.use=function(...u){return L.use(...u),g.defaults=L.defaults,G(g.defaults),g};g.walkTokens=function(u,e){return L.walkTokens(u,e)};g.parseInline=L.parseInline;g.Parser=b;g.parser=b.parse;g.Renderer=y;g.TextRenderer=$;g.Lexer=x;g.lexer=x.lex;g.Tokenizer=w;g.Hooks=P;g.parse=g;var Qt=g.options,jt=g.setOptions,Ft=g.use,Ut=g.walkTokens,Kt=g.parseInline,Wt=g,Xt=b.parse,Jt=x.lex;export{P as Hooks,x as Lexer,D as Marked,b as Parser,y as Renderer,$ as TextRenderer,w as Tokenizer,O as defaults,M as getDefaults,Jt as lexer,g as marked,Qt as options,Wt as parse,Kt as parseInline,Xt as parser,jt as setOptions,Ft as use,Ut as walkTokens};\n//# sourceMappingURL=marked.esm.js.map\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"markdown\",domProps:{\"innerHTML\":_vm._s(_setup.html)}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Markdown.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Markdown.vue?vue&type=script&setup=true&lang=ts\"","import dompurify from 'dompurify';\nimport { marked } from 'marked';\nimport { computed } from 'vue';\n/**\n *\n * @param text\n * @param minHeadingLevel\n */\nexport function useMarkdown(text, minHeadingLevel) {\n const minHeading = computed(() => Math.min(Math.max(minHeadingLevel.value ?? 1, 1), 6));\n const renderer = new marked.Renderer();\n renderer.link = function (href, title, text) {\n let out = `';\n return out;\n };\n renderer.image = function (href, title, text) {\n if (text) {\n return text;\n }\n return title ?? '';\n };\n renderer.heading = (text, level) => {\n const headingLevel = Math.max(minHeading.value, level);\n return `${text}`;\n };\n const html = computed(() => dompurify.sanitize(marked((text.value ?? '').trim(), {\n renderer,\n gfm: false,\n breaks: false,\n pedantic: false,\n }), {\n SAFE_FOR_JQUERY: true,\n ALLOWED_TAGS: [\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'strong',\n 'p',\n 'a',\n 'ul',\n 'ol',\n 'li',\n 'em',\n 'del',\n 'blockquote',\n ],\n }));\n return { html };\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Markdown.vue?vue&type=style&index=0&id=98b6d70a&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Markdown.vue?vue&type=style&index=0&id=98b6d70a&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Markdown.vue?vue&type=template&id=98b6d70a&scoped=true\"\nimport script from \"./Markdown.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Markdown.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./Markdown.vue?vue&type=style&index=0&id=98b6d70a&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 \"98b6d70a\",\n null\n \n)\n\nexport default component.exports","/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport const logger = getLoggerBuilder()\n .detectLogLevel()\n .setApp('updatenotification')\n .build();\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppChangelogDialog.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppChangelogDialog.vue?vue&type=script&setup=true&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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppChangelogDialog.vue?vue&type=style&index=0&id=7b1cfb7a&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppChangelogDialog.vue?vue&type=style&index=0&id=7b1cfb7a&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AppChangelogDialog.vue?vue&type=template&id=7b1cfb7a&scoped=true\"\nimport script from \"./AppChangelogDialog.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppChangelogDialog.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./AppChangelogDialog.vue?vue&type=style&index=0&id=7b1cfb7a&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 \"7b1cfb7a\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","O","async","breaks","extensions","gfm","hooks","pedantic","renderer","silent","tokenizer","walkTokens","G","u","_","exec","k","e","t","source","n","replace","r","i","s","m","caret","getRegex","RegExp","be","codeRemoveIndent","outputLinkReplace","indentCodeCompensation","beginningSpace","endingHash","startingSpaceChar","endingSpaceChar","nonSpaceChar","newLineCharGlobal","tabCharGlobal","multipleSpaceGlobal","blankLine","doubleBlankLine","blockquoteStart","blockquoteSetextReplace","blockquoteSetextReplace2","listReplaceNesting","listIsTask","listReplaceTask","listTaskCheckbox","anyLine","hrefBrackets","tableDelimiter","tableAlignChars","tableRowBlankLine","tableAlignRight","tableAlignCenter","tableAlignLeft","startATag","endATag","startPreScriptTag","endPreScriptTag","startAngleBracket","endAngleBracket","pedanticHrefTitle","unicodeAlphaNumeric","escapeTest","escapeReplace","escapeTestNoEncode","escapeReplaceNoEncode","percentDecode","findPipe","splitPipe","slashPipe","carriageReturn","spaceLine","notSpaceStart","endingNewline","listItemRegex","nextBulletRegex","Math","min","hrRegex","fencesBeginRegex","headingBeginRegex","htmlBeginRegex","blockquoteBeginRegex","C","Q","se","ie","ye","j","F","Se","$e","v","U","_e","oe","K","blockquote","code","def","fences","heading","hr","html","lheading","list","newline","paragraph","table","text","ne","Me","ze","ae","z","H","W","Ce","le","qe","ue","ve","He","pe","Ze","Ge","Ne","Qe","Fe","Ue","Ke","We","Xe","q","Je","ce","he","re","X","_backpedal","anyPunctuation","autolink","blockSkip","br","del","delLDelim","delRDelim","emStrongLDelim","emStrongRDelimAst","emStrongRDelimUnd","escape","link","nolink","punctuation","reflink","reflinkSearch","tag","url","Ye","N","et","B","normal","E","tt","ke","T","test","J","encodeURI","V","a","o","l","split","trim","shift","length","at","pop","splice","I","charAt","slice","ge","repeat","fe","href","title","other","state","inLink","type","raw","tokens","inlineTokens","w","options","rules","lexer","constructor","this","space","block","codeBlockStyle","match","map","join","nt","lang","inline","depth","p","c","d","top","blockTokens","h","R","f","S","substring","ordered","start","loose","items","trimStart","search","Y","ee","te","me","xe","A","Z","task","trimEnd","inlineQueue","src","checked","includes","unshift","filter","some","pre","toLowerCase","header","align","rows","inRawBlock","indexOf","de","emStrong","lastIndex","index","codespan","inlineText","escaped","x","links","Object","create","lex","lexInline","call","endsWith","startBlock","forEach","charCodeAt","console","error","Error","keys","lastIndexOf","emStrongMask","startInline","y","parser","parse","parseInline","listitem","checkbox","tablecell","tablerow","strong","em","image","textRenderer","$","b","renderers","P","static","Set","preprocess","postprocess","processAllTokens","provideLexer","provideParser","L","defaults","setOptions","parseMarkdown","Parser","Renderer","TextRenderer","Lexer","Tokenizer","Hooks","use","concat","childTokens","flat","name","apply","level","passThroughHooks","has","passThroughHooksRespectAsync","onError","prototype","toString","Promise","all","catch","message","resolve","reject","g","getDefaults","components_Markdownvue_type_script_setup_true_lang_ts","_defineComponent","__name","props","markdown","minHeadingLevel","default","setup","__props","minHeading","computed","max","value","marked","out","headingLevel","dompurify","sanitize","SAFE_FOR_JQUERY","ALLOWED_TAGS","useMarkdown","toRef","__sfc","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","Markdownvue_type_style_index_0_id_98b6d70a_prod_scoped_true_lang_scss","locals","Markdown","componentNormalizer","_vm","_c","_self","_setup","_setupProxy","staticClass","domProps","innerHTML","_s","logger","getLoggerBuilder","detectLogLevel","setApp","build","components_AppChangelogDialogvue_type_script_setup_true_lang_ts","appId","undefined","open","Boolean","emits","emit","dialogButtons","label","callback","window","variant","appName","ref","appVersion","watchEffect","generateOcsUrl","app","axios","get","then","data","ocs","content","response","status","l10n_dist","Tl","NcDialog","AppChangelogDialogvue_type_style_index_0_id_7b1cfb7a_prod_scoped_true_lang_scss_options","AppChangelogDialogvue_type_style_index_0_id_7b1cfb7a_prod_scoped_true_lang_scss","AppChangelogDialog","attrs","buttons","size","on","$event","$emit"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/3874-3874.js.map.license b/dist/3874-3874.js.map.license new file mode 120000 index 0000000000000..01c912257a71e --- /dev/null +++ b/dist/3874-3874.js.map.license @@ -0,0 +1 @@ +3874-3874.js.license \ No newline at end of file diff --git a/dist/1598-1598.js b/dist/4433-4433.js similarity index 99% rename from dist/1598-1598.js rename to dist/4433-4433.js index 8595c87c91a1e..90497689bb765 100644 --- a/dist/1598-1598.js +++ b/dist/4433-4433.js @@ -1,2 +1,2 @@ -"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[1598],{73785(t,e,i){var n=i(71354),a=i.n(n),s=i(76314),r=i.n(s)()(a());r.push([t.id,"/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-c8e429a5] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.nc-chip[data-v-c8e429a5] {\n --chip-size: 24px;\n --chip-radius: calc(var(--chip-size) / 2);\n height: var(--chip-size);\n max-width: fit-content;\n display: flex;\n flex-direction: row;\n align-items: center;\n border-radius: var(--chip-radius);\n background-color: var(--color-background-hover);\n}\n.nc-chip--primary[data-v-c8e429a5] {\n background-color: var(--color-primary-element);\n color: var(--color-primary-element-text);\n}\n.nc-chip--secondary[data-v-c8e429a5] {\n background-color: var(--color-primary-element-light);\n color: var(--color-primary-element-light-text);\n}\n.nc-chip--error[data-v-c8e429a5] {\n background-color: var(--color-error);\n color: var(--color-error-text);\n}\n.nc-chip--warning[data-v-c8e429a5] {\n background-color: var(--color-warning);\n color: var(--color-warning-text);\n}\n.nc-chip--success[data-v-c8e429a5] {\n background-color: var(--color-success);\n color: var(--color-success-text);\n}\n.nc-chip--no-actions .nc-chip__text[data-v-c8e429a5] {\n padding-inline-end: calc(2 * var(--default-grid-baseline));\n}\n.nc-chip--no-icon .nc-chip__text[data-v-c8e429a5] {\n padding-inline-start: calc(2 * var(--default-grid-baseline));\n}\n.nc-chip__text[data-v-c8e429a5] {\n flex: 1 auto;\n overflow: hidden;\n text-overflow: ellipsis;\n text-wrap: nowrap;\n}\n.nc-chip__icon[data-v-c8e429a5] {\n flex: 0 0 var(--chip-size);\n margin-inline-end: var(--default-grid-baseline);\n line-height: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n height: var(--chip-size);\n width: var(--chip-size);\n}\n.nc-chip__actions[data-v-c8e429a5] {\n flex: 0 0 var(--chip-size);\n --default-clickable-area: var(--chip-size);\n --border-radius-element: var(--chip-radius);\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/vue/dist/assets/NcChip-DLfUzq07.css"],names:[],mappings:"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iBAAiB;EACjB,yCAAyC;EACzC,wBAAwB;EACxB,sBAAsB;EACtB,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,iCAAiC;EACjC,+CAA+C;AACjD;AACA;EACE,8CAA8C;EAC9C,wCAAwC;AAC1C;AACA;EACE,oDAAoD;EACpD,8CAA8C;AAChD;AACA;EACE,oCAAoC;EACpC,8BAA8B;AAChC;AACA;EACE,sCAAsC;EACtC,gCAAgC;AAClC;AACA;EACE,sCAAsC;EACtC,gCAAgC;AAClC;AACA;EACE,0DAA0D;AAC5D;AACA;EACE,4DAA4D;AAC9D;AACA;EACE,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;EACvB,iBAAiB;AACnB;AACA;EACE,0BAA0B;EAC1B,+CAA+C;EAC/C,cAAc;EACd,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,gBAAgB;EAChB,wBAAwB;EACxB,uBAAuB;AACzB;AACA;EACE,0BAA0B;EAC1B,0CAA0C;EAC1C,2CAA2C;AAC7C",sourcesContent:["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-c8e429a5] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.nc-chip[data-v-c8e429a5] {\n --chip-size: 24px;\n --chip-radius: calc(var(--chip-size) / 2);\n height: var(--chip-size);\n max-width: fit-content;\n display: flex;\n flex-direction: row;\n align-items: center;\n border-radius: var(--chip-radius);\n background-color: var(--color-background-hover);\n}\n.nc-chip--primary[data-v-c8e429a5] {\n background-color: var(--color-primary-element);\n color: var(--color-primary-element-text);\n}\n.nc-chip--secondary[data-v-c8e429a5] {\n background-color: var(--color-primary-element-light);\n color: var(--color-primary-element-light-text);\n}\n.nc-chip--error[data-v-c8e429a5] {\n background-color: var(--color-error);\n color: var(--color-error-text);\n}\n.nc-chip--warning[data-v-c8e429a5] {\n background-color: var(--color-warning);\n color: var(--color-warning-text);\n}\n.nc-chip--success[data-v-c8e429a5] {\n background-color: var(--color-success);\n color: var(--color-success-text);\n}\n.nc-chip--no-actions .nc-chip__text[data-v-c8e429a5] {\n padding-inline-end: calc(2 * var(--default-grid-baseline));\n}\n.nc-chip--no-icon .nc-chip__text[data-v-c8e429a5] {\n padding-inline-start: calc(2 * var(--default-grid-baseline));\n}\n.nc-chip__text[data-v-c8e429a5] {\n flex: 1 auto;\n overflow: hidden;\n text-overflow: ellipsis;\n text-wrap: nowrap;\n}\n.nc-chip__icon[data-v-c8e429a5] {\n flex: 0 0 var(--chip-size);\n margin-inline-end: var(--default-grid-baseline);\n line-height: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n height: var(--chip-size);\n width: var(--chip-size);\n}\n.nc-chip__actions[data-v-c8e429a5] {\n flex: 0 0 var(--chip-size);\n --default-clickable-area: var(--chip-size);\n --border-radius-element: var(--chip-radius);\n}"],sourceRoot:""}]);const o=r;i.d(e,["A",0,o])},27542(t,e,i){var n=i(71354),a=i.n(n),s=i(76314),r=i.n(s)()(a());r.push([t.id,".file-request-dialog{--margin: 18px}.file-request-dialog__header{margin:0 var(--margin)}.file-request-dialog__form{position:relative;overflow:auto;padding:var(--margin) var(--margin);margin-top:calc(-1*var(--margin))}.file-request-dialog fieldset{display:flex;flex-direction:column;width:100%;margin-top:var(--margin)}.file-request-dialog fieldset legend{display:flex;align-items:center;width:100%}.file-request-dialog__info{color:var(--color-text-maxcontrast);padding-block:4px;display:flex;align-items:center}.file-request-dialog__info .file-request-dialog__info-icon{margin-inline-end:8px}.file-request-dialog .dialog__actions{width:auto;margin-inline:12px}.file-request-dialog .dialog__actions span.dialog__actions-separator{margin-inline-start:auto}.file-request-dialog .input-field__helper-text-message{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/NewFileRequestDialog.vue"],names:[],mappings:"AACA,qBACC,cAAA,CAEA,6BACC,sBAAA,CAGD,2BACC,iBAAA,CACA,aAAA,CACA,mCAAA,CAEA,iCAAA,CAGD,8BACC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,wBAAA,CAEA,qCACC,YAAA,CACA,kBAAA,CACA,UAAA,CAMF,2BACC,mCAAA,CACA,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,2DACC,qBAAA,CAIF,sCACC,UAAA,CACA,kBAAA,CACA,qEACC,wBAAA,CAIF,uDAEC,mCAAA",sourcesContent:["\n.file-request-dialog {\n\t--margin: 18px;\n\n\t&__header {\n\t\tmargin: 0 var(--margin);\n\t}\n\n\t&__form {\n\t\tposition: relative;\n\t\toverflow: auto;\n\t\tpadding: var(--margin) var(--margin);\n\t\t// overlap header bottom padding\n\t\tmargin-top: calc(-1 * var(--margin));\n\t}\n\n\tfieldset {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\twidth: 100%;\n\t\tmargin-top: var(--margin);\n\n\t\tlegend {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\twidth: 100%;\n\t\t}\n\t}\n\n\t// Using a NcNoteCard was a bit much sometimes.\n\t// Using a simple paragraph instead does it.\n\t&__info {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tpadding-block: 4px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\t.file-request-dialog__info-icon {\n\t\t\tmargin-inline-end: 8px;\n\t\t}\n\t}\n\n\t.dialog__actions {\n\t\twidth: auto;\n\t\tmargin-inline: 12px;\n\t\tspan.dialog__actions-separator {\n\t\t\tmargin-inline-start: auto;\n\t\t}\n\t}\n\n\t.input-field__helper-text-message {\n\t\t// reduce helper text standing out\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(e,["A",0,o])},25438(t,e,i){var n=i(71354),a=i.n(n),s=i(76314),r=i.n(s)()(a());r.push([t.id,".file-request-dialog__password-field[data-v-4f93c9b6]{display:flex;align-items:flex-start;gap:8px;margin-top:12px}.file-request-dialog__password-field>div[data-v-4f93c9b6]{margin:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogDatePassword.vue"],names:[],mappings:"AACA,sDACC,YAAA,CACA,sBAAA,CACA,OAAA,CAEA,eAAA,CACA,0DAEC,QAAA",sourcesContent:["\n.file-request-dialog__password-field {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tgap: 8px;\n\t// Compensate label gab with legend\n\tmargin-top: 12px;\n\t> div {\n\t\t// Force margin to 0 as we handle it above\n\t\tmargin: 0;\n\t}\n}\n"],sourceRoot:""}]);const o=r;i.d(e,["A",0,o])},74088(t,e,i){var n=i(71354),a=i.n(n),s=i(76314),r=i.n(s)()(a());r.push([t.id,"\n.input-field[data-v-99464cac],\n.file-request-dialog__emails[data-v-99464cac] {\n\tmargin-top: var(--margin);\n}\n.file-request-dialog__emails[data-v-99464cac] {\n\tdisplay: flex;\n\tgap: var(--default-grid-baseline);\n\tflex-wrap: wrap;\n}\n","",{version:3,sources:["webpack://./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogFinish.vue"],names:[],mappings:";AAuOA;;CAEA,yBAAA;AACA;AAEA;CACA,aAAA;CACA,iCAAA;CACA,eAAA;AACA",sourcesContent:["\x3c!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n--\x3e\n\n\n\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.file-request-dialog__note[data-v-f8940020] textarea {\n\twidth: 100% !important;\n\tmin-height: 80px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogIntro.vue\"],\"names\":[],\"mappings\":\";AAwKA;CACA,sBAAA;CACA,gBAAA;AACA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcDialog',{staticClass:\"file-request-dialog\",attrs:{\"data-cy-file-request-dialog\":\"\",\"close-on-click-outside\":false,\"name\":_vm.currentStep !== _vm.STEP.LAST ? _vm.t('files_sharing', 'Create a file request') : _vm.t('files_sharing', 'File request created'),\"size\":\"normal\"},on:{\"closing\":_vm.onCancel},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('NcButton',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.SECOND),expression:\"currentStep === STEP.SECOND\"}],attrs:{\"aria-label\":_vm.t('files_sharing', 'Previous step'),\"disabled\":_vm.loading,\"data-cy-file-request-dialog-controls\":\"back\",\"variant\":\"tertiary\"},on:{\"click\":function($event){_vm.currentStep = _vm.STEP.FIRST}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Previous step'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('span',{staticClass:\"dialog__actions-separator\"}),_vm._v(\" \"),(_vm.currentStep !== _vm.STEP.LAST)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Cancel'),\"disabled\":_vm.loading,\"title\":_vm.t('files_sharing', 'Cancel the file request creation'),\"data-cy-file-request-dialog-controls\":\"cancel\",\"variant\":\"tertiary\"},on:{\"click\":_vm.onCancel}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\")]):(_vm.emails.length !== 0)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Close without sending emails'),\"disabled\":_vm.loading,\"title\":_vm.t('files_sharing', 'Close without sending emails'),\"data-cy-file-request-dialog-controls\":\"cancel\",\"variant\":\"tertiary\"},on:{\"click\":_vm.onCancel}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Close'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.currentStep !== _vm.STEP.LAST)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Continue'),\"disabled\":_vm.loading,\"data-cy-file-request-dialog-controls\":\"next\"},on:{\"click\":_vm.onPageNext},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('IconNext',{attrs:{\"size\":20}})]},proxy:true}],null,false,3563923451)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Continue'))+\"\\n\\t\\t\")]):_c('NcButton',{attrs:{\"aria-label\":_vm.finishButtonLabel,\"disabled\":_vm.loading,\"data-cy-file-request-dialog-controls\":\"finish\",\"variant\":\"primary\"},on:{\"click\":_vm.onFinish},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('IconCheck',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.finishButtonLabel)+\"\\n\\t\\t\")])]},proxy:true}])},[_c('NcNoteCard',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.FIRST),expression:\"currentStep === STEP.FIRST\"}],staticClass:\"file-request-dialog__header\",attrs:{\"type\":\"info\"}},[_c('p',{staticClass:\"file-request-dialog__description\",attrs:{\"id\":\"file-request-dialog-description\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Collect files from others even if they do not have an account.'))+\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'To ensure you can receive files, verify you have enough storage available.'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('form',{ref:\"form\",staticClass:\"file-request-dialog__form\",attrs:{\"aria-describedby\":\"file-request-dialog-description\",\"aria-label\":_vm.t('files_sharing', 'File request'),\"aria-live\":\"polite\",\"data-cy-file-request-dialog-form\":\"\"},on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();}}},[_c('FileRequestIntro',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.FIRST),expression:\"currentStep === STEP.FIRST\"}],attrs:{\"context\":_vm.context,\"destination\":_vm.destination,\"disabled\":_vm.loading,\"label\":_vm.label,\"note\":_vm.note},on:{\"update:destination\":function($event){_vm.destination=$event},\"update:label\":function($event){_vm.label=$event},\"update:note\":function($event){_vm.note=$event}}}),_vm._v(\" \"),_c('FileRequestDatePassword',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.SECOND),expression:\"currentStep === STEP.SECOND\"}],attrs:{\"disabled\":_vm.loading,\"expiration-date\":_vm.expirationDate,\"password\":_vm.password},on:{\"update:expirationDate\":function($event){_vm.expirationDate=$event},\"update:expiration-date\":function($event){_vm.expirationDate=$event},\"update:password\":function($event){_vm.password=$event}}}),_vm._v(\" \"),(_vm.share)?_c('FileRequestFinish',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.LAST),expression:\"currentStep === STEP.LAST\"}],attrs:{\"emails\":_vm.emails,\"is-share-by-mail-enabled\":_vm.isShareByMailEnabled,\"share\":_vm.share},on:{\"add-email\":email => _vm.emails.push(email),\"remove-email\":_vm.onRemoveEmail}}):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AutoFix.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AutoFix.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AutoFix.vue?vue&type=template&id=3fb26506\"\nimport script from \"./AutoFix.vue?vue&type=script&lang=js\"\nexport * from \"./AutoFix.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 auto-fix-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.5,5.6L5,7L6.4,4.5L5,2L7.5,3.4L10,2L8.6,4.5L10,7L7.5,5.6M19.5,15.4L22,14L20.6,16.5L22,19L19.5,17.6L17,19L18.4,16.5L17,14L19.5,15.4M22,2L20.6,4.5L22,7L19.5,5.6L17,7L18.4,4.5L17,2L19.5,3.4L22,2M13.34,12.78L15.78,10.34L13.66,8.22L11.22,10.66L13.34,12.78M14.37,7.29L16.71,9.63C17.1,10 17.1,10.65 16.71,11.04L5.04,22.71C4.65,23.1 4,23.1 3.63,22.71L1.29,20.37C0.9,20 0.9,19.35 1.29,18.96L12.96,7.29C13.35,6.9 14,6.9 14.37,7.29Z\"}},[(_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!./Information.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Information.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Information.vue?vue&type=template&id=08fbdef3\"\nimport script from \"./Information.vue?vue&type=script&lang=js\"\nexport * from \"./Information.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 information-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,9H11V7H13M13,17H11V11H13M12,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 }","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport axios from '@nextcloud/axios';\nimport { showError, showSuccess } from '@nextcloud/dialogs';\nimport { t } from '@nextcloud/l10n';\nimport Config from '../services/ConfigService.ts';\nimport logger from '../services/logger.ts';\nconst config = new Config();\n// note: some chars removed on purpose to make them human friendly when read out\nconst passwordSet = 'abcdefgijkmnopqrstwxyzABCDEFGHJKLMNPQRSTWXYZ23456789';\n/**\n * Generate a valid policy password or request a valid password if password_policy is enabled\n *\n * @param verbose If enabled the the status is shown to the user via toast\n */\nexport default async function (verbose = false) {\n // password policy is enabled, let's request a pass\n if (config.passwordPolicy.api && config.passwordPolicy.api.generate) {\n try {\n const request = await axios.get(config.passwordPolicy.api.generate);\n if (request.data.ocs.data.password) {\n if (verbose) {\n showSuccess(t('files_sharing', 'Password created successfully'));\n }\n return request.data.ocs.data.password;\n }\n }\n catch (error) {\n logger.info('Error generating password from password_policy', { error });\n if (verbose) {\n showError(t('files_sharing', 'Error generating password from password policy'));\n }\n }\n }\n const array = new Uint8Array(10);\n const ratio = passwordSet.length / 255;\n getRandomValues(array);\n let password = '';\n for (let i = 0; i < array.length; i++) {\n password += passwordSet.charAt(array[i] * ratio);\n }\n return password;\n}\n/**\n * Fills the given array with cryptographically secure random values.\n * If the crypto API is not available, it falls back to less secure Math.random().\n * Crypto API is available in modern browsers on secure contexts (HTTPS).\n *\n * @param array - The array to fill with random values.\n */\nfunction getRandomValues(array) {\n if (self?.crypto?.getRandomValues) {\n self.crypto.getRandomValues(array);\n return;\n }\n let len = array.length;\n while (len--) {\n array[len] = Math.floor(Math.random() * 256);\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.passwordAndExpirationSummary)?_c('NcNoteCard',{attrs:{\"type\":\"success\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.passwordAndExpirationSummary)+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),_c('fieldset',{staticClass:\"file-request-dialog__expiration\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"expiration\"}},[_c('legend',[_vm._v(_vm._s(_vm.t('files_sharing', 'When should the request expire?')))]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isExpirationDateEnforced),expression:\"!isExpirationDateEnforced\"}],attrs:{\"model-value\":_vm.isExpirationDateEnforced || _vm.expirationDate !== null,\"disabled\":_vm.disabled || _vm.isExpirationDateEnforced},on:{\"update:modelValue\":_vm.onToggleDeadline}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Set a submission expiration date'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.expirationDate !== null)?_c('NcDateTimePickerNative',{attrs:{\"id\":\"file-request-dialog-expirationDate\",\"disabled\":_vm.disabled,\"hide-label\":true,\"label\":_vm.t('files_sharing', 'Expiration date'),\"max\":_vm.maxDate,\"min\":_vm.minDate,\"placeholder\":_vm.t('files_sharing', 'Select a date'),\"required\":_vm.defaultExpireDateEnforced,\"model-value\":_vm.expirationDate,\"name\":\"expirationDate\",\"type\":\"date\"},on:{\"input\":function($event){return _vm.$emit('update:expirationDate', $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.defaultExpireDateEnforced)?_c('p',{staticClass:\"file-request-dialog__info\"},[_c('IconInfo',{staticClass:\"file-request-dialog__info-icon\",attrs:{\"size\":18}}),_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Your administrator has enforced a {count} days expiration policy.', { count: _vm.defaultExpireDate }))+\"\\n\\t\\t\")],1):_vm._e()],1),_vm._v(\" \"),_c('fieldset',{staticClass:\"file-request-dialog__password\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"password\"}},[_c('legend',[_vm._v(_vm._s(_vm.t('files_sharing', 'What password should be used for the request?')))]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isPasswordEnforced),expression:\"!isPasswordEnforced\"}],attrs:{\"model-value\":_vm.isPasswordEnforced || _vm.password !== null,\"disabled\":_vm.disabled || _vm.isPasswordEnforced},on:{\"update:modelValue\":_vm.onTogglePassword}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Set a password'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.password !== null)?_c('div',{staticClass:\"file-request-dialog__password-field\"},[_c('NcPasswordField',{ref:\"passwordField\",attrs:{\"check-password-strength\":true,\"disabled\":_vm.disabled,\"label\":_vm.t('files_sharing', 'Password'),\"placeholder\":_vm.t('files_sharing', 'Enter a valid password'),\"required\":_vm.enforcePasswordForPublicLink,\"model-value\":_vm.password,\"name\":\"password\"},on:{\"update:value\":function($event){return _vm.$emit('update:password', $event)}}}),_vm._v(\" \"),_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Generate a new password'),\"title\":_vm.t('files_sharing', 'Generate a new password'),\"variant\":\"tertiary-no-background\"},on:{\"click\":_vm.onGeneratePassword},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconPasswordGen',{attrs:{\"size\":20}})]},proxy:true}],null,false,1334968784)})],1):_vm._e(),_vm._v(\" \"),(_vm.enforcePasswordForPublicLink)?_c('p',{staticClass:\"file-request-dialog__info\"},[_c('IconInfo',{staticClass:\"file-request-dialog__info-icon\",attrs:{\"size\":18}}),_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Your administrator has enforced a password protection.'))+\"\\n\\t\\t\")],1):_vm._e()],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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogDatePassword.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogDatePassword.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!./NewFileRequestDialogDatePassword.vue?vue&type=style&index=0&id=4f93c9b6&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./NewFileRequestDialogDatePassword.vue?vue&type=style&index=0&id=4f93c9b6&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewFileRequestDialogDatePassword.vue?vue&type=template&id=4f93c9b6&scoped=true\"\nimport script from \"./NewFileRequestDialogDatePassword.vue?vue&type=script&lang=ts\"\nexport * from \"./NewFileRequestDialogDatePassword.vue?vue&type=script&lang=ts\"\nimport style0 from \"./NewFileRequestDialogDatePassword.vue?vue&type=style&index=0&id=4f93c9b6&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 \"4f93c9b6\",\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',[_c('NcNoteCard',{attrs:{\"type\":\"success\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'You can now share the link below to allow people to upload files to your directory.'))+\"\\n\\t\")]),_vm._v(\" \"),_c('NcInputField',{ref:\"clipboard\",attrs:{\"model-value\":_vm.shareLink,\"label\":_vm.t('files_sharing', 'Share link'),\"readonly\":true,\"show-trailing-button\":true,\"trailing-button-label\":_vm.t('files_sharing', 'Copy'),\"data-cy-file-request-dialog-fieldset\":\"link\"},on:{\"click\":_vm.copyShareLink,\"trailing-button-click\":_vm.copyShareLink},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [(_vm.isCopied)?_c('IconCheck',{attrs:{\"size\":20}}):_c('IconClipboard',{attrs:{\"size\":20}})]},proxy:true}])}),_vm._v(\" \"),(_vm.isShareByMailEnabled)?[_c('NcTextField',{attrs:{\"label\":_vm.t('files_sharing', 'Send link via email'),\"placeholder\":_vm.t('files_sharing', 'Enter an email address or paste a list'),\"data-cy-file-request-dialog-fieldset\":\"email\",\"type\":\"email\"},on:{\"keypress\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;$event.stopPropagation();return _vm.addNewEmail.apply(null, arguments)},\"paste\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onPasteEmails.apply(null, arguments)}},nativeOn:{\"focusout\":function($event){return _vm.addNewEmail.apply(null, arguments)}},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),_vm._v(\" \"),(_vm.emails.length > 0)?_c('div',{staticClass:\"file-request-dialog__emails\"},_vm._l((_vm.emails),function(mail){return _c('NcChip',{key:mail,attrs:{\"aria-label-close\":_vm.t('files_sharing', 'Remove email'),\"text\":mail},on:{\"close\":function($event){return _vm.$emit('remove-email', mail)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcAvatar',{attrs:{\"disable-menu\":\"\",\"disable-tooltip\":\"\",\"display-name\":mail,\"is-no-user\":\"\",\"hide-status\":\"\",\"size\":24}})]},proxy:true}],null,true)})}),1):_vm._e()]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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!./NcChip-DLfUzq07.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcChip-DLfUzq07.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcChip-DLfUzq07.css';\nimport { c as mdiClose } from \"../chunks/mdi-DkJglNiS.mjs\";\nimport { useSlots, computed } from \"vue\";\nimport { N as NcActionButton } from \"../chunks/NcActionButton-D7uypboC.mjs\";\nimport { N as NcActions } from \"../chunks/NcActions-JnumflF4.mjs\";\nimport { N as NcIconSvgWrapper } from \"../chunks/NcIconSvgWrapper-Bui9PhAS.mjs\";\nimport { r as register, m as t18, a as t } from \"../chunks/_l10n-DVz9Qdzk.mjs\";\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t18);\nconst _sfc_main = {\n __name: \"NcChip\",\n props: {\n /**\n * aria label to set on the close button\n *\n * @default 'Close'\n */\n ariaLabelClose: {\n type: String,\n default: t(\"Close\")\n },\n /**\n * Container for the actions\n */\n actionsContainer: {\n type: String,\n default: \"body\"\n },\n /**\n * Main text of the chip.\n */\n text: {\n type: String,\n default: \"\"\n },\n /**\n * Set the chips design variant-\n *\n * This sets the background style of the chip, similar to NcButton's `variant`.\n *\n * @deprecated will be removed with v9 - use `variant` instead.\n */\n type: {\n type: String,\n default: \"secondary\",\n validator: (value) => [\"primary\", \"secondary\", \"tertiary\", \"error\", \"warning\", \"success\"].includes(value)\n },\n /**\n * SVG path of the icon to use, this takes precedence over `iconSVG`.\n * For example icon paths from `@mdi/js` can be used.\n */\n iconPath: {\n type: String,\n default: null\n },\n /**\n * Inline SVG to use as the icon\n */\n iconSvg: {\n type: String,\n default: null\n },\n /**\n * Set to true to prevent the close button to be shown\n */\n noClose: {\n type: Boolean,\n default: false\n },\n /**\n * Set the chips design variant-\n *\n * This sets the background style of the chip, similar to NcButton's `variant`.\n *\n * @since 8.24.0\n */\n variant: {\n type: String,\n default: \"secondary\",\n validator: (value) => [\"primary\", \"secondary\", \"tertiary\", \"error\", \"warning\", \"success\"].includes(value)\n }\n },\n emits: [\"close\"],\n setup(__props, { emit }) {\n const props = __props;\n const slots = useSlots();\n const realVariant = computed(() => props.type !== \"secondary\" ? props.type : props.variant);\n const canClose = computed(() => !props.noClose);\n const hasActions = () => Boolean(slots.actions?.());\n const hasIcon = () => Boolean(props.iconPath || props.iconSvg || !!slots.icon?.());\n return { __sfc: true, props, emit, slots, realVariant, canClose, hasActions, hasIcon, mdiClose, NcActionButton, NcActions, NcIconSvgWrapper };\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(\"div\", { staticClass: \"nc-chip\", class: {\n [`nc-chip--${_setup.realVariant}`]: true,\n \"nc-chip--no-actions\": _vm.noClose && !_setup.hasActions(),\n \"nc-chip--no-icon\": !_setup.hasIcon()\n } }, [_setup.hasIcon() ? _c(\"span\", { staticClass: \"nc-chip__icon\" }, [_vm._t(\"icon\", function() {\n return [_vm.iconPath || _vm.iconSvg ? _c(_setup.NcIconSvgWrapper, { attrs: { \"inline\": \"\", \"path\": _vm.iconPath, \"svg\": _vm.iconPath ? void 0 : _vm.iconSvg, \"size\": 18 } }) : _vm._e()];\n })], 2) : _vm._e(), _c(\"span\", { staticClass: \"nc-chip__text\" }, [_vm._t(\"default\", function() {\n return [_vm._v(_vm._s(_vm.text))];\n })], 2), _setup.canClose || _setup.hasActions() ? _c(_setup.NcActions, { staticClass: \"nc-chip__actions\", attrs: { \"container\": _vm.actionsContainer, \"force-menu\": !_setup.canClose, \"variant\": \"tertiary-no-background\" } }, [_setup.canClose ? _c(_setup.NcActionButton, { attrs: { \"close-after-click\": \"\" }, on: { \"click\": function($event) {\n return _setup.emit(\"close\");\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(_setup.NcIconSvgWrapper, { attrs: { \"path\": _setup.mdiClose, \"size\": 20 } })];\n }, proxy: true }], null, false, 2547223506) }, [_vm._v(\" \" + _vm._s(_vm.ariaLabelClose) + \" \")]) : _vm._e(), _vm._t(\"actions\")], 2) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"c8e429a5\"\n);\nconst NcChip = __component__.exports;\nexport {\n NcChip as default\n};\n//# sourceMappingURL=NcChip.mjs.map\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClipboardText.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClipboardText.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClipboardText.vue?vue&type=template&id=58267ecd\"\nimport script from \"./ClipboardText.vue?vue&type=script&lang=js\"\nexport * from \"./ClipboardText.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon clipboard-text-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,9H7V7H17M17,13H7V11H17M14,17H7V15H14M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3Z\"}},[(_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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogFinish.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogFinish.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/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogFinish.vue?vue&type=style&index=0&id=99464cac&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogFinish.vue?vue&type=style&index=0&id=99464cac&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewFileRequestDialogFinish.vue?vue&type=template&id=99464cac&scoped=true\"\nimport script from \"./NewFileRequestDialogFinish.vue?vue&type=script&lang=ts\"\nexport * from \"./NewFileRequestDialogFinish.vue?vue&type=script&lang=ts\"\nimport style0 from \"./NewFileRequestDialogFinish.vue?vue&type=style&index=0&id=99464cac&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"99464cac\",\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',[_c('fieldset',{staticClass:\"file-request-dialog__label\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"label\"}},[_c('legend',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'What are you requesting?'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"model-value\":_vm.label,\"disabled\":_vm.disabled,\"label\":_vm.t('files_sharing', 'Request subject'),\"placeholder\":_vm.t('files_sharing', 'Birthday party photos, History assignment…'),\"required\":false,\"name\":\"label\"},on:{\"update:value\":function($event){return _vm.$emit('update:label', $event)}}})],1),_vm._v(\" \"),_c('fieldset',{staticClass:\"file-request-dialog__destination\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"destination\"}},[_c('legend',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Where should these files go?'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"model-value\":_vm.destination,\"disabled\":_vm.disabled,\"label\":_vm.t('files_sharing', 'Upload destination'),\"minlength\":2/* cannot share root */,\"placeholder\":_vm.t('files_sharing', 'Select a destination'),\"readonly\":false /* cannot validate a readonly input */,\"required\":true /* cannot be empty */,\"show-trailing-button\":_vm.destination !== _vm.context.path,\"trailing-button-icon\":\"undo\",\"trailing-button-label\":_vm.t('files_sharing', 'Revert to default'),\"name\":\"destination\"},on:{\"click\":_vm.onPickDestination,\"keypress\":function($event){$event.preventDefault();$event.stopPropagation();/* prevent typing in the input, we use the picker */},\"paste\":function($event){$event.preventDefault();$event.stopPropagation();/* prevent pasting in the input, we use the picker */},\"trailing-button-click\":function($event){return _vm.$emit('update:destination', '')}}},[_c('IconFolder',{attrs:{\"size\":18}})],1),_vm._v(\" \"),_c('p',{staticClass:\"file-request-dialog__info\"},[_c('IconLock',{staticClass:\"file-request-dialog__info-icon\",attrs:{\"size\":18}}),_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'The uploaded files are visible only to you unless you choose to share them.'))+\"\\n\\t\\t\")],1)],1),_vm._v(\" \"),_c('fieldset',{staticClass:\"file-request-dialog__note\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"note\"}},[_c('legend',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Add a note'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcTextArea',{attrs:{\"model-value\":_vm.note,\"disabled\":_vm.disabled,\"label\":_vm.t('files_sharing', 'Note for recipient'),\"placeholder\":_vm.t('files_sharing', 'Add a note to help people understand what you are requesting.'),\"required\":false,\"name\":\"note\"},on:{\"update:value\":function($event){return _vm.$emit('update:note', $event)}}}),_vm._v(\" \"),_c('p',{staticClass:\"file-request-dialog__info\"},[_c('IconInfo',{staticClass:\"file-request-dialog__info-icon\",attrs:{\"size\":18}}),_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'You can add links, date or any other information that will help the recipient understand what you are requesting.'))+\"\\n\\t\\t\")],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Lock.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Lock.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Lock.vue?vue&type=template&id=6d856da2\"\nimport script from \"./Lock.vue?vue&type=script&lang=js\"\nexport * from \"./Lock.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 lock-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,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z\"}},[(_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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogIntro.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogIntro.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/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogIntro.vue?vue&type=style&index=0&id=f8940020&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogIntro.vue?vue&type=style&index=0&id=f8940020&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewFileRequestDialogIntro.vue?vue&type=template&id=f8940020&scoped=true\"\nimport script from \"./NewFileRequestDialogIntro.vue?vue&type=script&lang=ts\"\nexport * from \"./NewFileRequestDialogIntro.vue?vue&type=script&lang=ts\"\nimport style0 from \"./NewFileRequestDialogIntro.vue?vue&type=style&index=0&id=f8940020&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f8940020\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport logger from '../services/logger.ts';\nimport { isFileRequest } from '../services/SharingService.ts';\nexport default class Share {\n _share;\n /**\n * Create the share object\n *\n * @param ocsData ocs request response\n */\n constructor(ocsData) {\n if (ocsData.ocs && ocsData.ocs.data && ocsData.ocs.data[0]) {\n ocsData = ocsData.ocs.data[0];\n }\n // string to int\n if (typeof ocsData.id === 'string') {\n ocsData.id = Number.parseInt(ocsData.id);\n }\n // convert int into boolean\n ocsData.hide_download = !!ocsData.hide_download;\n ocsData.mail_send = !!ocsData.mail_send;\n if (ocsData.attributes && typeof ocsData.attributes === 'string') {\n try {\n ocsData.attributes = JSON.parse(ocsData.attributes);\n }\n catch {\n logger.warn('Could not parse share attributes returned by server', ocsData.attributes);\n }\n }\n ocsData.attributes = ocsData.attributes ?? [];\n // Pre-declared so Vue 2 makes newPassword reactive at observation time,\n // avoiding $set's property-addition path which races with async setters.\n ocsData.newPassword = ocsData.newPassword ?? undefined;\n // store state\n this._share = ocsData;\n }\n /**\n * Get the share state\n * ! used for reactivity purpose\n * Do not remove. It allow vuejs to\n * inject its watchers into the #share\n * state and make the whole class reactive\n *\n * @return the share raw state\n */\n get state() {\n return this._share;\n }\n /**\n * get the share id\n */\n get id() {\n return this._share.id;\n }\n /**\n * Get the share type\n */\n get type() {\n return this._share.share_type;\n }\n /**\n * Get the share permissions\n * See window.OC.PERMISSION_* variables\n */\n get permissions() {\n return this._share.permissions;\n }\n /**\n * Get the share attributes\n */\n get attributes() {\n return this._share.attributes || [];\n }\n /**\n * Set the share permissions\n * See window.OC.PERMISSION_* variables\n */\n set permissions(permissions) {\n this._share.permissions = permissions;\n }\n // SHARE OWNER --------------------------------------------------\n /**\n * Get the share owner uid\n */\n get owner() {\n return this._share.uid_owner;\n }\n /**\n * Get the share owner's display name\n */\n get ownerDisplayName() {\n return this._share.displayname_owner;\n }\n // SHARED WITH --------------------------------------------------\n /**\n * Get the share with entity uid\n */\n get shareWith() {\n return this._share.share_with;\n }\n /**\n * Get the share with entity display name\n * fallback to its uid if none\n */\n get shareWithDisplayName() {\n return this._share.share_with_displayname\n || this._share.share_with;\n }\n /**\n * Unique display name in case of multiple\n * duplicates results with the same name.\n */\n get shareWithDisplayNameUnique() {\n return this._share.share_with_displayname_unique\n || this._share.share_with;\n }\n /**\n * Get the share with entity link\n */\n get shareWithLink() {\n return this._share.share_with_link;\n }\n /**\n * Get the share with avatar if any\n */\n get shareWithAvatar() {\n return this._share.share_with_avatar;\n }\n // SHARED FILE OR FOLDER OWNER ----------------------------------\n /**\n * Get the shared item owner uid\n */\n get uidFileOwner() {\n return this._share.uid_file_owner;\n }\n /**\n * Get the shared item display name\n * fallback to its uid if none\n */\n get displaynameFileOwner() {\n return this._share.displayname_file_owner\n || this._share.uid_file_owner;\n }\n // TIME DATA ----------------------------------------------------\n /**\n * Get the share creation timestamp\n */\n get createdTime() {\n return this._share.stime;\n }\n /**\n * Get the expiration date\n *\n * @return date with YYYY-MM-DD format\n */\n get expireDate() {\n return this._share.expiration;\n }\n /**\n * Set the expiration date\n *\n * @param date the share expiration date with YYYY-MM-DD format\n */\n set expireDate(date) {\n this._share.expiration = date;\n }\n // EXTRA DATA ---------------------------------------------------\n /**\n * Get the public share token\n */\n get token() {\n return this._share.token;\n }\n /**\n * Set the public share token\n */\n set token(token) {\n this._share.token = token;\n }\n /**\n * Get the share note if any\n */\n get note() {\n return this._share.note;\n }\n /**\n * Set the share note if any\n */\n set note(note) {\n this._share.note = note;\n }\n /**\n * Get the share label if any\n * Should only exist on link shares\n */\n get label() {\n return this._share.label ?? '';\n }\n /**\n * Set the share label if any\n * Should only be set on link shares\n */\n set label(label) {\n this._share.label = label;\n }\n /**\n * Have a mail been sent\n */\n get mailSend() {\n return this._share.mail_send === true;\n }\n /**\n * Hide the download button on public page\n */\n get hideDownload() {\n return this._share.hide_download === true\n || this.attributes.find?.(({ scope, key, value }) => scope === 'permissions' && key === 'download' && !value) !== undefined;\n }\n /**\n * Hide the download button on public page\n */\n set hideDownload(state) {\n // disabling hide-download also enables the download permission\n // needed for regression in Nextcloud 31.0.0 until (incl.) 31.0.3\n if (!state) {\n const attribute = this.attributes.find(({ key, scope }) => key === 'download' && scope === 'permissions');\n if (attribute) {\n attribute.value = true;\n }\n }\n this._share.hide_download = state === true;\n }\n /**\n * Password protection of the share\n */\n get password() {\n return this._share.password;\n }\n /**\n * Password protection of the share\n */\n set password(password) {\n this._share.password = password;\n }\n /**\n * Unsaved password (set during share creation or editing).\n * Delegates to _share so reads/writes go through the reactive state.\n */\n get newPassword() {\n return this._share.newPassword;\n }\n set newPassword(value) {\n this._share.newPassword = value;\n }\n /**\n * Password expiration time\n *\n * @return date with YYYY-MM-DD format\n */\n get passwordExpirationTime() {\n return this._share.password_expiration_time;\n }\n /**\n * Password expiration time\n *\n * @param passwordExpirationTime date with YYYY-MM-DD format\n */\n set passwordExpirationTime(passwordExpirationTime) {\n this._share.password_expiration_time = passwordExpirationTime;\n }\n /**\n * Password protection by Talk of the share\n */\n get sendPasswordByTalk() {\n return this._share.send_password_by_talk;\n }\n /**\n * Password protection by Talk of the share\n *\n * @param sendPasswordByTalk whether to send the password by Talk or not\n */\n set sendPasswordByTalk(sendPasswordByTalk) {\n this._share.send_password_by_talk = sendPasswordByTalk;\n }\n // SHARED ITEM DATA ---------------------------------------------\n /**\n * Get the shared item absolute full path\n */\n get path() {\n return this._share.path;\n }\n /**\n * Return the item type: file or folder\n *\n * @return 'folder' | 'file'\n */\n get itemType() {\n return this._share.item_type;\n }\n /**\n * Get the shared item mimetype\n */\n get mimetype() {\n return this._share.mimetype;\n }\n /**\n * Get the shared item id\n */\n get fileSource() {\n return this._share.file_source;\n }\n /**\n * Get the target path on the receiving end\n * e.g the file /xxx/aaa will be shared in\n * the receiving root as /aaa, the fileTarget is /aaa\n */\n get fileTarget() {\n return this._share.file_target;\n }\n /**\n * Get the parent folder id if any\n */\n get fileParent() {\n return this._share.file_parent;\n }\n // PERMISSIONS Shortcuts\n /**\n * Does this share have READ permissions\n */\n get hasReadPermission() {\n return !!((this.permissions & window.OC.PERMISSION_READ));\n }\n /**\n * Does this share have CREATE permissions\n */\n get hasCreatePermission() {\n return !!((this.permissions & window.OC.PERMISSION_CREATE));\n }\n /**\n * Does this share have DELETE permissions\n */\n get hasDeletePermission() {\n return !!((this.permissions & window.OC.PERMISSION_DELETE));\n }\n /**\n * Does this share have UPDATE permissions\n */\n get hasUpdatePermission() {\n return !!((this.permissions & window.OC.PERMISSION_UPDATE));\n }\n /**\n * Does this share have SHARE permissions\n */\n get hasSharePermission() {\n return !!((this.permissions & window.OC.PERMISSION_SHARE));\n }\n /**\n * Does this share have download permissions\n */\n get hasDownloadPermission() {\n const hasDisabledDownload = (attribute) => {\n return attribute.scope === 'permissions' && attribute.key === 'download' && attribute.value === false;\n };\n return this.attributes.some(hasDisabledDownload);\n }\n /**\n * Is this mail share a file request ?\n */\n get isFileRequest() {\n return isFileRequest(JSON.stringify(this.attributes));\n }\n set hasDownloadPermission(enabled) {\n this.setAttribute('permissions', 'download', !!enabled);\n }\n setAttribute(scope, key, value) {\n const attrUpdate = {\n scope,\n key,\n value,\n };\n // try and replace existing\n for (const i in this._share.attributes) {\n const attr = this._share.attributes[i];\n if (attr.scope === attrUpdate.scope && attr.key === attrUpdate.key) {\n this._share.attributes.splice(i, 1, attrUpdate);\n return;\n }\n }\n this._share.attributes.push(attrUpdate);\n }\n // PERMISSIONS Shortcuts for the CURRENT USER\n // ! the permissions above are the share settings,\n // ! meaning the permissions for the recipient\n /**\n * Can the current user EDIT this share ?\n */\n get canEdit() {\n return this._share.can_edit === true;\n }\n /**\n * Can the current user DELETE this share ?\n */\n get canDelete() {\n return this._share.can_delete === true;\n }\n /**\n * Top level accessible shared folder fileid for the current user\n */\n get viaFileid() {\n return this._share.via_fileid;\n }\n /**\n * Top level accessible shared folder path for the current user\n */\n get viaPath() {\n return this._share.via_path;\n }\n // TODO: SORT THOSE PROPERTIES\n get parent() {\n return this._share.parent;\n }\n get storageId() {\n return this._share.storage_id;\n }\n get storage() {\n return this._share.storage;\n }\n get itemSource() {\n return this._share.item_source;\n }\n get status() {\n return this._share.status;\n }\n /**\n * Is the share from a trusted server\n */\n get isTrustedServer() {\n return !!this._share.is_trusted_server;\n }\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialog.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-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialog.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!./NewFileRequestDialog.vue?vue&type=style&index=0&id=747d2488&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./NewFileRequestDialog.vue?vue&type=style&index=0&id=747d2488&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewFileRequestDialog.vue?vue&type=template&id=747d2488\"\nimport script from \"./NewFileRequestDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./NewFileRequestDialog.vue?vue&type=script&lang=ts\"\nimport style0 from \"./NewFileRequestDialog.vue?vue&type=style&index=0&id=747d2488&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"],"names":["___CSS_LOADER_EXPORT___","_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","vue_material_design_icons_AutoFixvue_type_script_lang_js","name","emits","props","title","type","String","fillColor","default","size","Number","AutoFix","componentNormalizer","A","_vm","this","_c","_self","_b","staticClass","attrs","role","on","click","$event","$emit","$attrs","fill","width","height","viewBox","d","_v","_s","_e","vue_material_design_icons_Informationvue_type_script_lang_js","Information","config","Config","async","GeneratePassword","verbose","passwordPolicy","api","generate","request","axios","get","data","ocs","password","showSuccess","t","error","logger","info","showError","array","Uint8Array","ratio","passwordSet","self","crypto","getRandomValues","len","length","Math","floor","random","i","charAt","sharingConfig","NewFileRequestDialog_NewFileRequestDialogDatePasswordvue_type_script_lang_ts","defineComponent","components","IconInfo","IconPasswordGen","NcButton","NcCheckboxRadioSwitch","NcDateTimePickerNative","NcNoteCard","NcPasswordField","disabled","Boolean","required","expirationDate","Date","setup","l10n_dist","defaultExpireDate","defaultExpireDateEnabled","isDefaultExpireDateEnabled","defaultExpireDateEnforced","isDefaultExpireDateEnforced","enableLinkPasswordByDefault","enforcePasswordForPublicLink","maxDate","minDate","setDate","getDate","computed","passwordAndExpirationSummary","date","toLocaleDateString","isExpirationDateEnforced","isPasswordEnforced","mounted","defaultExpirationDate","generatePassword","methods","onToggleDeadline","checked","onTogglePassword","onGeneratePassword","showPassword","then","$refs","passwordField","isPasswordHidden","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","NewFileRequestDialogDatePasswordvue_type_style_index_0_id_4f93c9b6_prod_scoped_true_lang_scss","locals","NewFileRequestDialogDatePassword","_setupProxy","directives","rawName","value","expression","label","max","min","placeholder","input","count","ref","variant","scopedSlots","_u","key","fn","proxy","NcChip_DLfUzq07_options","NcChip_DLfUzq07","_l10n_DVz9Qdzk","r","m","_sfc_main","__name","ariaLabelClose","a","actionsContainer","text","validator","includes","iconPath","iconSvg","noClose","__props","emit","slots","vue_runtime_esm","Ht","realVariant","EW","canClose","__sfc","hasActions","actions","hasIcon","icon","mdiClose","mdi_DkJglNiS","c","NcActionButton","NcActionButton_D7uypboC","N","NcActions","NcActions_JnumflF4","NcIconSvgWrapper","NcIconSvgWrapper_Bui9PhAS","_sfc_render","_setup","class","_t","inline","path","svg","container","_sfc_staticRenderFns","NcChip","_plugin_vue2_normalizer_DU4iP6Vu","n","exports","vue_material_design_icons_ClipboardTextvue_type_script_lang_js","ClipboardText","NewFileRequestDialog_NewFileRequestDialogFinishvue_type_script_lang_ts","IconCheck","Check","IconClipboard","NcAvatar","NcInputField","NcTextField","share","Object","emails","Array","isShareByMailEnabled","isCopied","email","shareLink","generateUrl","token","baseURL","getBaseUrl","copyShareLink","event","navigator","clipboard","writeText","target","select","setTimeout","window","prompt","addNewEmail","e","trim","HTMLInputElement","setCustomValidity","checkValidity","reportValidity","isValidEmail","onPasteEmails","clipboardData","getData","split","filter","map","duplicateEmails","validEmails","invalidEmails","forEach","join","NewFileRequestDialogFinishvue_type_style_index_0_id_99464cac_prod_scoped_true_lang_css_options","NewFileRequestDialogFinishvue_type_style_index_0_id_99464cac_prod_scoped_true_lang_css","NewFileRequestDialogFinish_component","readonly","keypress","indexOf","_k","keyCode","stopPropagation","apply","arguments","paste","preventDefault","nativeOn","focusout","model","callback","$$v","_l","mail","close","NewFileRequestDialogFinish","vue_material_design_icons_Lockvue_type_script_lang_js","Lock","NewFileRequestDialog_NewFileRequestDialogIntrovue_type_script_lang_ts","IconFolder","Folder","InformationOutline","IconLock","NcTextArea","context","destination","note","onPickDestination","filepicker","getFilePickerBuilder","addMimeTypeFilter","allowDirectories","addButton","onPickedDestination","setFilter","node","startAt","build","pick","nodes","NewFileRequestDialogIntrovue_type_style_index_0_id_f8940020_prod_scoped_true_lang_css_options","NewFileRequestDialogIntrovue_type_style_index_0_id_f8940020_prod_scoped_true_lang_css","NewFileRequestDialogIntro","minlength","STEP","Share","constructor","ocsData","parseInt","hide_download","mail_send","attributes","JSON","parse","warn","newPassword","undefined","_share","state","share_type","permissions","owner","uid_owner","ownerDisplayName","displayname_owner","shareWith","share_with","shareWithDisplayName","share_with_displayname","shareWithDisplayNameUnique","share_with_displayname_unique","shareWithLink","share_with_link","shareWithAvatar","share_with_avatar","uidFileOwner","uid_file_owner","displaynameFileOwner","displayname_file_owner","createdTime","stime","expireDate","expiration","mailSend","hideDownload","find","scope","attribute","passwordExpirationTime","password_expiration_time","sendPasswordByTalk","send_password_by_talk","itemType","item_type","mimetype","fileSource","file_source","fileTarget","file_target","fileParent","file_parent","hasReadPermission","OC","PERMISSION_READ","hasCreatePermission","PERMISSION_CREATE","hasDeletePermission","PERMISSION_DELETE","hasUpdatePermission","PERMISSION_UPDATE","hasSharePermission","PERMISSION_SHARE","hasDownloadPermission","some","isFileRequest","stringify","enabled","setAttribute","attrUpdate","attr","splice","canEdit","can_edit","canDelete","can_delete","viaFileid","via_fileid","viaPath","via_path","parent","storageId","storage_id","storage","itemSource","item_source","status","isTrustedServer","is_trusted_server","components_NewFileRequestDialogvue_type_script_lang_ts","FileRequestDatePassword","FileRequestFinish","FileRequestIntro","IconNext","ArrowRight","NcDialog","NcLoadingIcon","content","isMailShareAllowed","currentStep","FIRST","loading","finishButtonLabel","onPageNext","form","querySelectorAll","destinationInput","querySelector","createShare","SECOND","onRemoveEmail","index","onCancel","onFinish","setShareEmails","sendEmails","getFullYear","getMonth","toString","padStart","shareUrl","generateOcsUrl","post","shareType","ShareType","Email","Link","Permission","CREATE","LAST","errorMessage","response","meta","message","Error","put","onEmailSendError","NewFileRequestDialogvue_type_style_index_0_id_747d2488_prod_lang_scss_options","NewFileRequestDialogvue_type_style_index_0_id_747d2488_prod_lang_scss","NewFileRequestDialog","closing","submit"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"4433-4433.js?v=e3da74e0c861245a7ff5","mappings":"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","sources":["webpack:///nextcloud/node_modules/@nextcloud/vue/dist/assets/NcChip-DLfUzq07.css","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog.vue?vue&type=style&index=0&id=747d2488&prod&lang=scss","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogDatePassword.vue?vue&type=style&index=0&id=4f93c9b6&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogFinish.vue?vue&type=style&index=0&id=99464cac&prod&scoped=true&lang=css","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogIntro.vue?vue&type=style&index=0&id=f8940020&prod&scoped=true&lang=css","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AutoFix.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AutoFix.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/AutoFix.vue?b31d","webpack:///nextcloud/node_modules/vue-material-design-icons/AutoFix.vue?vue&type=template&id=3fb26506","webpack:///nextcloud/node_modules/vue-material-design-icons/Information.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Information.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Information.vue?8a14","webpack:///nextcloud/node_modules/vue-material-design-icons/Information.vue?vue&type=template&id=08fbdef3","webpack:///nextcloud/apps/files_sharing/src/utils/GeneratePassword.ts","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogDatePassword.vue","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogDatePassword.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogDatePassword.vue?8430","webpack://nextcloud/./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogDatePassword.vue?2d1d","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogFinish.vue","webpack://nextcloud/./node_modules/@nextcloud/vue/dist/assets/NcChip-DLfUzq07.css?b679","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcChip.mjs","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardText.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardText.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ClipboardText.vue?7232","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardText.vue?vue&type=template&id=58267ecd","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogFinish.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogFinish.vue?8ac2","webpack://nextcloud/./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogFinish.vue?3b42","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogIntro.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Lock.vue?93ae","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue?vue&type=template&id=6d856da2","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogIntro.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogIntro.vue?19c3","webpack://nextcloud/./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogIntro.vue?2347","webpack:///nextcloud/apps/files_sharing/src/models/Share.ts","webpack:///nextcloud/apps/files_sharing/src/components/NewFileRequestDialog.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files_sharing/src/components/NewFileRequestDialog.vue?c7ac","webpack://nextcloud/./apps/files_sharing/src/components/NewFileRequestDialog.vue?fa68"],"sourcesContent":["// 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, `/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon[data-v-c8e429a5] {\n display: flex;\n align-self: center;\n justify-self: center;\n align-items: center;\n justify-content: center;\n}\n.nc-chip[data-v-c8e429a5] {\n --chip-size: 24px;\n --chip-radius: calc(var(--chip-size) / 2);\n height: var(--chip-size);\n max-width: fit-content;\n display: flex;\n flex-direction: row;\n align-items: center;\n border-radius: var(--chip-radius);\n background-color: var(--color-background-hover);\n}\n.nc-chip--primary[data-v-c8e429a5] {\n background-color: var(--color-primary-element);\n color: var(--color-primary-element-text);\n}\n.nc-chip--secondary[data-v-c8e429a5] {\n background-color: var(--color-primary-element-light);\n color: var(--color-primary-element-light-text);\n}\n.nc-chip--error[data-v-c8e429a5] {\n background-color: var(--color-error);\n color: var(--color-error-text);\n}\n.nc-chip--warning[data-v-c8e429a5] {\n background-color: var(--color-warning);\n color: var(--color-warning-text);\n}\n.nc-chip--success[data-v-c8e429a5] {\n background-color: var(--color-success);\n color: var(--color-success-text);\n}\n.nc-chip--no-actions .nc-chip__text[data-v-c8e429a5] {\n padding-inline-end: calc(2 * var(--default-grid-baseline));\n}\n.nc-chip--no-icon .nc-chip__text[data-v-c8e429a5] {\n padding-inline-start: calc(2 * var(--default-grid-baseline));\n}\n.nc-chip__text[data-v-c8e429a5] {\n flex: 1 auto;\n overflow: hidden;\n text-overflow: ellipsis;\n text-wrap: nowrap;\n}\n.nc-chip__icon[data-v-c8e429a5] {\n flex: 0 0 var(--chip-size);\n margin-inline-end: var(--default-grid-baseline);\n line-height: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n height: var(--chip-size);\n width: var(--chip-size);\n}\n.nc-chip__actions[data-v-c8e429a5] {\n flex: 0 0 var(--chip-size);\n --default-clickable-area: var(--chip-size);\n --border-radius-element: var(--chip-radius);\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/vue/dist/assets/NcChip-DLfUzq07.css\"],\"names\":[],\"mappings\":\"AAAA;;;EAGE;AACF;;;EAGE;AACF;;CAEC;AACD;EACE,aAAa;EACb,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,iBAAiB;EACjB,yCAAyC;EACzC,wBAAwB;EACxB,sBAAsB;EACtB,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,iCAAiC;EACjC,+CAA+C;AACjD;AACA;EACE,8CAA8C;EAC9C,wCAAwC;AAC1C;AACA;EACE,oDAAoD;EACpD,8CAA8C;AAChD;AACA;EACE,oCAAoC;EACpC,8BAA8B;AAChC;AACA;EACE,sCAAsC;EACtC,gCAAgC;AAClC;AACA;EACE,sCAAsC;EACtC,gCAAgC;AAClC;AACA;EACE,0DAA0D;AAC5D;AACA;EACE,4DAA4D;AAC9D;AACA;EACE,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;EACvB,iBAAiB;AACnB;AACA;EACE,0BAA0B;EAC1B,+CAA+C;EAC/C,cAAc;EACd,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,gBAAgB;EAChB,wBAAwB;EACxB,uBAAuB;AACzB;AACA;EACE,0BAA0B;EAC1B,0CAA0C;EAC1C,2CAA2C;AAC7C\",\"sourcesContent\":[\"/**\\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/**\\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon[data-v-c8e429a5] {\\n display: flex;\\n align-self: center;\\n justify-self: center;\\n align-items: center;\\n justify-content: center;\\n}\\n.nc-chip[data-v-c8e429a5] {\\n --chip-size: 24px;\\n --chip-radius: calc(var(--chip-size) / 2);\\n height: var(--chip-size);\\n max-width: fit-content;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n border-radius: var(--chip-radius);\\n background-color: var(--color-background-hover);\\n}\\n.nc-chip--primary[data-v-c8e429a5] {\\n background-color: var(--color-primary-element);\\n color: var(--color-primary-element-text);\\n}\\n.nc-chip--secondary[data-v-c8e429a5] {\\n background-color: var(--color-primary-element-light);\\n color: var(--color-primary-element-light-text);\\n}\\n.nc-chip--error[data-v-c8e429a5] {\\n background-color: var(--color-error);\\n color: var(--color-error-text);\\n}\\n.nc-chip--warning[data-v-c8e429a5] {\\n background-color: var(--color-warning);\\n color: var(--color-warning-text);\\n}\\n.nc-chip--success[data-v-c8e429a5] {\\n background-color: var(--color-success);\\n color: var(--color-success-text);\\n}\\n.nc-chip--no-actions .nc-chip__text[data-v-c8e429a5] {\\n padding-inline-end: calc(2 * var(--default-grid-baseline));\\n}\\n.nc-chip--no-icon .nc-chip__text[data-v-c8e429a5] {\\n padding-inline-start: calc(2 * var(--default-grid-baseline));\\n}\\n.nc-chip__text[data-v-c8e429a5] {\\n flex: 1 auto;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n text-wrap: nowrap;\\n}\\n.nc-chip__icon[data-v-c8e429a5] {\\n flex: 0 0 var(--chip-size);\\n margin-inline-end: var(--default-grid-baseline);\\n line-height: 1;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n height: var(--chip-size);\\n width: var(--chip-size);\\n}\\n.nc-chip__actions[data-v-c8e429a5] {\\n flex: 0 0 var(--chip-size);\\n --default-clickable-area: var(--chip-size);\\n --border-radius-element: var(--chip-radius);\\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, `.file-request-dialog{--margin: 18px}.file-request-dialog__header{margin:0 var(--margin)}.file-request-dialog__form{position:relative;overflow:auto;padding:var(--margin) var(--margin);margin-top:calc(-1*var(--margin))}.file-request-dialog fieldset{display:flex;flex-direction:column;width:100%;margin-top:var(--margin)}.file-request-dialog fieldset legend{display:flex;align-items:center;width:100%}.file-request-dialog__info{color:var(--color-text-maxcontrast);padding-block:4px;display:flex;align-items:center}.file-request-dialog__info .file-request-dialog__info-icon{margin-inline-end:8px}.file-request-dialog .dialog__actions{width:auto;margin-inline:12px}.file-request-dialog .dialog__actions span.dialog__actions-separator{margin-inline-start:auto}.file-request-dialog .input-field__helper-text-message{color:var(--color-text-maxcontrast)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/NewFileRequestDialog.vue\"],\"names\":[],\"mappings\":\"AACA,qBACC,cAAA,CAEA,6BACC,sBAAA,CAGD,2BACC,iBAAA,CACA,aAAA,CACA,mCAAA,CAEA,iCAAA,CAGD,8BACC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,wBAAA,CAEA,qCACC,YAAA,CACA,kBAAA,CACA,UAAA,CAMF,2BACC,mCAAA,CACA,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,2DACC,qBAAA,CAIF,sCACC,UAAA,CACA,kBAAA,CACA,qEACC,wBAAA,CAIF,uDAEC,mCAAA\",\"sourcesContent\":[\"\\n.file-request-dialog {\\n\\t--margin: 18px;\\n\\n\\t&__header {\\n\\t\\tmargin: 0 var(--margin);\\n\\t}\\n\\n\\t&__form {\\n\\t\\tposition: relative;\\n\\t\\toverflow: auto;\\n\\t\\tpadding: var(--margin) var(--margin);\\n\\t\\t// overlap header bottom padding\\n\\t\\tmargin-top: calc(-1 * var(--margin));\\n\\t}\\n\\n\\tfieldset {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\twidth: 100%;\\n\\t\\tmargin-top: var(--margin);\\n\\n\\t\\tlegend {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t}\\n\\n\\t// Using a NcNoteCard was a bit much sometimes.\\n\\t// Using a simple paragraph instead does it.\\n\\t&__info {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tpadding-block: 4px;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\t.file-request-dialog__info-icon {\\n\\t\\t\\tmargin-inline-end: 8px;\\n\\t\\t}\\n\\t}\\n\\n\\t.dialog__actions {\\n\\t\\twidth: auto;\\n\\t\\tmargin-inline: 12px;\\n\\t\\tspan.dialog__actions-separator {\\n\\t\\t\\tmargin-inline-start: auto;\\n\\t\\t}\\n\\t}\\n\\n\\t.input-field__helper-text-message {\\n\\t\\t// reduce helper text standing out\\n\\t\\tcolor: var(--color-text-maxcontrast);\\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, `.file-request-dialog__password-field[data-v-4f93c9b6]{display:flex;align-items:flex-start;gap:8px;margin-top:12px}.file-request-dialog__password-field>div[data-v-4f93c9b6]{margin:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogDatePassword.vue\"],\"names\":[],\"mappings\":\"AACA,sDACC,YAAA,CACA,sBAAA,CACA,OAAA,CAEA,eAAA,CACA,0DAEC,QAAA\",\"sourcesContent\":[\"\\n.file-request-dialog__password-field {\\n\\tdisplay: flex;\\n\\talign-items: flex-start;\\n\\tgap: 8px;\\n\\t// Compensate label gab with legend\\n\\tmargin-top: 12px;\\n\\t> div {\\n\\t\\t// Force margin to 0 as we handle it above\\n\\t\\tmargin: 0;\\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, `\n.input-field[data-v-99464cac],\n.file-request-dialog__emails[data-v-99464cac] {\n\tmargin-top: var(--margin);\n}\n.file-request-dialog__emails[data-v-99464cac] {\n\tdisplay: flex;\n\tgap: var(--default-grid-baseline);\n\tflex-wrap: wrap;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogFinish.vue\"],\"names\":[],\"mappings\":\";AAuOA;;CAEA,yBAAA;AACA;AAEA;CACA,aAAA;CACA,iCAAA;CACA,eAAA;AACA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.file-request-dialog__note[data-v-f8940020] textarea {\n\twidth: 100% !important;\n\tmin-height: 80px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/NewFileRequestDialog/NewFileRequestDialogIntro.vue\"],\"names\":[],\"mappings\":\";AAwKA;CACA,sBAAA;CACA,gBAAA;AACA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcDialog',{staticClass:\"file-request-dialog\",attrs:{\"data-cy-file-request-dialog\":\"\",\"close-on-click-outside\":false,\"name\":_vm.currentStep !== _vm.STEP.LAST ? _vm.t('files_sharing', 'Create a file request') : _vm.t('files_sharing', 'File request created'),\"size\":\"normal\"},on:{\"closing\":_vm.onCancel},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('NcButton',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.SECOND),expression:\"currentStep === STEP.SECOND\"}],attrs:{\"aria-label\":_vm.t('files_sharing', 'Previous step'),\"disabled\":_vm.loading,\"data-cy-file-request-dialog-controls\":\"back\",\"variant\":\"tertiary\"},on:{\"click\":function($event){_vm.currentStep = _vm.STEP.FIRST}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Previous step'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('span',{staticClass:\"dialog__actions-separator\"}),_vm._v(\" \"),(_vm.currentStep !== _vm.STEP.LAST)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Cancel'),\"disabled\":_vm.loading,\"title\":_vm.t('files_sharing', 'Cancel the file request creation'),\"data-cy-file-request-dialog-controls\":\"cancel\",\"variant\":\"tertiary\"},on:{\"click\":_vm.onCancel}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\")]):(_vm.emails.length !== 0)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Close without sending emails'),\"disabled\":_vm.loading,\"title\":_vm.t('files_sharing', 'Close without sending emails'),\"data-cy-file-request-dialog-controls\":\"cancel\",\"variant\":\"tertiary\"},on:{\"click\":_vm.onCancel}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Close'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.currentStep !== _vm.STEP.LAST)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Continue'),\"disabled\":_vm.loading,\"data-cy-file-request-dialog-controls\":\"next\"},on:{\"click\":_vm.onPageNext},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('IconNext',{attrs:{\"size\":20}})]},proxy:true}],null,false,3563923451)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Continue'))+\"\\n\\t\\t\")]):_c('NcButton',{attrs:{\"aria-label\":_vm.finishButtonLabel,\"disabled\":_vm.loading,\"data-cy-file-request-dialog-controls\":\"finish\",\"variant\":\"primary\"},on:{\"click\":_vm.onFinish},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('IconCheck',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.finishButtonLabel)+\"\\n\\t\\t\")])]},proxy:true}])},[_c('NcNoteCard',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.FIRST),expression:\"currentStep === STEP.FIRST\"}],staticClass:\"file-request-dialog__header\",attrs:{\"type\":\"info\"}},[_c('p',{staticClass:\"file-request-dialog__description\",attrs:{\"id\":\"file-request-dialog-description\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Collect files from others even if they do not have an account.'))+\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'To ensure you can receive files, verify you have enough storage available.'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('form',{ref:\"form\",staticClass:\"file-request-dialog__form\",attrs:{\"aria-describedby\":\"file-request-dialog-description\",\"aria-label\":_vm.t('files_sharing', 'File request'),\"aria-live\":\"polite\",\"data-cy-file-request-dialog-form\":\"\"},on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();}}},[_c('FileRequestIntro',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.FIRST),expression:\"currentStep === STEP.FIRST\"}],attrs:{\"context\":_vm.context,\"destination\":_vm.destination,\"disabled\":_vm.loading,\"label\":_vm.label,\"note\":_vm.note},on:{\"update:destination\":function($event){_vm.destination=$event},\"update:label\":function($event){_vm.label=$event},\"update:note\":function($event){_vm.note=$event}}}),_vm._v(\" \"),_c('FileRequestDatePassword',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.SECOND),expression:\"currentStep === STEP.SECOND\"}],attrs:{\"disabled\":_vm.loading,\"expiration-date\":_vm.expirationDate,\"password\":_vm.password},on:{\"update:expirationDate\":function($event){_vm.expirationDate=$event},\"update:expiration-date\":function($event){_vm.expirationDate=$event},\"update:password\":function($event){_vm.password=$event}}}),_vm._v(\" \"),(_vm.share)?_c('FileRequestFinish',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentStep === _vm.STEP.LAST),expression:\"currentStep === STEP.LAST\"}],attrs:{\"emails\":_vm.emails,\"is-share-by-mail-enabled\":_vm.isShareByMailEnabled,\"share\":_vm.share},on:{\"add-email\":email => _vm.emails.push(email),\"remove-email\":_vm.onRemoveEmail}}):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AutoFix.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AutoFix.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AutoFix.vue?vue&type=template&id=3fb26506\"\nimport script from \"./AutoFix.vue?vue&type=script&lang=js\"\nexport * from \"./AutoFix.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 auto-fix-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.5,5.6L5,7L6.4,4.5L5,2L7.5,3.4L10,2L8.6,4.5L10,7L7.5,5.6M19.5,15.4L22,14L20.6,16.5L22,19L19.5,17.6L17,19L18.4,16.5L17,14L19.5,15.4M22,2L20.6,4.5L22,7L19.5,5.6L17,7L18.4,4.5L17,2L19.5,3.4L22,2M13.34,12.78L15.78,10.34L13.66,8.22L11.22,10.66L13.34,12.78M14.37,7.29L16.71,9.63C17.1,10 17.1,10.65 16.71,11.04L5.04,22.71C4.65,23.1 4,23.1 3.63,22.71L1.29,20.37C0.9,20 0.9,19.35 1.29,18.96L12.96,7.29C13.35,6.9 14,6.9 14.37,7.29Z\"}},[(_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!./Information.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Information.vue?vue&type=script&lang=js\"","\n\n","import { render, staticRenderFns } from \"./Information.vue?vue&type=template&id=08fbdef3\"\nimport script from \"./Information.vue?vue&type=script&lang=js\"\nexport * from \"./Information.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 information-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,9H11V7H13M13,17H11V11H13M12,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 }","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport axios from '@nextcloud/axios';\nimport { showError, showSuccess } from '@nextcloud/dialogs';\nimport { t } from '@nextcloud/l10n';\nimport Config from '../services/ConfigService.ts';\nimport logger from '../services/logger.ts';\nconst config = new Config();\n// note: some chars removed on purpose to make them human friendly when read out\nconst passwordSet = 'abcdefgijkmnopqrstwxyzABCDEFGHJKLMNPQRSTWXYZ23456789';\n/**\n * Generate a valid policy password or request a valid password if password_policy is enabled\n *\n * @param verbose If enabled the the status is shown to the user via toast\n */\nexport default async function (verbose = false) {\n // password policy is enabled, let's request a pass\n if (config.passwordPolicy.api && config.passwordPolicy.api.generate) {\n try {\n const request = await axios.get(config.passwordPolicy.api.generate);\n if (request.data.ocs.data.password) {\n if (verbose) {\n showSuccess(t('files_sharing', 'Password created successfully'));\n }\n return request.data.ocs.data.password;\n }\n }\n catch (error) {\n logger.info('Error generating password from password_policy', { error });\n if (verbose) {\n showError(t('files_sharing', 'Error generating password from password policy'));\n }\n }\n }\n const array = new Uint8Array(10);\n const ratio = passwordSet.length / 255;\n getRandomValues(array);\n let password = '';\n for (let i = 0; i < array.length; i++) {\n password += passwordSet.charAt(array[i] * ratio);\n }\n return password;\n}\n/**\n * Fills the given array with cryptographically secure random values.\n * If the crypto API is not available, it falls back to less secure Math.random().\n * Crypto API is available in modern browsers on secure contexts (HTTPS).\n *\n * @param array - The array to fill with random values.\n */\nfunction getRandomValues(array) {\n if (self?.crypto?.getRandomValues) {\n self.crypto.getRandomValues(array);\n return;\n }\n let len = array.length;\n while (len--) {\n array[len] = Math.floor(Math.random() * 256);\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.passwordAndExpirationSummary)?_c('NcNoteCard',{attrs:{\"type\":\"success\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.passwordAndExpirationSummary)+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),_c('fieldset',{staticClass:\"file-request-dialog__expiration\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"expiration\"}},[_c('legend',[_vm._v(_vm._s(_vm.t('files_sharing', 'When should the request expire?')))]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isExpirationDateEnforced),expression:\"!isExpirationDateEnforced\"}],attrs:{\"model-value\":_vm.isExpirationDateEnforced || _vm.expirationDate !== null,\"disabled\":_vm.disabled || _vm.isExpirationDateEnforced},on:{\"update:modelValue\":_vm.onToggleDeadline}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Set a submission expiration date'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.expirationDate !== null)?_c('NcDateTimePickerNative',{attrs:{\"id\":\"file-request-dialog-expirationDate\",\"disabled\":_vm.disabled,\"hide-label\":true,\"label\":_vm.t('files_sharing', 'Expiration date'),\"max\":_vm.maxDate,\"min\":_vm.minDate,\"placeholder\":_vm.t('files_sharing', 'Select a date'),\"required\":_vm.defaultExpireDateEnforced,\"model-value\":_vm.expirationDate,\"name\":\"expirationDate\",\"type\":\"date\"},on:{\"input\":function($event){return _vm.$emit('update:expirationDate', $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.defaultExpireDateEnforced)?_c('p',{staticClass:\"file-request-dialog__info\"},[_c('IconInfo',{staticClass:\"file-request-dialog__info-icon\",attrs:{\"size\":18}}),_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Your administrator has enforced a {count} days expiration policy.', { count: _vm.defaultExpireDate }))+\"\\n\\t\\t\")],1):_vm._e()],1),_vm._v(\" \"),_c('fieldset',{staticClass:\"file-request-dialog__password\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"password\"}},[_c('legend',[_vm._v(_vm._s(_vm.t('files_sharing', 'What password should be used for the request?')))]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isPasswordEnforced),expression:\"!isPasswordEnforced\"}],attrs:{\"model-value\":_vm.isPasswordEnforced || _vm.password !== null,\"disabled\":_vm.disabled || _vm.isPasswordEnforced},on:{\"update:modelValue\":_vm.onTogglePassword}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Set a password'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.password !== null)?_c('div',{staticClass:\"file-request-dialog__password-field\"},[_c('NcPasswordField',{ref:\"passwordField\",attrs:{\"check-password-strength\":true,\"disabled\":_vm.disabled,\"label\":_vm.t('files_sharing', 'Password'),\"placeholder\":_vm.t('files_sharing', 'Enter a valid password'),\"required\":_vm.enforcePasswordForPublicLink,\"model-value\":_vm.password,\"name\":\"password\"},on:{\"update:value\":function($event){return _vm.$emit('update:password', $event)}}}),_vm._v(\" \"),_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Generate a new password'),\"title\":_vm.t('files_sharing', 'Generate a new password'),\"variant\":\"tertiary-no-background\"},on:{\"click\":_vm.onGeneratePassword},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconPasswordGen',{attrs:{\"size\":20}})]},proxy:true}],null,false,1334968784)})],1):_vm._e(),_vm._v(\" \"),(_vm.enforcePasswordForPublicLink)?_c('p',{staticClass:\"file-request-dialog__info\"},[_c('IconInfo',{staticClass:\"file-request-dialog__info-icon\",attrs:{\"size\":18}}),_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Your administrator has enforced a password protection.'))+\"\\n\\t\\t\")],1):_vm._e()],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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogDatePassword.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogDatePassword.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/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogDatePassword.vue?vue&type=style&index=0&id=4f93c9b6&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogDatePassword.vue?vue&type=style&index=0&id=4f93c9b6&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewFileRequestDialogDatePassword.vue?vue&type=template&id=4f93c9b6&scoped=true\"\nimport script from \"./NewFileRequestDialogDatePassword.vue?vue&type=script&lang=ts\"\nexport * from \"./NewFileRequestDialogDatePassword.vue?vue&type=script&lang=ts\"\nimport style0 from \"./NewFileRequestDialogDatePassword.vue?vue&type=style&index=0&id=4f93c9b6&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 \"4f93c9b6\",\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',[_c('NcNoteCard',{attrs:{\"type\":\"success\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'You can now share the link below to allow people to upload files to your directory.'))+\"\\n\\t\")]),_vm._v(\" \"),_c('NcInputField',{ref:\"clipboard\",attrs:{\"model-value\":_vm.shareLink,\"label\":_vm.t('files_sharing', 'Share link'),\"readonly\":true,\"show-trailing-button\":true,\"trailing-button-label\":_vm.t('files_sharing', 'Copy'),\"data-cy-file-request-dialog-fieldset\":\"link\"},on:{\"click\":_vm.copyShareLink,\"trailing-button-click\":_vm.copyShareLink},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [(_vm.isCopied)?_c('IconCheck',{attrs:{\"size\":20}}):_c('IconClipboard',{attrs:{\"size\":20}})]},proxy:true}])}),_vm._v(\" \"),(_vm.isShareByMailEnabled)?[_c('NcTextField',{attrs:{\"label\":_vm.t('files_sharing', 'Send link via email'),\"placeholder\":_vm.t('files_sharing', 'Enter an email address or paste a list'),\"data-cy-file-request-dialog-fieldset\":\"email\",\"type\":\"email\"},on:{\"keypress\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;$event.stopPropagation();return _vm.addNewEmail.apply(null, arguments)},\"paste\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onPasteEmails.apply(null, arguments)}},nativeOn:{\"focusout\":function($event){return _vm.addNewEmail.apply(null, arguments)}},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),_vm._v(\" \"),(_vm.emails.length > 0)?_c('div',{staticClass:\"file-request-dialog__emails\"},_vm._l((_vm.emails),function(mail){return _c('NcChip',{key:mail,attrs:{\"aria-label-close\":_vm.t('files_sharing', 'Remove email'),\"text\":mail},on:{\"close\":function($event){return _vm.$emit('remove-email', mail)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcAvatar',{attrs:{\"disable-menu\":\"\",\"disable-tooltip\":\"\",\"display-name\":mail,\"is-no-user\":\"\",\"hide-status\":\"\",\"size\":24}})]},proxy:true}],null,true)})}),1):_vm._e()]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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!./NcChip-DLfUzq07.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../css-loader/dist/cjs.js!./NcChip-DLfUzq07.css\";\n export default content && content.locals ? content.locals : undefined;\n","import '../assets/NcChip-DLfUzq07.css';\nimport { c as mdiClose } from \"../chunks/mdi-DkJglNiS.mjs\";\nimport { useSlots, computed } from \"vue\";\nimport { N as NcActionButton } from \"../chunks/NcActionButton-D7uypboC.mjs\";\nimport { N as NcActions } from \"../chunks/NcActions-JnumflF4.mjs\";\nimport { N as NcIconSvgWrapper } from \"../chunks/NcIconSvgWrapper-Bui9PhAS.mjs\";\nimport { r as register, m as t18, a as t } from \"../chunks/_l10n-DVz9Qdzk.mjs\";\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t18);\nconst _sfc_main = {\n __name: \"NcChip\",\n props: {\n /**\n * aria label to set on the close button\n *\n * @default 'Close'\n */\n ariaLabelClose: {\n type: String,\n default: t(\"Close\")\n },\n /**\n * Container for the actions\n */\n actionsContainer: {\n type: String,\n default: \"body\"\n },\n /**\n * Main text of the chip.\n */\n text: {\n type: String,\n default: \"\"\n },\n /**\n * Set the chips design variant-\n *\n * This sets the background style of the chip, similar to NcButton's `variant`.\n *\n * @deprecated will be removed with v9 - use `variant` instead.\n */\n type: {\n type: String,\n default: \"secondary\",\n validator: (value) => [\"primary\", \"secondary\", \"tertiary\", \"error\", \"warning\", \"success\"].includes(value)\n },\n /**\n * SVG path of the icon to use, this takes precedence over `iconSVG`.\n * For example icon paths from `@mdi/js` can be used.\n */\n iconPath: {\n type: String,\n default: null\n },\n /**\n * Inline SVG to use as the icon\n */\n iconSvg: {\n type: String,\n default: null\n },\n /**\n * Set to true to prevent the close button to be shown\n */\n noClose: {\n type: Boolean,\n default: false\n },\n /**\n * Set the chips design variant-\n *\n * This sets the background style of the chip, similar to NcButton's `variant`.\n *\n * @since 8.24.0\n */\n variant: {\n type: String,\n default: \"secondary\",\n validator: (value) => [\"primary\", \"secondary\", \"tertiary\", \"error\", \"warning\", \"success\"].includes(value)\n }\n },\n emits: [\"close\"],\n setup(__props, { emit }) {\n const props = __props;\n const slots = useSlots();\n const realVariant = computed(() => props.type !== \"secondary\" ? props.type : props.variant);\n const canClose = computed(() => !props.noClose);\n const hasActions = () => Boolean(slots.actions?.());\n const hasIcon = () => Boolean(props.iconPath || props.iconSvg || !!slots.icon?.());\n return { __sfc: true, props, emit, slots, realVariant, canClose, hasActions, hasIcon, mdiClose, NcActionButton, NcActions, NcIconSvgWrapper };\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(\"div\", { staticClass: \"nc-chip\", class: {\n [`nc-chip--${_setup.realVariant}`]: true,\n \"nc-chip--no-actions\": _vm.noClose && !_setup.hasActions(),\n \"nc-chip--no-icon\": !_setup.hasIcon()\n } }, [_setup.hasIcon() ? _c(\"span\", { staticClass: \"nc-chip__icon\" }, [_vm._t(\"icon\", function() {\n return [_vm.iconPath || _vm.iconSvg ? _c(_setup.NcIconSvgWrapper, { attrs: { \"inline\": \"\", \"path\": _vm.iconPath, \"svg\": _vm.iconPath ? void 0 : _vm.iconSvg, \"size\": 18 } }) : _vm._e()];\n })], 2) : _vm._e(), _c(\"span\", { staticClass: \"nc-chip__text\" }, [_vm._t(\"default\", function() {\n return [_vm._v(_vm._s(_vm.text))];\n })], 2), _setup.canClose || _setup.hasActions() ? _c(_setup.NcActions, { staticClass: \"nc-chip__actions\", attrs: { \"container\": _vm.actionsContainer, \"force-menu\": !_setup.canClose, \"variant\": \"tertiary-no-background\" } }, [_setup.canClose ? _c(_setup.NcActionButton, { attrs: { \"close-after-click\": \"\" }, on: { \"click\": function($event) {\n return _setup.emit(\"close\");\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(_setup.NcIconSvgWrapper, { attrs: { \"path\": _setup.mdiClose, \"size\": 20 } })];\n }, proxy: true }], null, false, 2547223506) }, [_vm._v(\" \" + _vm._s(_vm.ariaLabelClose) + \" \")]) : _vm._e(), _vm._t(\"actions\")], 2) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"c8e429a5\"\n);\nconst NcChip = __component__.exports;\nexport {\n NcChip as default\n};\n//# sourceMappingURL=NcChip.mjs.map\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClipboardText.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClipboardText.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClipboardText.vue?vue&type=template&id=58267ecd\"\nimport script from \"./ClipboardText.vue?vue&type=script&lang=js\"\nexport * from \"./ClipboardText.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon clipboard-text-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,9H7V7H17M17,13H7V11H17M14,17H7V15H14M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3Z\"}},[(_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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogFinish.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogFinish.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/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogFinish.vue?vue&type=style&index=0&id=99464cac&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogFinish.vue?vue&type=style&index=0&id=99464cac&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewFileRequestDialogFinish.vue?vue&type=template&id=99464cac&scoped=true\"\nimport script from \"./NewFileRequestDialogFinish.vue?vue&type=script&lang=ts\"\nexport * from \"./NewFileRequestDialogFinish.vue?vue&type=script&lang=ts\"\nimport style0 from \"./NewFileRequestDialogFinish.vue?vue&type=style&index=0&id=99464cac&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"99464cac\",\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',[_c('fieldset',{staticClass:\"file-request-dialog__label\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"label\"}},[_c('legend',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'What are you requesting?'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"model-value\":_vm.label,\"disabled\":_vm.disabled,\"label\":_vm.t('files_sharing', 'Request subject'),\"placeholder\":_vm.t('files_sharing', 'Birthday party photos, History assignment…'),\"required\":false,\"name\":\"label\"},on:{\"update:value\":function($event){return _vm.$emit('update:label', $event)}}})],1),_vm._v(\" \"),_c('fieldset',{staticClass:\"file-request-dialog__destination\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"destination\"}},[_c('legend',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Where should these files go?'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"model-value\":_vm.destination,\"disabled\":_vm.disabled,\"label\":_vm.t('files_sharing', 'Upload destination'),\"minlength\":2/* cannot share root */,\"placeholder\":_vm.t('files_sharing', 'Select a destination'),\"readonly\":false /* cannot validate a readonly input */,\"required\":true /* cannot be empty */,\"show-trailing-button\":_vm.destination !== _vm.context.path,\"trailing-button-icon\":\"undo\",\"trailing-button-label\":_vm.t('files_sharing', 'Revert to default'),\"name\":\"destination\"},on:{\"click\":_vm.onPickDestination,\"keypress\":function($event){$event.preventDefault();$event.stopPropagation();/* prevent typing in the input, we use the picker */},\"paste\":function($event){$event.preventDefault();$event.stopPropagation();/* prevent pasting in the input, we use the picker */},\"trailing-button-click\":function($event){return _vm.$emit('update:destination', '')}}},[_c('IconFolder',{attrs:{\"size\":18}})],1),_vm._v(\" \"),_c('p',{staticClass:\"file-request-dialog__info\"},[_c('IconLock',{staticClass:\"file-request-dialog__info-icon\",attrs:{\"size\":18}}),_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'The uploaded files are visible only to you unless you choose to share them.'))+\"\\n\\t\\t\")],1)],1),_vm._v(\" \"),_c('fieldset',{staticClass:\"file-request-dialog__note\",attrs:{\"data-cy-file-request-dialog-fieldset\":\"note\"}},[_c('legend',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Add a note'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcTextArea',{attrs:{\"model-value\":_vm.note,\"disabled\":_vm.disabled,\"label\":_vm.t('files_sharing', 'Note for recipient'),\"placeholder\":_vm.t('files_sharing', 'Add a note to help people understand what you are requesting.'),\"required\":false,\"name\":\"note\"},on:{\"update:value\":function($event){return _vm.$emit('update:note', $event)}}}),_vm._v(\" \"),_c('p',{staticClass:\"file-request-dialog__info\"},[_c('IconInfo',{staticClass:\"file-request-dialog__info-icon\",attrs:{\"size\":18}}),_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'You can add links, date or any other information that will help the recipient understand what you are requesting.'))+\"\\n\\t\\t\")],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Lock.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Lock.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Lock.vue?vue&type=template&id=6d856da2\"\nimport script from \"./Lock.vue?vue&type=script&lang=js\"\nexport * from \"./Lock.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 lock-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,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z\"}},[(_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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogIntro.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogIntro.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/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogIntro.vue?vue&type=style&index=0&id=f8940020&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialogIntro.vue?vue&type=style&index=0&id=f8940020&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewFileRequestDialogIntro.vue?vue&type=template&id=f8940020&scoped=true\"\nimport script from \"./NewFileRequestDialogIntro.vue?vue&type=script&lang=ts\"\nexport * from \"./NewFileRequestDialogIntro.vue?vue&type=script&lang=ts\"\nimport style0 from \"./NewFileRequestDialogIntro.vue?vue&type=style&index=0&id=f8940020&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f8940020\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport logger from '../services/logger.ts';\nimport { isFileRequest } from '../services/SharingService.ts';\nexport default class Share {\n _share;\n /**\n * Create the share object\n *\n * @param ocsData ocs request response\n */\n constructor(ocsData) {\n if (ocsData.ocs && ocsData.ocs.data && ocsData.ocs.data[0]) {\n ocsData = ocsData.ocs.data[0];\n }\n // string to int\n if (typeof ocsData.id === 'string') {\n ocsData.id = Number.parseInt(ocsData.id);\n }\n // convert int into boolean\n ocsData.hide_download = !!ocsData.hide_download;\n ocsData.mail_send = !!ocsData.mail_send;\n if (ocsData.attributes && typeof ocsData.attributes === 'string') {\n try {\n ocsData.attributes = JSON.parse(ocsData.attributes);\n }\n catch {\n logger.warn('Could not parse share attributes returned by server', ocsData.attributes);\n }\n }\n ocsData.attributes = ocsData.attributes ?? [];\n // Pre-declared so Vue 2 makes newPassword reactive at observation time,\n // avoiding $set's property-addition path which races with async setters.\n ocsData.newPassword = ocsData.newPassword ?? undefined;\n // store state\n this._share = ocsData;\n }\n /**\n * Get the share state\n * ! used for reactivity purpose\n * Do not remove. It allow vuejs to\n * inject its watchers into the #share\n * state and make the whole class reactive\n *\n * @return the share raw state\n */\n get state() {\n return this._share;\n }\n /**\n * get the share id\n */\n get id() {\n return this._share.id;\n }\n /**\n * Get the share type\n */\n get type() {\n return this._share.share_type;\n }\n /**\n * Get the share permissions\n * See window.OC.PERMISSION_* variables\n */\n get permissions() {\n return this._share.permissions;\n }\n /**\n * Get the share attributes\n */\n get attributes() {\n return this._share.attributes || [];\n }\n /**\n * Set the share permissions\n * See window.OC.PERMISSION_* variables\n */\n set permissions(permissions) {\n this._share.permissions = permissions;\n }\n // SHARE OWNER --------------------------------------------------\n /**\n * Get the share owner uid\n */\n get owner() {\n return this._share.uid_owner;\n }\n /**\n * Get the share owner's display name\n */\n get ownerDisplayName() {\n return this._share.displayname_owner;\n }\n // SHARED WITH --------------------------------------------------\n /**\n * Get the share with entity uid\n */\n get shareWith() {\n return this._share.share_with;\n }\n /**\n * Get the share with entity display name\n * fallback to its uid if none\n */\n get shareWithDisplayName() {\n return this._share.share_with_displayname\n || this._share.share_with;\n }\n /**\n * Unique display name in case of multiple\n * duplicates results with the same name.\n */\n get shareWithDisplayNameUnique() {\n return this._share.share_with_displayname_unique\n || this._share.share_with;\n }\n /**\n * Get the share with entity link\n */\n get shareWithLink() {\n return this._share.share_with_link;\n }\n /**\n * Get the share with avatar if any\n */\n get shareWithAvatar() {\n return this._share.share_with_avatar;\n }\n // SHARED FILE OR FOLDER OWNER ----------------------------------\n /**\n * Get the shared item owner uid\n */\n get uidFileOwner() {\n return this._share.uid_file_owner;\n }\n /**\n * Get the shared item display name\n * fallback to its uid if none\n */\n get displaynameFileOwner() {\n return this._share.displayname_file_owner\n || this._share.uid_file_owner;\n }\n // TIME DATA ----------------------------------------------------\n /**\n * Get the share creation timestamp\n */\n get createdTime() {\n return this._share.stime;\n }\n /**\n * Get the expiration date\n *\n * @return date with YYYY-MM-DD format\n */\n get expireDate() {\n return this._share.expiration;\n }\n /**\n * Set the expiration date\n *\n * @param date the share expiration date with YYYY-MM-DD format\n */\n set expireDate(date) {\n this._share.expiration = date;\n }\n // EXTRA DATA ---------------------------------------------------\n /**\n * Get the public share token\n */\n get token() {\n return this._share.token;\n }\n /**\n * Set the public share token\n */\n set token(token) {\n this._share.token = token;\n }\n /**\n * Get the share note if any\n */\n get note() {\n return this._share.note;\n }\n /**\n * Set the share note if any\n */\n set note(note) {\n this._share.note = note;\n }\n /**\n * Get the share label if any\n * Should only exist on link shares\n */\n get label() {\n return this._share.label ?? '';\n }\n /**\n * Set the share label if any\n * Should only be set on link shares\n */\n set label(label) {\n this._share.label = label;\n }\n /**\n * Have a mail been sent\n */\n get mailSend() {\n return this._share.mail_send === true;\n }\n /**\n * Hide the download button on public page\n */\n get hideDownload() {\n return this._share.hide_download === true\n || this.attributes.find?.(({ scope, key, value }) => scope === 'permissions' && key === 'download' && !value) !== undefined;\n }\n /**\n * Hide the download button on public page\n */\n set hideDownload(state) {\n // disabling hide-download also enables the download permission\n // needed for regression in Nextcloud 31.0.0 until (incl.) 31.0.3\n if (!state) {\n const attribute = this.attributes.find(({ key, scope }) => key === 'download' && scope === 'permissions');\n if (attribute) {\n attribute.value = true;\n }\n }\n this._share.hide_download = state === true;\n }\n /**\n * Password protection of the share\n */\n get password() {\n return this._share.password;\n }\n /**\n * Password protection of the share\n */\n set password(password) {\n this._share.password = password;\n }\n /**\n * Unsaved password (set during share creation or editing).\n * Delegates to _share so reads/writes go through the reactive state.\n */\n get newPassword() {\n return this._share.newPassword;\n }\n set newPassword(value) {\n this._share.newPassword = value;\n }\n /**\n * Password expiration time\n *\n * @return date with YYYY-MM-DD format\n */\n get passwordExpirationTime() {\n return this._share.password_expiration_time;\n }\n /**\n * Password expiration time\n *\n * @param passwordExpirationTime date with YYYY-MM-DD format\n */\n set passwordExpirationTime(passwordExpirationTime) {\n this._share.password_expiration_time = passwordExpirationTime;\n }\n /**\n * Password protection by Talk of the share\n */\n get sendPasswordByTalk() {\n return this._share.send_password_by_talk;\n }\n /**\n * Password protection by Talk of the share\n *\n * @param sendPasswordByTalk whether to send the password by Talk or not\n */\n set sendPasswordByTalk(sendPasswordByTalk) {\n this._share.send_password_by_talk = sendPasswordByTalk;\n }\n // SHARED ITEM DATA ---------------------------------------------\n /**\n * Get the shared item absolute full path\n */\n get path() {\n return this._share.path;\n }\n /**\n * Return the item type: file or folder\n *\n * @return 'folder' | 'file'\n */\n get itemType() {\n return this._share.item_type;\n }\n /**\n * Get the shared item mimetype\n */\n get mimetype() {\n return this._share.mimetype;\n }\n /**\n * Get the shared item id\n */\n get fileSource() {\n return this._share.file_source;\n }\n /**\n * Get the target path on the receiving end\n * e.g the file /xxx/aaa will be shared in\n * the receiving root as /aaa, the fileTarget is /aaa\n */\n get fileTarget() {\n return this._share.file_target;\n }\n /**\n * Get the parent folder id if any\n */\n get fileParent() {\n return this._share.file_parent;\n }\n // PERMISSIONS Shortcuts\n /**\n * Does this share have READ permissions\n */\n get hasReadPermission() {\n return !!((this.permissions & window.OC.PERMISSION_READ));\n }\n /**\n * Does this share have CREATE permissions\n */\n get hasCreatePermission() {\n return !!((this.permissions & window.OC.PERMISSION_CREATE));\n }\n /**\n * Does this share have DELETE permissions\n */\n get hasDeletePermission() {\n return !!((this.permissions & window.OC.PERMISSION_DELETE));\n }\n /**\n * Does this share have UPDATE permissions\n */\n get hasUpdatePermission() {\n return !!((this.permissions & window.OC.PERMISSION_UPDATE));\n }\n /**\n * Does this share have SHARE permissions\n */\n get hasSharePermission() {\n return !!((this.permissions & window.OC.PERMISSION_SHARE));\n }\n /**\n * Does this share have download permissions\n */\n get hasDownloadPermission() {\n const hasDisabledDownload = (attribute) => {\n return attribute.scope === 'permissions' && attribute.key === 'download' && attribute.value === false;\n };\n return this.attributes.some(hasDisabledDownload);\n }\n /**\n * Is this mail share a file request ?\n */\n get isFileRequest() {\n return isFileRequest(JSON.stringify(this.attributes));\n }\n set hasDownloadPermission(enabled) {\n this.setAttribute('permissions', 'download', !!enabled);\n }\n setAttribute(scope, key, value) {\n const attrUpdate = {\n scope,\n key,\n value,\n };\n // try and replace existing\n for (const i in this._share.attributes) {\n const attr = this._share.attributes[i];\n if (attr.scope === attrUpdate.scope && attr.key === attrUpdate.key) {\n this._share.attributes.splice(i, 1, attrUpdate);\n return;\n }\n }\n this._share.attributes.push(attrUpdate);\n }\n // PERMISSIONS Shortcuts for the CURRENT USER\n // ! the permissions above are the share settings,\n // ! meaning the permissions for the recipient\n /**\n * Can the current user EDIT this share ?\n */\n get canEdit() {\n return this._share.can_edit === true;\n }\n /**\n * Can the current user DELETE this share ?\n */\n get canDelete() {\n return this._share.can_delete === true;\n }\n /**\n * Top level accessible shared folder fileid for the current user\n */\n get viaFileid() {\n return this._share.via_fileid;\n }\n /**\n * Top level accessible shared folder path for the current user\n */\n get viaPath() {\n return this._share.via_path;\n }\n // TODO: SORT THOSE PROPERTIES\n get parent() {\n return this._share.parent;\n }\n get storageId() {\n return this._share.storage_id;\n }\n get storage() {\n return this._share.storage;\n }\n get itemSource() {\n return this._share.item_source;\n }\n get status() {\n return this._share.status;\n }\n /**\n * Is the share from a trusted server\n */\n get isTrustedServer() {\n return !!this._share.is_trusted_server;\n }\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialog.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-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialog.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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialog.vue?vue&type=style&index=0&id=747d2488&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewFileRequestDialog.vue?vue&type=style&index=0&id=747d2488&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewFileRequestDialog.vue?vue&type=template&id=747d2488\"\nimport script from \"./NewFileRequestDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./NewFileRequestDialog.vue?vue&type=script&lang=ts\"\nimport style0 from \"./NewFileRequestDialog.vue?vue&type=style&index=0&id=747d2488&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"],"names":["___CSS_LOADER_EXPORT___","_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","vue_material_design_icons_AutoFixvue_type_script_lang_js","name","emits","props","title","type","String","fillColor","default","size","Number","AutoFix","componentNormalizer","A","_vm","this","_c","_self","_b","staticClass","attrs","role","on","click","$event","$emit","$attrs","fill","width","height","viewBox","d","_v","_s","_e","vue_material_design_icons_Informationvue_type_script_lang_js","Information","config","Config","async","GeneratePassword","verbose","passwordPolicy","api","generate","request","axios","get","data","ocs","password","showSuccess","t","error","logger","info","showError","array","Uint8Array","ratio","passwordSet","self","crypto","getRandomValues","len","length","Math","floor","random","i","charAt","sharingConfig","NewFileRequestDialog_NewFileRequestDialogDatePasswordvue_type_script_lang_ts","defineComponent","components","IconInfo","IconPasswordGen","NcButton","NcCheckboxRadioSwitch","NcDateTimePickerNative","NcNoteCard","NcPasswordField","disabled","Boolean","required","expirationDate","Date","setup","l10n_dist","defaultExpireDate","defaultExpireDateEnabled","isDefaultExpireDateEnabled","defaultExpireDateEnforced","isDefaultExpireDateEnforced","enableLinkPasswordByDefault","enforcePasswordForPublicLink","maxDate","minDate","setDate","getDate","computed","passwordAndExpirationSummary","date","toLocaleDateString","isExpirationDateEnforced","isPasswordEnforced","mounted","defaultExpirationDate","generatePassword","methods","onToggleDeadline","checked","onTogglePassword","onGeneratePassword","showPassword","then","$refs","passwordField","isPasswordHidden","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","NewFileRequestDialogDatePasswordvue_type_style_index_0_id_4f93c9b6_prod_scoped_true_lang_scss","locals","NewFileRequestDialogDatePassword","_setupProxy","directives","rawName","value","expression","label","max","min","placeholder","input","count","ref","variant","scopedSlots","_u","key","fn","proxy","NcChip_DLfUzq07_options","NcChip_DLfUzq07","_l10n_DVz9Qdzk","r","m","_sfc_main","__name","ariaLabelClose","a","actionsContainer","text","validator","includes","iconPath","iconSvg","noClose","__props","emit","slots","vue_runtime_esm","Ht","realVariant","EW","canClose","__sfc","hasActions","actions","hasIcon","icon","mdiClose","mdi_DkJglNiS","c","NcActionButton","NcActionButton_D7uypboC","N","NcActions","NcActions_JnumflF4","NcIconSvgWrapper","NcIconSvgWrapper_Bui9PhAS","_sfc_render","_setup","class","_t","inline","path","svg","container","_sfc_staticRenderFns","NcChip","_plugin_vue2_normalizer_DU4iP6Vu","n","exports","vue_material_design_icons_ClipboardTextvue_type_script_lang_js","ClipboardText","NewFileRequestDialog_NewFileRequestDialogFinishvue_type_script_lang_ts","IconCheck","Check","IconClipboard","NcAvatar","NcInputField","NcTextField","share","Object","emails","Array","isShareByMailEnabled","isCopied","email","shareLink","generateUrl","token","baseURL","getBaseUrl","copyShareLink","event","navigator","clipboard","writeText","target","select","setTimeout","window","prompt","addNewEmail","e","trim","HTMLInputElement","setCustomValidity","checkValidity","reportValidity","isValidEmail","onPasteEmails","clipboardData","getData","split","filter","map","duplicateEmails","validEmails","invalidEmails","forEach","join","NewFileRequestDialogFinishvue_type_style_index_0_id_99464cac_prod_scoped_true_lang_css_options","NewFileRequestDialogFinishvue_type_style_index_0_id_99464cac_prod_scoped_true_lang_css","NewFileRequestDialogFinish_component","readonly","keypress","indexOf","_k","keyCode","stopPropagation","apply","arguments","paste","preventDefault","nativeOn","focusout","model","callback","$$v","_l","mail","close","NewFileRequestDialogFinish","vue_material_design_icons_Lockvue_type_script_lang_js","Lock","NewFileRequestDialog_NewFileRequestDialogIntrovue_type_script_lang_ts","IconFolder","Folder","InformationOutline","IconLock","NcTextArea","context","destination","note","onPickDestination","filepicker","getFilePickerBuilder","addMimeTypeFilter","allowDirectories","addButton","onPickedDestination","setFilter","node","startAt","build","pick","nodes","NewFileRequestDialogIntrovue_type_style_index_0_id_f8940020_prod_scoped_true_lang_css_options","NewFileRequestDialogIntrovue_type_style_index_0_id_f8940020_prod_scoped_true_lang_css","NewFileRequestDialogIntro","minlength","STEP","Share","constructor","ocsData","parseInt","hide_download","mail_send","attributes","JSON","parse","warn","newPassword","undefined","_share","state","share_type","permissions","owner","uid_owner","ownerDisplayName","displayname_owner","shareWith","share_with","shareWithDisplayName","share_with_displayname","shareWithDisplayNameUnique","share_with_displayname_unique","shareWithLink","share_with_link","shareWithAvatar","share_with_avatar","uidFileOwner","uid_file_owner","displaynameFileOwner","displayname_file_owner","createdTime","stime","expireDate","expiration","mailSend","hideDownload","find","scope","attribute","passwordExpirationTime","password_expiration_time","sendPasswordByTalk","send_password_by_talk","itemType","item_type","mimetype","fileSource","file_source","fileTarget","file_target","fileParent","file_parent","hasReadPermission","OC","PERMISSION_READ","hasCreatePermission","PERMISSION_CREATE","hasDeletePermission","PERMISSION_DELETE","hasUpdatePermission","PERMISSION_UPDATE","hasSharePermission","PERMISSION_SHARE","hasDownloadPermission","some","isFileRequest","stringify","enabled","setAttribute","attrUpdate","attr","splice","canEdit","can_edit","canDelete","can_delete","viaFileid","via_fileid","viaPath","via_path","parent","storageId","storage_id","storage","itemSource","item_source","status","isTrustedServer","is_trusted_server","components_NewFileRequestDialogvue_type_script_lang_ts","FileRequestDatePassword","FileRequestFinish","FileRequestIntro","IconNext","ArrowRight","NcDialog","NcLoadingIcon","content","isMailShareAllowed","currentStep","FIRST","loading","finishButtonLabel","onPageNext","form","querySelectorAll","destinationInput","querySelector","createShare","SECOND","onRemoveEmail","index","onCancel","onFinish","setShareEmails","sendEmails","getFullYear","getMonth","toString","padStart","shareUrl","generateOcsUrl","post","shareType","ShareType","Email","Link","Permission","CREATE","LAST","errorMessage","response","meta","message","Error","put","onEmailSendError","NewFileRequestDialogvue_type_style_index_0_id_747d2488_prod_lang_scss_options","NewFileRequestDialogvue_type_style_index_0_id_747d2488_prod_lang_scss","NewFileRequestDialog","closing","submit"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/4433-4433.js.map.license b/dist/4433-4433.js.map.license new file mode 120000 index 0000000000000..51ff066aa3fc9 --- /dev/null +++ b/dist/4433-4433.js.map.license @@ -0,0 +1 @@ +4433-4433.js.license \ No newline at end of file diff --git a/dist/7497-7497.js b/dist/6163-6163.js similarity index 96% rename from dist/7497-7497.js rename to dist/6163-6163.js index 3115056eb79eb..b083a61f82449 100644 --- a/dist/7497-7497.js +++ b/dist/6163-6163.js @@ -1,2 +1,2 @@ -"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[7497],{53926(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".template-field-modal__content[data-v-97ce63ca]{padding:calc(var(--default-grid-baseline)*4)}.template-field-modal__content h3[data-v-97ce63ca]{text-align:center}.template-field-modal__buttons[data-v-97ce63ca]{display:flex;justify-content:flex-end;gap:var(--default-grid-baseline);margin:calc(var(--default-grid-baseline)*4);margin-top:0}","",{version:3,sources:["webpack://./apps/files/src/components/TemplateFiller.vue"],names:[],mappings:"AAGA,gDACC,4CAHc,CAKd,mDACC,iBAAA,CAIF,gDACC,YAAA,CACA,wBAAA,CACA,gCAAA,CACA,2CAdc,CAed,YAAA",sourcesContent:["\n$modal-margin: calc(var(--default-grid-baseline) * 4);\n\n.template-field-modal__content {\n\tpadding: $modal-margin;\n\n\th3 {\n\t\ttext-align: center;\n\t}\n}\n\n.template-field-modal__buttons {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\tgap: var(--default-grid-baseline);\n\tmargin: $modal-margin;\n\tmargin-top: 0;\n}\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},36209(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".template-field__checkbox[data-v-70a7f597]{margin:20px 0}","",{version:3,sources:["webpack://./apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue"],names:[],mappings:"AACA,2CACE,aAAA",sourcesContent:["\n.template-field__checkbox {\n margin: 20px 0;\n}\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},59622(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".template-field__text[data-v-9f5448c8]{margin:20px 0}.template-field__text label[data-v-9f5448c8]{font-weight:bold}","",{version:3,sources:["webpack://./apps/files/src/components/TemplateFiller/TemplateRichTextField.vue"],names:[],mappings:"AACA,uCACC,aAAA,CAEA,6CACC,gBAAA",sourcesContent:["\n.template-field__text {\n\tmargin: 20px 0;\n\n\tlabel {\n\t\tfont-weight: bold;\n\t}\n}\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},80936(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".template-picker__item[data-v-9ac54e24]{display:flex}.template-picker__label[data-v-9ac54e24]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-9ac54e24],.template-picker__label *[data-v-9ac54e24]{cursor:pointer;user-select:none}.template-picker__label[data-v-9ac54e24]::before{display:none !important}.template-picker__preview[data-v-9ac54e24]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-9ac54e24]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-9ac54e24]{display:flex}.template-picker__image[data-v-9ac54e24]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-9ac54e24]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-9ac54e24]{max-width:calc(var(--width) + 4px);padding:var(--margin)}","",{version:3,sources:["webpack://./apps/files/src/components/TemplatePreview.vue"],names:[],mappings:"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCAEC,kCAAA,CACA,qBAAA",sourcesContent:["\n\n.template-picker {\n\t&__item {\n\t\tdisplay: flex;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\t// Align in the middle of the grid\n\t\talign-items: center;\n\t\tflex: 1 1;\n\t\tflex-direction: column;\n\n\t\t&, * {\n\t\t\tcursor: pointer;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&::before {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n\n\t&__preview {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t\t// Stretch so all entries are the same width\n\t\tflex: 1 1;\n\t\twidth: var(--width);\n\t\tmin-height: var(--height);\n\t\tmax-height: var(--height);\n\t\tpadding: 0;\n\t\tborder: var(--border) solid var(--color-border);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tinput:checked + label > & {\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\n\t\t&--failed {\n\t\t\t// Make sure to properly center fallback icon\n\t\t\tdisplay: flex;\n\t\t}\n\t}\n\n\t&__image {\n\t\tmax-width: 100%;\n\t\tbackground-color: var(--color-main-background);\n\n\t\tobject-fit: cover;\n\t}\n\n\t// Failed preview, fallback to mime icon\n\t&__preview--failed &__image {\n\t\twidth: calc(var(--margin) * 8);\n\t\t// Center mime icon\n\t\tmargin: auto;\n\t\tbackground-color: transparent !important;\n\n\t\tobject-fit: initial;\n\t}\n\n\t&__title {\n\t\t// also count preview border\n\t\tmax-width: calc(var(--width) + 2 * 2px);\n\t\tpadding: var(--margin);\n\t}\n}\n\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},30362(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".templates-picker__form[data-v-d063f2b2]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-d063f2b2]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-d063f2b2]{display:grid;gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-d063f2b2]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0deg, var(--gradient-main-background))}.templates-picker__buttons button[data-v-d063f2b2],.templates-picker__buttons input[type=submit][data-v-d063f2b2]{height:44px}.templates-picker[data-v-d063f2b2] .modal-container{position:relative}.templates-picker__loading[data-v-d063f2b2]{position:absolute;top:0;inset-inline-start:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}","",{version:3,sources:["webpack://./apps/files/src/views/TemplatePicker.vue"],names:[],mappings:"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,yBAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,uEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,oBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA",sourcesContent:["\n.templates-picker {\n\t&__form {\n\t\tpadding: calc(var(--margin) * 2);\n\t\t// Will be handled by the buttons\n\t\tpadding-bottom: 0;\n\n\t\th2 {\n\t\t\ttext-align: center;\n\t\t\tfont-weight: bold;\n\t\t\tmargin: var(--margin) 0 calc(var(--margin) * 2);\n\t\t}\n\t}\n\n\t&__list {\n\t\tdisplay: grid;\n\t\tgap: calc(var(--margin) * 2);\n\t\tgrid-auto-columns: 1fr;\n\t\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\n\t\tmax-width: calc(var(--fullwidth) * 6);\n\t\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\n\t\t// Make sure all rows are the same height\n\t\tgrid-auto-rows: 1fr;\n\t\t// Center the columns set\n\t\tjustify-content: center;\n\t}\n\n\t&__buttons {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t\tpadding: calc(var(--margin) * 2) var(--margin);\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tbackground-image: linear-gradient(0deg, var(--gradient-main-background));\n\n\t\tbutton, input[type='submit'] {\n\t\t\theight: 44px;\n\t\t}\n\t}\n\n\t// Make sure we're relative for the loading emptycontent on top\n\t:deep(.modal-container) {\n\t\tposition: relative;\n\t}\n\n\t&__loading {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tinset-inline-start: 0;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmargin: 0;\n\t\tbackground-color: var(--color-main-background-translucent);\n\t}\n}\n\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},27497(e,t,i){i.r(t),i.d(t,{default:()=>ie});var a=i(21777),n=i(85168),l=i(61338),r=i(35810),s=i(77815),o=i(53334),d=i(63814),c=i(98469),p=i(43627),A=i(85471),m=i(48943),u=i(83947),h=i(74095),f=i(88289),C=i(32073);const v=(0,A.pM)({name:"TemplateCheckboxField",components:{NcCheckboxRadioSwitch:C.A},props:{field:{type:Object,default:()=>{}}},data(){return{value:this.field.checked??!1}},computed:{fieldLabel(){const e=this.field.name||this.field.alias;return e.charAt(0).toUpperCase()+e.slice(1)},fieldId(){return"checkbox-field"+this.field.index}},methods:{input(){this.$emit("input",{index:this.field.index,property:"checked",value:this.value})}}});var g=i(85072),b=i.n(g),_=i(97825),k=i.n(_),y=i(77659),w=i.n(y),x=i(55056),T=i.n(x),F=i(10540),P=i.n(F),E=i(41113),B=i.n(E),I=i(36209),S={};S.styleTagTransform=B(),S.setAttributes=T(),S.insert=w().bind(null,"head"),S.domAPI=k(),S.insertStyleElement=P(),b()(I.A,S),I.A&&I.A.locals&&I.A.locals;var $=i(14486);const j=(0,$.A)(v,function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"template-field__checkbox"},[t("NcCheckboxRadioSwitch",{attrs:{id:e.fieldId,type:"switch"},on:{"update:modelValue":e.input},model:{value:e.value,callback:function(t){e.value=t},expression:"value"}},[e._v("\n\t\t"+e._s(e.fieldLabel)+"\n\t")])],1)},[],!1,null,"70a7f597",null).exports;var D=i(82182);const N=(0,A.pM)({name:"TemplateRichTextField",components:{NcTextField:D.A},props:{field:{type:Object,default:()=>{}}},data:()=>({value:""}),computed:{fieldLabel(){const e=this.field.name||this.field.alias;return e.charAt(0).toUpperCase()+e.slice(1)},fieldId(){return"text-field"+this.field.index}},methods:{input(){this.$emit("input",{index:this.field.index,property:"content",value:this.value})}}});var W=i(59622),M={};M.styleTagTransform=B(),M.setAttributes=T(),M.insert=w().bind(null,"head"),M.domAPI=k(),M.insertStyleElement=P(),b()(W.A,M),W.A&&W.A.locals&&W.A.locals;const R=(0,$.A)(N,function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"template-field__text"},[t("label",{attrs:{for:e.fieldId}},[e._v("\n\t\t"+e._s(e.fieldLabel)+"\n\t")]),e._v(" "),t("NcTextField",{attrs:{id:e.fieldId,type:"text",label:e.fieldLabel,"label-outside":!0,placeholder:e.field.content},on:{input:e.input},model:{value:e.value,callback:function(t){e.value=t},expression:"value"}})],1)},[],!1,null,"9f5448c8",null).exports,U=(0,A.pM)({name:"TemplateFiller",components:{NcModal:u.A,NcButton:h.A,NcLoadingIcon:f.A,TemplateRichTextField:R,TemplateCheckboxField:j},props:{fields:{type:Array,default:()=>[]},onSubmit:{type:Function,default:async()=>{}}},data:()=>({localFields:{},loading:!1}),methods:{t:o.t,trackInput({index:e,property:t,value:i}){this.localFields[e]||(this.localFields[e]={}),this.localFields[e][t]=i},getFieldComponent:e=>`Template${e.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join("")}Field`,fieldHasLabel:e=>e.name||e.alias,async submit(){this.loading=!0,await this.onSubmit(this.localFields),this.$emit("close")}}});var L=i(53926),G={};G.styleTagTransform=B(),G.setAttributes=T(),G.insert=w().bind(null,"head"),G.domAPI=k(),G.insertStyleElement=P(),b()(L.A,G),L.A&&L.A.locals&&L.A.locals;const H=(0,$.A)(U,function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcModal",{attrs:{"label-id":"template-field-modal__label"}},[t("div",{staticClass:"template-field-modal__content"},[t("form",[t("h3",{attrs:{id:"template-field-modal__label"}},[e._v("\n\t\t\t\t"+e._s(e.t("files","Fill template fields"))+"\n\t\t\t")]),e._v(" "),e._l(e.fields,function(i){return t("div",{key:i.index},[e.fieldHasLabel(i)?t(e.getFieldComponent(i.type),{tag:"component",attrs:{field:i},on:{input:e.trackInput}}):e._e()],1)})],2)]),e._v(" "),t("div",{staticClass:"template-field-modal__buttons"},[e.loading?t("NcLoadingIcon",{attrs:{name:e.t("files","Submitting fields …")}}):e._e(),e._v(" "),t("NcButton",{attrs:{"aria-label":"Submit button",variant:"primary"},on:{click:e.submit}},[e._v("\n\t\t\t"+e._s(e.t("files","Submit"))+"\n\t\t")])],1)])},[],!1,null,"97ce63ca",null).exports;var O=i(71225),q=i(32505);const K={name:"TemplatePreview",inheritAttrs:!1,props:{basename:{type:String,required:!0},checked:{type:Boolean,default:!1},fileid:{type:[String,Number],required:!0},filename:{type:String,required:!0},previewUrl:{type:String,default:null},hasPreview:{type:Boolean,default:!0},mime:{type:String,required:!0},ratio:{type:Number,default:null}},data:()=>({failedPreview:!1}),computed:{nameWithoutExt(){return this.basename.indexOf(".")>-1?this.basename.split(".").slice(0,-1).join("."):this.basename},id(){return`template-picker-${this.fileid}`},realPreviewUrl(){return this.failedPreview&&this.mimeIcon?this.mimeIcon:this.previewUrl?this.previewUrl:(0,q.f)()?(0,d.Jv)(`/apps/files_sharing/publicpreview/${(0,q.G)()}?fileId=${this.fileid}&file=${(0,O.O0)(this.filename)}&x=256&y=256&a=1`):(0,d.Jv)(`/core/preview?fileId=${this.fileid}&x=256&y=256&a=1`)},mimeIcon(){return OC.MimeType.getIconUrl(this.mime)}},methods:{onCheck(){this.$emit("check",this.fileid)},onFailure(){this.failedPreview=!0},focus(){this.$refs.input?.focus()},onClick(){this.checked&&this.$emit("confirm-click",this.fileid)}}};var Y=i(80936),Q={};Q.styleTagTransform=B(),Q.setAttributes=T(),Q.insert=w().bind(null,"head"),Q.domAPI=k(),Q.insertStyleElement=P(),b()(Y.A,Q),Y.A&&Y.A.locals&&Y.A.locals;const z=(0,$.A)(K,function(){var e=this,t=e._self._c;return t("li",{staticClass:"template-picker__item"},[t("input",{ref:"input",staticClass:"radio",attrs:{id:e.id,type:"radio",name:"template-picker"},domProps:{checked:e.checked},on:{change:e.onCheck}}),e._v(" "),t("label",{staticClass:"template-picker__label",attrs:{for:e.id},on:{click:e.onClick}},[t("div",{staticClass:"template-picker__preview",class:e.failedPreview?"template-picker__preview--failed":""},[t("img",{staticClass:"template-picker__image",attrs:{src:e.realPreviewUrl,alt:"",draggable:"false"},on:{error:e.onFailure}})]),e._v(" "),t("span",{staticClass:"template-picker__title"},[e._v("\n\t\t\t"+e._s(e.nameWithoutExt)+"\n\t\t")])])])},[],!1,null,"9ac54e24",null).exports;var J=i(44368),V=i(64630);const Z=(0,A.pM)({name:"TemplatePicker",components:{NcEmptyContent:m.A,NcModal:u.A,TemplatePreview:z},props:{parent:{type:Object,default:()=>null}},data:()=>({checked:-1,loading:!1,name:null,opened:!1,provider:null}),computed:{extension(){return(0,p.extname)(this.name??"")},nameWithoutExt(){return this.extension?this.name.slice(0,0-this.extension.length):this.name},emptyTemplate(){return{basename:(0,o.Tl)("files","Blank"),fileid:-1,filename:(0,o.Tl)("files","Blank"),hasPreview:!1,mime:this.provider?.mimetypes[0]||this.provider?.mimetypes}},selectedTemplate(){return this.provider?this.provider.templates.find(e=>e.fileid===this.checked):null},style(){if(!this.provider)return{};const e=(this.provider.ratio?this.provider.ratio:1.77)>1?240:160;return{"--margin":"8px","--width":e+"px","--border":"2px","--fullwidth":e+16+4+"px","--height":this.provider.ratio?Math.round(e/this.provider.ratio)+"px":null}}},methods:{t:o.Tl,async open(e,t){if(this.checked=this.emptyTemplate.fileid,this.name=e,this.provider=t,null===(0,a.HW)())return void this.onSubmit();const i=(await async function(){return(await J.Ay.get((0,d.KT)("apps/files/api/v1/templates"))).data.ocs.data}()).find(e=>e.app===t.app&&e.label===t.label);if(null===i)throw new Error("Failed to match provider in results");this.provider=i,0!==i.templates.length?(this.opened=!0,this.$nextTick(()=>{this.$refs.emptyTemplatePreview?.focus()})):this.onSubmit()},close(){this.checked=this.emptyTemplate.fileid,this.loading=!1,this.name=null,this.opened=!1,this.provider=null},onCheck(e){this.checked=e},onConfirmClick(e){e===this.checked&&this.onSubmit()},async createFile(e=[]){const t=new URL(window.location.href).searchParams.get("dir")||"/";if(this.nameWithoutExt===this.name&&(V.v.warn("Fixed invalid filename",{name:this.name,extension:this.provider?.extension}),this.name=`${this.name}${this.provider?.extension??""}`),null===(0,a.HW)()){const e=(0,s.KU)(),i=(0,p.join)((0,s.ei)(),t,this.name??"");await e.putFileContents(i,"");const a=await e.stat(i,{data:(0,s.aN)(),details:!0});V.v.debug("Created new file",{fileInfo:a.data});const n=(0,s.pO)(a.data);this.handleFileCreation(n)}else try{const i=await async function(e,t,i,a){return(await J.Ay.post((0,d.KT)("apps/files/api/v1/templates/create"),{filePath:e,templatePath:t,templateType:i,templateFields:a})).data.ocs.data}((0,p.normalize)(`${t}/${this.name}`),this.selectedTemplate?.filename??"",this.selectedTemplate?.templateType??"",e);V.v.debug("Created new file",{fileInfo:i});const n=(0,a.HW)()?.uid||null,l=new r.ZH({id:i.fileid,source:(0,d.dC)((0,p.join)(`dav/files/${n}`,i.filename)),root:`/files/${n}`,mime:i.mime,mtime:new Date(1e3*i.lastmod),owner:n,size:i.size,permissions:i.permissions,attributes:{"mount-type":this.parent?.attributes?.["mount-type"],"owner-id":this.parent?.attributes?.["owner-id"],"owner-display-name":this.parent?.attributes?.["owner-display-name"],...i,"has-preview":i.hasPreview}});this.handleFileCreation(l),this.close()}catch(e){V.v.error("Error while creating the new file from template",{error:e}),(0,n.Qg)((0,o.Tl)("files","Unable to create new file from template"))}finally{this.loading=!1}},handleFileCreation(e){(0,l.Ic)("files:node:created",e),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:e.dirname,openfile:"true"})},async onSubmit(){if(null===(0,a.HW)())return this.loading=!0,this.createFile();const e=this.selectedTemplate?.fileid;let t=[];e&&e!==this.emptyTemplate.fileid&&(t=await async function(e){return(await J.Ay.get((0,d.KT)(`apps/files/api/v1/templates/fields/${e}`))).data.ocs.data}(e)),t.length>0?(0,c.S)(H,{fields:t,onSubmit:this.createFile}):(this.loading=!0,await this.createFile())}}});var X=i(30362),ee={};ee.styleTagTransform=B(),ee.setAttributes=T(),ee.insert=w().bind(null,"head"),ee.domAPI=k(),ee.insertStyleElement=P(),b()(X.A,ee),X.A&&X.A.locals&&X.A.locals;var te=(0,$.A)(Z,function(){var e=this,t=e._self._c;return e._self._setupProxy,e.opened?t("NcModal",{staticClass:"templates-picker",attrs:{"clear-view-delay":-1,size:"large"},on:{close:e.close}},[t("form",{staticClass:"templates-picker__form",style:e.style,on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onSubmit.apply(null,arguments)}}},[t("h2",[e._v(e._s(e.t("files","Pick a template for {name}",{name:e.nameWithoutExt})))]),e._v(" "),t("ul",{staticClass:"templates-picker__list"},[t("TemplatePreview",e._b({ref:"emptyTemplatePreview",attrs:{checked:e.checked===e.emptyTemplate.fileid},on:{"confirm-click":e.onConfirmClick,check:e.onCheck}},"TemplatePreview",e.emptyTemplate,!1)),e._v(" "),e._l(e.provider.templates,function(i){return t("TemplatePreview",e._b({key:i.fileid,attrs:{checked:e.checked===i.fileid,ratio:e.provider.ratio},on:{"confirm-click":e.onConfirmClick,check:e.onCheck}},"TemplatePreview",i,!1))})],2),e._v(" "),t("div",{staticClass:"templates-picker__buttons"},[t("input",{staticClass:"primary",attrs:{type:"submit","aria-label":e.t("files","Create a new file with the selected template")},domProps:{value:e.t("files","Create")}})])]),e._v(" "),e.loading?t("NcEmptyContent",{staticClass:"templates-picker__loading",attrs:{icon:"icon-loading"}},[e._v("\n\t\t"+e._s(e.t("files","Creating file"))+"\n\t")]):e._e()],1):e._e()},[],!1,null,"d063f2b2",null);const ie=te.exports}}]); -//# sourceMappingURL=7497-7497.js.map?v=ce47b2e8d39d4cea67f0 \ No newline at end of file +"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[6163],{28813(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".template-field-modal__content[data-v-97ce63ca]{padding:calc(var(--default-grid-baseline)*4)}.template-field-modal__content h3[data-v-97ce63ca]{text-align:center}.template-field-modal__buttons[data-v-97ce63ca]{display:flex;justify-content:flex-end;gap:var(--default-grid-baseline);margin:calc(var(--default-grid-baseline)*4);margin-top:0}","",{version:3,sources:["webpack://./apps/files/src/components/TemplateFiller.vue"],names:[],mappings:"AAGA,gDACC,4CAHc,CAKd,mDACC,iBAAA,CAIF,gDACC,YAAA,CACA,wBAAA,CACA,gCAAA,CACA,2CAdc,CAed,YAAA",sourcesContent:["\n$modal-margin: calc(var(--default-grid-baseline) * 4);\n\n.template-field-modal__content {\n\tpadding: $modal-margin;\n\n\th3 {\n\t\ttext-align: center;\n\t}\n}\n\n.template-field-modal__buttons {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\tgap: var(--default-grid-baseline);\n\tmargin: $modal-margin;\n\tmargin-top: 0;\n}\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},70526(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".template-field__checkbox[data-v-70a7f597]{margin:20px 0}","",{version:3,sources:["webpack://./apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue"],names:[],mappings:"AACA,2CACE,aAAA",sourcesContent:["\n.template-field__checkbox {\n margin: 20px 0;\n}\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},71901(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".template-field__text[data-v-9f5448c8]{margin:20px 0}.template-field__text label[data-v-9f5448c8]{font-weight:bold}","",{version:3,sources:["webpack://./apps/files/src/components/TemplateFiller/TemplateRichTextField.vue"],names:[],mappings:"AACA,uCACC,aAAA,CAEA,6CACC,gBAAA",sourcesContent:["\n.template-field__text {\n\tmargin: 20px 0;\n\n\tlabel {\n\t\tfont-weight: bold;\n\t}\n}\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},86830(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".template-picker__item[data-v-9ac54e24]{display:flex}.template-picker__label[data-v-9ac54e24]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-9ac54e24],.template-picker__label *[data-v-9ac54e24]{cursor:pointer;user-select:none}.template-picker__label[data-v-9ac54e24]::before{display:none !important}.template-picker__preview[data-v-9ac54e24]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-9ac54e24]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-9ac54e24]{display:flex}.template-picker__image[data-v-9ac54e24]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-9ac54e24]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-9ac54e24]{max-width:calc(var(--width) + 4px);padding:var(--margin)}","",{version:3,sources:["webpack://./apps/files/src/components/TemplatePreview.vue"],names:[],mappings:"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCAEC,kCAAA,CACA,qBAAA",sourcesContent:["\n\n.template-picker {\n\t&__item {\n\t\tdisplay: flex;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\t// Align in the middle of the grid\n\t\talign-items: center;\n\t\tflex: 1 1;\n\t\tflex-direction: column;\n\n\t\t&, * {\n\t\t\tcursor: pointer;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&::before {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n\n\t&__preview {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t\t// Stretch so all entries are the same width\n\t\tflex: 1 1;\n\t\twidth: var(--width);\n\t\tmin-height: var(--height);\n\t\tmax-height: var(--height);\n\t\tpadding: 0;\n\t\tborder: var(--border) solid var(--color-border);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tinput:checked + label > & {\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\n\t\t&--failed {\n\t\t\t// Make sure to properly center fallback icon\n\t\t\tdisplay: flex;\n\t\t}\n\t}\n\n\t&__image {\n\t\tmax-width: 100%;\n\t\tbackground-color: var(--color-main-background);\n\n\t\tobject-fit: cover;\n\t}\n\n\t// Failed preview, fallback to mime icon\n\t&__preview--failed &__image {\n\t\twidth: calc(var(--margin) * 8);\n\t\t// Center mime icon\n\t\tmargin: auto;\n\t\tbackground-color: transparent !important;\n\n\t\tobject-fit: initial;\n\t}\n\n\t&__title {\n\t\t// also count preview border\n\t\tmax-width: calc(var(--width) + 2 * 2px);\n\t\tpadding: var(--margin);\n\t}\n}\n\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},92087(e,t,i){var a=i(71354),n=i.n(a),l=i(76314),r=i.n(l)()(n());r.push([e.id,".templates-picker__form[data-v-d063f2b2]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-d063f2b2]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-d063f2b2]{display:grid;gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-d063f2b2]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0deg, var(--gradient-main-background))}.templates-picker__buttons button[data-v-d063f2b2],.templates-picker__buttons input[type=submit][data-v-d063f2b2]{height:44px}.templates-picker[data-v-d063f2b2] .modal-container{position:relative}.templates-picker__loading[data-v-d063f2b2]{position:absolute;top:0;inset-inline-start:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}","",{version:3,sources:["webpack://./apps/files/src/views/TemplatePicker.vue"],names:[],mappings:"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,yBAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,uEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,oBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA",sourcesContent:["\n.templates-picker {\n\t&__form {\n\t\tpadding: calc(var(--margin) * 2);\n\t\t// Will be handled by the buttons\n\t\tpadding-bottom: 0;\n\n\t\th2 {\n\t\t\ttext-align: center;\n\t\t\tfont-weight: bold;\n\t\t\tmargin: var(--margin) 0 calc(var(--margin) * 2);\n\t\t}\n\t}\n\n\t&__list {\n\t\tdisplay: grid;\n\t\tgap: calc(var(--margin) * 2);\n\t\tgrid-auto-columns: 1fr;\n\t\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\n\t\tmax-width: calc(var(--fullwidth) * 6);\n\t\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\n\t\t// Make sure all rows are the same height\n\t\tgrid-auto-rows: 1fr;\n\t\t// Center the columns set\n\t\tjustify-content: center;\n\t}\n\n\t&__buttons {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t\tpadding: calc(var(--margin) * 2) var(--margin);\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tbackground-image: linear-gradient(0deg, var(--gradient-main-background));\n\n\t\tbutton, input[type='submit'] {\n\t\t\theight: 44px;\n\t\t}\n\t}\n\n\t// Make sure we're relative for the loading emptycontent on top\n\t:deep(.modal-container) {\n\t\tposition: relative;\n\t}\n\n\t&__loading {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tinset-inline-start: 0;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmargin: 0;\n\t\tbackground-color: var(--color-main-background-translucent);\n\t}\n}\n\n"],sourceRoot:""}]);const s=r;i.d(t,["A",0,s])},16163(e,t,i){i.r(t),i.d(t,{default:()=>ie});var a=i(21777),n=i(85168),l=i(61338),r=i(35810),s=i(77815),o=i(53334),d=i(63814),c=i(98469),p=i(43627),A=i(85471),m=i(48943),u=i(83947),h=i(74095),f=i(88289),C=i(32073);const v=(0,A.pM)({name:"TemplateCheckboxField",components:{NcCheckboxRadioSwitch:C.A},props:{field:{type:Object,default:()=>{}}},data(){return{value:this.field.checked??!1}},computed:{fieldLabel(){const e=this.field.name||this.field.alias;return e.charAt(0).toUpperCase()+e.slice(1)},fieldId(){return"checkbox-field"+this.field.index}},methods:{input(){this.$emit("input",{index:this.field.index,property:"checked",value:this.value})}}});var g=i(85072),b=i.n(g),_=i(97825),k=i.n(_),y=i(77659),w=i.n(y),x=i(55056),T=i.n(x),F=i(10540),P=i.n(F),E=i(41113),B=i.n(E),I=i(70526),S={};S.styleTagTransform=B(),S.setAttributes=T(),S.insert=w().bind(null,"head"),S.domAPI=k(),S.insertStyleElement=P(),b()(I.A,S),I.A&&I.A.locals&&I.A.locals;var $=i(14486);const j=(0,$.A)(v,function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"template-field__checkbox"},[t("NcCheckboxRadioSwitch",{attrs:{id:e.fieldId,type:"switch"},on:{"update:modelValue":e.input},model:{value:e.value,callback:function(t){e.value=t},expression:"value"}},[e._v("\n\t\t"+e._s(e.fieldLabel)+"\n\t")])],1)},[],!1,null,"70a7f597",null).exports;var D=i(82182);const N=(0,A.pM)({name:"TemplateRichTextField",components:{NcTextField:D.A},props:{field:{type:Object,default:()=>{}}},data:()=>({value:""}),computed:{fieldLabel(){const e=this.field.name||this.field.alias;return e.charAt(0).toUpperCase()+e.slice(1)},fieldId(){return"text-field"+this.field.index}},methods:{input(){this.$emit("input",{index:this.field.index,property:"content",value:this.value})}}});var W=i(71901),M={};M.styleTagTransform=B(),M.setAttributes=T(),M.insert=w().bind(null,"head"),M.domAPI=k(),M.insertStyleElement=P(),b()(W.A,M),W.A&&W.A.locals&&W.A.locals;const R=(0,$.A)(N,function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"template-field__text"},[t("label",{attrs:{for:e.fieldId}},[e._v("\n\t\t"+e._s(e.fieldLabel)+"\n\t")]),e._v(" "),t("NcTextField",{attrs:{id:e.fieldId,type:"text",label:e.fieldLabel,"label-outside":!0,placeholder:e.field.content},on:{input:e.input},model:{value:e.value,callback:function(t){e.value=t},expression:"value"}})],1)},[],!1,null,"9f5448c8",null).exports,U=(0,A.pM)({name:"TemplateFiller",components:{NcModal:u.A,NcButton:h.A,NcLoadingIcon:f.A,TemplateRichTextField:R,TemplateCheckboxField:j},props:{fields:{type:Array,default:()=>[]},onSubmit:{type:Function,default:async()=>{}}},data:()=>({localFields:{},loading:!1}),methods:{t:o.t,trackInput({index:e,property:t,value:i}){this.localFields[e]||(this.localFields[e]={}),this.localFields[e][t]=i},getFieldComponent:e=>`Template${e.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join("")}Field`,fieldHasLabel:e=>e.name||e.alias,async submit(){this.loading=!0,await this.onSubmit(this.localFields),this.$emit("close")}}});var L=i(28813),G={};G.styleTagTransform=B(),G.setAttributes=T(),G.insert=w().bind(null,"head"),G.domAPI=k(),G.insertStyleElement=P(),b()(L.A,G),L.A&&L.A.locals&&L.A.locals;const H=(0,$.A)(U,function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcModal",{attrs:{"label-id":"template-field-modal__label"}},[t("div",{staticClass:"template-field-modal__content"},[t("form",[t("h3",{attrs:{id:"template-field-modal__label"}},[e._v("\n\t\t\t\t"+e._s(e.t("files","Fill template fields"))+"\n\t\t\t")]),e._v(" "),e._l(e.fields,function(i){return t("div",{key:i.index},[e.fieldHasLabel(i)?t(e.getFieldComponent(i.type),{tag:"component",attrs:{field:i},on:{input:e.trackInput}}):e._e()],1)})],2)]),e._v(" "),t("div",{staticClass:"template-field-modal__buttons"},[e.loading?t("NcLoadingIcon",{attrs:{name:e.t("files","Submitting fields …")}}):e._e(),e._v(" "),t("NcButton",{attrs:{"aria-label":"Submit button",variant:"primary"},on:{click:e.submit}},[e._v("\n\t\t\t"+e._s(e.t("files","Submit"))+"\n\t\t")])],1)])},[],!1,null,"97ce63ca",null).exports;var O=i(71225),q=i(32505);const K={name:"TemplatePreview",inheritAttrs:!1,props:{basename:{type:String,required:!0},checked:{type:Boolean,default:!1},fileid:{type:[String,Number],required:!0},filename:{type:String,required:!0},previewUrl:{type:String,default:null},hasPreview:{type:Boolean,default:!0},mime:{type:String,required:!0},ratio:{type:Number,default:null}},data:()=>({failedPreview:!1}),computed:{nameWithoutExt(){return this.basename.indexOf(".")>-1?this.basename.split(".").slice(0,-1).join("."):this.basename},id(){return`template-picker-${this.fileid}`},realPreviewUrl(){return this.failedPreview&&this.mimeIcon?this.mimeIcon:this.previewUrl?this.previewUrl:(0,q.f)()?(0,d.Jv)(`/apps/files_sharing/publicpreview/${(0,q.G)()}?fileId=${this.fileid}&file=${(0,O.O0)(this.filename)}&x=256&y=256&a=1`):(0,d.Jv)(`/core/preview?fileId=${this.fileid}&x=256&y=256&a=1`)},mimeIcon(){return OC.MimeType.getIconUrl(this.mime)}},methods:{onCheck(){this.$emit("check",this.fileid)},onFailure(){this.failedPreview=!0},focus(){this.$refs.input?.focus()},onClick(){this.checked&&this.$emit("confirm-click",this.fileid)}}};var Y=i(86830),Q={};Q.styleTagTransform=B(),Q.setAttributes=T(),Q.insert=w().bind(null,"head"),Q.domAPI=k(),Q.insertStyleElement=P(),b()(Y.A,Q),Y.A&&Y.A.locals&&Y.A.locals;const z=(0,$.A)(K,function(){var e=this,t=e._self._c;return t("li",{staticClass:"template-picker__item"},[t("input",{ref:"input",staticClass:"radio",attrs:{id:e.id,type:"radio",name:"template-picker"},domProps:{checked:e.checked},on:{change:e.onCheck}}),e._v(" "),t("label",{staticClass:"template-picker__label",attrs:{for:e.id},on:{click:e.onClick}},[t("div",{staticClass:"template-picker__preview",class:e.failedPreview?"template-picker__preview--failed":""},[t("img",{staticClass:"template-picker__image",attrs:{src:e.realPreviewUrl,alt:"",draggable:"false"},on:{error:e.onFailure}})]),e._v(" "),t("span",{staticClass:"template-picker__title"},[e._v("\n\t\t\t"+e._s(e.nameWithoutExt)+"\n\t\t")])])])},[],!1,null,"9ac54e24",null).exports;var J=i(44368),V=i(64630);const Z=(0,A.pM)({name:"TemplatePicker",components:{NcEmptyContent:m.A,NcModal:u.A,TemplatePreview:z},props:{parent:{type:Object,default:()=>null}},data:()=>({checked:-1,loading:!1,name:null,opened:!1,provider:null}),computed:{extension(){return(0,p.extname)(this.name??"")},nameWithoutExt(){return this.extension?this.name.slice(0,0-this.extension.length):this.name},emptyTemplate(){return{basename:(0,o.Tl)("files","Blank"),fileid:-1,filename:(0,o.Tl)("files","Blank"),hasPreview:!1,mime:this.provider?.mimetypes[0]||this.provider?.mimetypes}},selectedTemplate(){return this.provider?this.provider.templates.find(e=>e.fileid===this.checked):null},style(){if(!this.provider)return{};const e=(this.provider.ratio?this.provider.ratio:1.77)>1?240:160;return{"--margin":"8px","--width":e+"px","--border":"2px","--fullwidth":e+16+4+"px","--height":this.provider.ratio?Math.round(e/this.provider.ratio)+"px":null}}},methods:{t:o.Tl,async open(e,t){if(this.checked=this.emptyTemplate.fileid,this.name=e,this.provider=t,null===(0,a.HW)())return void this.onSubmit();const i=(await async function(){return(await J.Ay.get((0,d.KT)("apps/files/api/v1/templates"))).data.ocs.data}()).find(e=>e.app===t.app&&e.label===t.label);if(null===i)throw new Error("Failed to match provider in results");this.provider=i,0!==i.templates.length?(this.opened=!0,this.$nextTick(()=>{this.$refs.emptyTemplatePreview?.focus()})):this.onSubmit()},close(){this.checked=this.emptyTemplate.fileid,this.loading=!1,this.name=null,this.opened=!1,this.provider=null},onCheck(e){this.checked=e},onConfirmClick(e){e===this.checked&&this.onSubmit()},async createFile(e=[]){const t=new URL(window.location.href).searchParams.get("dir")||"/";if(this.nameWithoutExt===this.name&&(V.v.warn("Fixed invalid filename",{name:this.name,extension:this.provider?.extension}),this.name=`${this.name}${this.provider?.extension??""}`),null===(0,a.HW)()){const e=(0,s.KU)(),i=(0,p.join)((0,s.ei)(),t,this.name??"");await e.putFileContents(i,"");const a=await e.stat(i,{data:(0,s.aN)(),details:!0});V.v.debug("Created new file",{fileInfo:a.data});const n=(0,s.pO)(a.data);this.handleFileCreation(n)}else try{const i=await async function(e,t,i,a){return(await J.Ay.post((0,d.KT)("apps/files/api/v1/templates/create"),{filePath:e,templatePath:t,templateType:i,templateFields:a})).data.ocs.data}((0,p.normalize)(`${t}/${this.name}`),this.selectedTemplate?.filename??"",this.selectedTemplate?.templateType??"",e);V.v.debug("Created new file",{fileInfo:i});const n=(0,a.HW)()?.uid||null,l=new r.ZH({id:i.fileid,source:(0,d.dC)((0,p.join)(`dav/files/${n}`,i.filename)),root:`/files/${n}`,mime:i.mime,mtime:new Date(1e3*i.lastmod),owner:n,size:i.size,permissions:i.permissions,attributes:{"mount-type":this.parent?.attributes?.["mount-type"],"owner-id":this.parent?.attributes?.["owner-id"],"owner-display-name":this.parent?.attributes?.["owner-display-name"],...i,"has-preview":i.hasPreview}});this.handleFileCreation(l),this.close()}catch(e){V.v.error("Error while creating the new file from template",{error:e}),(0,n.Qg)((0,o.Tl)("files","Unable to create new file from template"))}finally{this.loading=!1}},handleFileCreation(e){(0,l.Ic)("files:node:created",e),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:e.dirname,openfile:"true"})},async onSubmit(){if(null===(0,a.HW)())return this.loading=!0,this.createFile();const e=this.selectedTemplate?.fileid;let t=[];e&&e!==this.emptyTemplate.fileid&&(t=await async function(e){return(await J.Ay.get((0,d.KT)(`apps/files/api/v1/templates/fields/${e}`))).data.ocs.data}(e)),t.length>0?(0,c.S)(H,{fields:t,onSubmit:this.createFile}):(this.loading=!0,await this.createFile())}}});var X=i(92087),ee={};ee.styleTagTransform=B(),ee.setAttributes=T(),ee.insert=w().bind(null,"head"),ee.domAPI=k(),ee.insertStyleElement=P(),b()(X.A,ee),X.A&&X.A.locals&&X.A.locals;var te=(0,$.A)(Z,function(){var e=this,t=e._self._c;return e._self._setupProxy,e.opened?t("NcModal",{staticClass:"templates-picker",attrs:{"clear-view-delay":-1,size:"large"},on:{close:e.close}},[t("form",{staticClass:"templates-picker__form",style:e.style,on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onSubmit.apply(null,arguments)}}},[t("h2",[e._v(e._s(e.t("files","Pick a template for {name}",{name:e.nameWithoutExt})))]),e._v(" "),t("ul",{staticClass:"templates-picker__list"},[t("TemplatePreview",e._b({ref:"emptyTemplatePreview",attrs:{checked:e.checked===e.emptyTemplate.fileid},on:{"confirm-click":e.onConfirmClick,check:e.onCheck}},"TemplatePreview",e.emptyTemplate,!1)),e._v(" "),e._l(e.provider.templates,function(i){return t("TemplatePreview",e._b({key:i.fileid,attrs:{checked:e.checked===i.fileid,ratio:e.provider.ratio},on:{"confirm-click":e.onConfirmClick,check:e.onCheck}},"TemplatePreview",i,!1))})],2),e._v(" "),t("div",{staticClass:"templates-picker__buttons"},[t("input",{staticClass:"primary",attrs:{type:"submit","aria-label":e.t("files","Create a new file with the selected template")},domProps:{value:e.t("files","Create")}})])]),e._v(" "),e.loading?t("NcEmptyContent",{staticClass:"templates-picker__loading",attrs:{icon:"icon-loading"}},[e._v("\n\t\t"+e._s(e.t("files","Creating file"))+"\n\t")]):e._e()],1):e._e()},[],!1,null,"d063f2b2",null);const ie=te.exports}}]); +//# sourceMappingURL=6163-6163.js.map?v=7323a129d9888d4cdda0 \ No newline at end of file diff --git a/dist/7497-7497.js.license b/dist/6163-6163.js.license similarity index 100% rename from dist/7497-7497.js.license rename to dist/6163-6163.js.license diff --git a/dist/7497-7497.js.map b/dist/6163-6163.js.map similarity index 50% rename from dist/7497-7497.js.map rename to dist/6163-6163.js.map index 61e9b491d0d02..90fb1252f67eb 100644 --- a/dist/7497-7497.js.map +++ b/dist/6163-6163.js.map @@ -1 +1 @@ -{"version":3,"file":"7497-7497.js?v=29dd3a4f15d1ee858225","mappings":"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","sources":["webpack:///nextcloud/apps/files/src/components/TemplateFiller.vue?vue&type=style&index=0&id=97ce63ca&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue?vue&type=style&index=0&id=70a7f597&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateRichTextField.vue?vue&type=style&index=0&id=9f5448c8&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=9ac54e24&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=d063f2b2&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue?d368","webpack://nextcloud/./apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue?ad4c","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateRichTextField.vue","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateRichTextField.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/TemplateFiller/TemplateRichTextField.vue?41fb","webpack://nextcloud/./apps/files/src/components/TemplateFiller/TemplateRichTextField.vue?cea0","webpack:///nextcloud/apps/files/src/components/TemplateFiller.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/TemplateFiller.vue","webpack://nextcloud/./apps/files/src/components/TemplateFiller.vue?5e31","webpack://nextcloud/./apps/files/src/components/TemplateFiller.vue?6295","webpack://nextcloud/./apps/files/src/components/TemplateFiller.vue?4b21","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?c414","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?c3e8","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?81db","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/Templates.js","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?425d","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?afd8"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.template-field-modal__content[data-v-97ce63ca]{padding:calc(var(--default-grid-baseline)*4)}.template-field-modal__content h3[data-v-97ce63ca]{text-align:center}.template-field-modal__buttons[data-v-97ce63ca]{display:flex;justify-content:flex-end;gap:var(--default-grid-baseline);margin:calc(var(--default-grid-baseline)*4);margin-top:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplateFiller.vue\"],\"names\":[],\"mappings\":\"AAGA,gDACC,4CAHc,CAKd,mDACC,iBAAA,CAIF,gDACC,YAAA,CACA,wBAAA,CACA,gCAAA,CACA,2CAdc,CAed,YAAA\",\"sourcesContent\":[\"\\n$modal-margin: calc(var(--default-grid-baseline) * 4);\\n\\n.template-field-modal__content {\\n\\tpadding: $modal-margin;\\n\\n\\th3 {\\n\\t\\ttext-align: center;\\n\\t}\\n}\\n\\n.template-field-modal__buttons {\\n\\tdisplay: flex;\\n\\tjustify-content: flex-end;\\n\\tgap: var(--default-grid-baseline);\\n\\tmargin: $modal-margin;\\n\\tmargin-top: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.template-field__checkbox[data-v-70a7f597]{margin:20px 0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue\"],\"names\":[],\"mappings\":\"AACA,2CACE,aAAA\",\"sourcesContent\":[\"\\n.template-field__checkbox {\\n margin: 20px 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.template-field__text[data-v-9f5448c8]{margin:20px 0}.template-field__text label[data-v-9f5448c8]{font-weight:bold}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplateFiller/TemplateRichTextField.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,aAAA,CAEA,6CACC,gBAAA\",\"sourcesContent\":[\"\\n.template-field__text {\\n\\tmargin: 20px 0;\\n\\n\\tlabel {\\n\\t\\tfont-weight: bold;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.template-picker__item[data-v-9ac54e24]{display:flex}.template-picker__label[data-v-9ac54e24]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-9ac54e24],.template-picker__label *[data-v-9ac54e24]{cursor:pointer;user-select:none}.template-picker__label[data-v-9ac54e24]::before{display:none !important}.template-picker__preview[data-v-9ac54e24]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-9ac54e24]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-9ac54e24]{display:flex}.template-picker__image[data-v-9ac54e24]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-9ac54e24]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-9ac54e24]{max-width:calc(var(--width) + 4px);padding:var(--margin)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplatePreview.vue\"],\"names\":[],\"mappings\":\"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCAEC,kCAAA,CACA,qBAAA\",\"sourcesContent\":[\"\\n\\n.template-picker {\\n\\t&__item {\\n\\t\\tdisplay: flex;\\n\\t}\\n\\n\\t&__label {\\n\\t\\tdisplay: flex;\\n\\t\\t// Align in the middle of the grid\\n\\t\\talign-items: center;\\n\\t\\tflex: 1 1;\\n\\t\\tflex-direction: column;\\n\\n\\t\\t&, * {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&::before {\\n\\t\\t\\tdisplay: none !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&__preview {\\n\\t\\tdisplay: block;\\n\\t\\toverflow: hidden;\\n\\t\\t// Stretch so all entries are the same width\\n\\t\\tflex: 1 1;\\n\\t\\twidth: var(--width);\\n\\t\\tmin-height: var(--height);\\n\\t\\tmax-height: var(--height);\\n\\t\\tpadding: 0;\\n\\t\\tborder: var(--border) solid var(--color-border);\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\n\\t\\tinput:checked + label > & {\\n\\t\\t\\tborder-color: var(--color-primary-element);\\n\\t\\t}\\n\\n\\t\\t&--failed {\\n\\t\\t\\t// Make sure to properly center fallback icon\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\t}\\n\\n\\t&__image {\\n\\t\\tmax-width: 100%;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\tobject-fit: cover;\\n\\t}\\n\\n\\t// Failed preview, fallback to mime icon\\n\\t&__preview--failed &__image {\\n\\t\\twidth: calc(var(--margin) * 8);\\n\\t\\t// Center mime icon\\n\\t\\tmargin: auto;\\n\\t\\tbackground-color: transparent !important;\\n\\n\\t\\tobject-fit: initial;\\n\\t}\\n\\n\\t&__title {\\n\\t\\t// also count preview border\\n\\t\\tmax-width: calc(var(--width) + 2 * 2px);\\n\\t\\tpadding: var(--margin);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.templates-picker__form[data-v-d063f2b2]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-d063f2b2]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-d063f2b2]{display:grid;gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-d063f2b2]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0deg, var(--gradient-main-background))}.templates-picker__buttons button[data-v-d063f2b2],.templates-picker__buttons input[type=submit][data-v-d063f2b2]{height:44px}.templates-picker[data-v-d063f2b2] .modal-container{position:relative}.templates-picker__loading[data-v-d063f2b2]{position:absolute;top:0;inset-inline-start:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/TemplatePicker.vue\"],\"names\":[],\"mappings\":\"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,yBAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,uEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,oBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA\",\"sourcesContent\":[\"\\n.templates-picker {\\n\\t&__form {\\n\\t\\tpadding: calc(var(--margin) * 2);\\n\\t\\t// Will be handled by the buttons\\n\\t\\tpadding-bottom: 0;\\n\\n\\t\\th2 {\\n\\t\\t\\ttext-align: center;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tmargin: var(--margin) 0 calc(var(--margin) * 2);\\n\\t\\t}\\n\\t}\\n\\n\\t&__list {\\n\\t\\tdisplay: grid;\\n\\t\\tgap: calc(var(--margin) * 2);\\n\\t\\tgrid-auto-columns: 1fr;\\n\\t\\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\\n\\t\\tmax-width: calc(var(--fullwidth) * 6);\\n\\t\\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\\n\\t\\t// Make sure all rows are the same height\\n\\t\\tgrid-auto-rows: 1fr;\\n\\t\\t// Center the columns set\\n\\t\\tjustify-content: center;\\n\\t}\\n\\n\\t&__buttons {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: end;\\n\\t\\tpadding: calc(var(--margin) * 2) var(--margin);\\n\\t\\tposition: sticky;\\n\\t\\tbottom: 0;\\n\\t\\tbackground-image: linear-gradient(0deg, var(--gradient-main-background));\\n\\n\\t\\tbutton, input[type='submit'] {\\n\\t\\t\\theight: 44px;\\n\\t\\t}\\n\\t}\\n\\n\\t// Make sure we're relative for the loading emptycontent on top\\n\\t:deep(.modal-container) {\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t&__loading {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tinset-inline-start: 0;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tmargin: 0;\\n\\t\\tbackground-color: var(--color-main-background-translucent);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.opened)?_c('NcModal',{staticClass:\"templates-picker\",attrs:{\"clear-view-delay\":-1,\"size\":\"large\"},on:{\"close\":_vm.close}},[_c('form',{staticClass:\"templates-picker__form\",style:(_vm.style),on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onSubmit.apply(null, arguments)}}},[_c('h2',[_vm._v(_vm._s(_vm.t('files', 'Pick a template for {name}', { name: _vm.nameWithoutExt })))]),_vm._v(\" \"),_c('ul',{staticClass:\"templates-picker__list\"},[_c('TemplatePreview',_vm._b({ref:\"emptyTemplatePreview\",attrs:{\"checked\":_vm.checked === _vm.emptyTemplate.fileid},on:{\"confirm-click\":_vm.onConfirmClick,\"check\":_vm.onCheck}},'TemplatePreview',_vm.emptyTemplate,false)),_vm._v(\" \"),_vm._l((_vm.provider.templates),function(template){return _c('TemplatePreview',_vm._b({key:template.fileid,attrs:{\"checked\":_vm.checked === template.fileid,\"ratio\":_vm.provider.ratio},on:{\"confirm-click\":_vm.onConfirmClick,\"check\":_vm.onCheck}},'TemplatePreview',template,false))})],2),_vm._v(\" \"),_c('div',{staticClass:\"templates-picker__buttons\"},[_c('input',{staticClass:\"primary\",attrs:{\"type\":\"submit\",\"aria-label\":_vm.t('files', 'Create a new file with the selected template')},domProps:{\"value\":_vm.t('files', 'Create')}})])]),_vm._v(\" \"),(_vm.loading)?_c('NcEmptyContent',{staticClass:\"templates-picker__loading\",attrs:{\"icon\":\"icon-loading\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files', 'Creating file'))+\"\\n\\t\")]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"template-field__checkbox\"},[_c('NcCheckboxRadioSwitch',{attrs:{\"id\":_vm.fieldId,\"type\":\"switch\"},on:{\"update:modelValue\":_vm.input},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.fieldLabel)+\"\\n\\t\")])],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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateCheckboxField.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateCheckboxField.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!./TemplateCheckboxField.vue?vue&type=style&index=0&id=70a7f597&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./TemplateCheckboxField.vue?vue&type=style&index=0&id=70a7f597&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplateCheckboxField.vue?vue&type=template&id=70a7f597&scoped=true\"\nimport script from \"./TemplateCheckboxField.vue?vue&type=script&lang=ts\"\nexport * from \"./TemplateCheckboxField.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TemplateCheckboxField.vue?vue&type=style&index=0&id=70a7f597&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 \"70a7f597\",\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:\"template-field__text\"},[_c('label',{attrs:{\"for\":_vm.fieldId}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.fieldLabel)+\"\\n\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"id\":_vm.fieldId,\"type\":\"text\",\"label\":_vm.fieldLabel,\"label-outside\":true,\"placeholder\":_vm.field.content},on:{\"input\":_vm.input},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateRichTextField.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateRichTextField.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!./TemplateRichTextField.vue?vue&type=style&index=0&id=9f5448c8&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./TemplateRichTextField.vue?vue&type=style&index=0&id=9f5448c8&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplateRichTextField.vue?vue&type=template&id=9f5448c8&scoped=true\"\nimport script from \"./TemplateRichTextField.vue?vue&type=script&lang=ts\"\nexport * from \"./TemplateRichTextField.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TemplateRichTextField.vue?vue&type=style&index=0&id=9f5448c8&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 \"9f5448c8\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateFiller.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!./TemplateFiller.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateFiller.vue?vue&type=style&index=0&id=97ce63ca&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./TemplateFiller.vue?vue&type=style&index=0&id=97ce63ca&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplateFiller.vue?vue&type=template&id=97ce63ca&scoped=true\"\nimport script from \"./TemplateFiller.vue?vue&type=script&lang=js\"\nexport * from \"./TemplateFiller.vue?vue&type=script&lang=js\"\nimport style0 from \"./TemplateFiller.vue?vue&type=style&index=0&id=97ce63ca&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 \"97ce63ca\",\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('NcModal',{attrs:{\"label-id\":\"template-field-modal__label\"}},[_c('div',{staticClass:\"template-field-modal__content\"},[_c('form',[_c('h3',{attrs:{\"id\":\"template-field-modal__label\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Fill template fields'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_vm._l((_vm.fields),function(field){return _c('div',{key:field.index},[(_vm.fieldHasLabel(field))?_c(_vm.getFieldComponent(field.type),{tag:\"component\",attrs:{\"field\":field},on:{\"input\":_vm.trackInput}}):_vm._e()],1)})],2)]),_vm._v(\" \"),_c('div',{staticClass:\"template-field-modal__buttons\"},[(_vm.loading)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.t('files', 'Submitting fields …')}}):_vm._e(),_vm._v(\" \"),_c('NcButton',{attrs:{\"aria-label\":\"Submit button\",\"variant\":\"primary\"},on:{\"click\":_vm.submit}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Submit'))+\"\\n\\t\\t\")])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"template-picker__item\"},[_c('input',{ref:\"input\",staticClass:\"radio\",attrs:{\"id\":_vm.id,\"type\":\"radio\",\"name\":\"template-picker\"},domProps:{\"checked\":_vm.checked},on:{\"change\":_vm.onCheck}}),_vm._v(\" \"),_c('label',{staticClass:\"template-picker__label\",attrs:{\"for\":_vm.id},on:{\"click\":_vm.onClick}},[_c('div',{staticClass:\"template-picker__preview\",class:_vm.failedPreview ? 'template-picker__preview--failed' : ''},[_c('img',{staticClass:\"template-picker__image\",attrs:{\"src\":_vm.realPreviewUrl,\"alt\":\"\",\"draggable\":\"false\"},on:{\"error\":_vm.onFailure}})]),_vm._v(\" \"),_c('span',{staticClass:\"template-picker__title\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.nameWithoutExt)+\"\\n\\t\\t\")])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=style&index=0&id=9ac54e24&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=style&index=0&id=9ac54e24&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplatePreview.vue?vue&type=template&id=9ac54e24&scoped=true\"\nimport script from \"./TemplatePreview.vue?vue&type=script&lang=js\"\nexport * from \"./TemplatePreview.vue?vue&type=script&lang=js\"\nimport style0 from \"./TemplatePreview.vue?vue&type=style&index=0&id=9ac54e24&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 \"9ac54e24\",\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-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=script&lang=ts\"","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\n\n/**\n *\n */\nexport async function getTemplates() {\n\tconst response = await axios.get(generateOcsUrl('apps/files/api/v1/templates'))\n\treturn response.data.ocs.data\n}\n\n/**\n *\n * @param fileId\n */\nexport async function getTemplateFields(fileId) {\n\tconst response = await axios.get(generateOcsUrl(`apps/files/api/v1/templates/fields/${fileId}`))\n\treturn response.data.ocs.data\n}\n\n/**\n * Create a new file from a specified template\n *\n * @param {string} filePath The new file destination path\n * @param {string} templatePath The template source path\n * @param {string} templateType The template type e.g 'user'\n * @param {object} templateFields The template fields to fill in (if any)\n */\nexport async function createFromTemplate(filePath, templatePath, templateType, templateFields) {\n\tconst response = await axios.post(generateOcsUrl('apps/files/api/v1/templates/create'), {\n\t\tfilePath,\n\t\ttemplatePath,\n\t\ttemplateType,\n\t\ttemplateFields,\n\t})\n\treturn response.data.ocs.data\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=style&index=0&id=d063f2b2&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=style&index=0&id=d063f2b2&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplatePicker.vue?vue&type=template&id=d063f2b2&scoped=true\"\nimport script from \"./TemplatePicker.vue?vue&type=script&lang=ts\"\nexport * from \"./TemplatePicker.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TemplatePicker.vue?vue&type=style&index=0&id=d063f2b2&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 \"d063f2b2\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","TemplateFiller_TemplateCheckboxFieldvue_type_script_lang_ts","defineComponent","name","components","NcCheckboxRadioSwitch","props","field","type","Object","default","data","value","this","checked","computed","fieldLabel","label","alias","charAt","toUpperCase","slice","fieldId","index","methods","input","$emit","property","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","TemplateCheckboxFieldvue_type_style_index_0_id_70a7f597_prod_lang_scss_scoped_true","A","locals","TemplateCheckboxField","componentNormalizer","_vm","_c","_self","_setupProxy","staticClass","attrs","on","model","callback","$$v","expression","_v","_s","TemplateFiller_TemplateRichTextFieldvue_type_script_lang_ts","NcTextField","TemplateRichTextFieldvue_type_style_index_0_id_9f5448c8_prod_lang_scss_scoped_true_options","TemplateRichTextFieldvue_type_style_index_0_id_9f5448c8_prod_lang_scss_scoped_true","TemplateRichTextField","for","placeholder","content","components_TemplateFillervue_type_script_lang_js","NcModal","NcButton","NcLoadingIcon","fields","Array","onSubmit","Function","async","localFields","loading","t","l10n_dist","trackInput","getFieldComponent","fieldType","split","map","str","join","fieldHasLabel","submit","TemplateFillervue_type_style_index_0_id_97ce63ca_prod_lang_scss_scoped_true_options","TemplateFillervue_type_style_index_0_id_97ce63ca_prod_lang_scss_scoped_true","TemplateFiller","_l","key","tag","_e","variant","click","components_TemplatePreviewvue_type_script_lang_js","inheritAttrs","basename","String","required","Boolean","fileid","Number","filename","previewUrl","hasPreview","mime","ratio","failedPreview","nameWithoutExt","indexOf","realPreviewUrl","mimeIcon","isPublicShare","generateUrl","getSharingToken","encodePath","OC","MimeType","getIconUrl","onCheck","onFailure","focus","$refs","onClick","TemplatePreviewvue_type_style_index_0_id_9ac54e24_prod_lang_scss_scoped_true_options","TemplatePreviewvue_type_style_index_0_id_9ac54e24_prod_lang_scss_scoped_true","TemplatePreview","ref","domProps","change","class","src","alt","draggable","error","views_TemplatePickervue_type_script_lang_ts","NcEmptyContent","parent","opened","provider","extension","extname","length","emptyTemplate","mimetypes","selectedTemplate","templates","find","template","style","width","margin","border","Math","round","Tl","open","getCurrentUser","fetchedProvider","axios","get","generateOcsUrl","ocs","getTemplates","app","Error","$nextTick","emptyTemplatePreview","close","onConfirmClick","createFile","templateFields","currentDirectory","URL","window","location","href","searchParams","logger","warn","client","getClient","getRootPath","putFileContents","response","stat","getDefaultPropfind","details","debug","fileInfo","node","resultToNode","handleFileCreation","filePath","templatePath","templateType","post","createFromTemplate","normalize","owner","uid","File","source","generateRemoteUrl","root","mtime","Date","lastmod","size","permissions","attributes","showError","emit","OCP","Files","Router","goToRoute","view","dir","dirname","openfile","fileId","getTemplateFields","spawnDialog","TemplatePickervue_type_style_index_0_id_d063f2b2_prod_lang_scss_scoped_true_options","TemplatePickervue_type_style_index_0_id_d063f2b2_prod_lang_scss_scoped_true","TemplatePicker_component","$event","preventDefault","stopPropagation","apply","arguments","_b","check","icon","TemplatePicker"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"6163-6163.js?v=16e6d848003ef3361f0f","mappings":"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","sources":["webpack:///nextcloud/apps/files/src/components/TemplateFiller.vue?vue&type=style&index=0&id=97ce63ca&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue?vue&type=style&index=0&id=70a7f597&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateRichTextField.vue?vue&type=style&index=0&id=9f5448c8&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=9ac54e24&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=d063f2b2&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue?5862","webpack://nextcloud/./apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue?ad4c","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateRichTextField.vue","webpack:///nextcloud/apps/files/src/components/TemplateFiller/TemplateRichTextField.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/TemplateFiller/TemplateRichTextField.vue?69c3","webpack://nextcloud/./apps/files/src/components/TemplateFiller/TemplateRichTextField.vue?cea0","webpack:///nextcloud/apps/files/src/components/TemplateFiller.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/TemplateFiller.vue","webpack://nextcloud/./apps/files/src/components/TemplateFiller.vue?a386","webpack://nextcloud/./apps/files/src/components/TemplateFiller.vue?6295","webpack://nextcloud/./apps/files/src/components/TemplateFiller.vue?4b21","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?c414","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue","webpack:///nextcloud/apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?c850","webpack://nextcloud/./apps/files/src/components/TemplatePreview.vue?81db","webpack:///nextcloud/apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/Templates.js","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?8f49","webpack://nextcloud/./apps/files/src/views/TemplatePicker.vue?afd8"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.template-field-modal__content[data-v-97ce63ca]{padding:calc(var(--default-grid-baseline)*4)}.template-field-modal__content h3[data-v-97ce63ca]{text-align:center}.template-field-modal__buttons[data-v-97ce63ca]{display:flex;justify-content:flex-end;gap:var(--default-grid-baseline);margin:calc(var(--default-grid-baseline)*4);margin-top:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplateFiller.vue\"],\"names\":[],\"mappings\":\"AAGA,gDACC,4CAHc,CAKd,mDACC,iBAAA,CAIF,gDACC,YAAA,CACA,wBAAA,CACA,gCAAA,CACA,2CAdc,CAed,YAAA\",\"sourcesContent\":[\"\\n$modal-margin: calc(var(--default-grid-baseline) * 4);\\n\\n.template-field-modal__content {\\n\\tpadding: $modal-margin;\\n\\n\\th3 {\\n\\t\\ttext-align: center;\\n\\t}\\n}\\n\\n.template-field-modal__buttons {\\n\\tdisplay: flex;\\n\\tjustify-content: flex-end;\\n\\tgap: var(--default-grid-baseline);\\n\\tmargin: $modal-margin;\\n\\tmargin-top: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.template-field__checkbox[data-v-70a7f597]{margin:20px 0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplateFiller/TemplateCheckboxField.vue\"],\"names\":[],\"mappings\":\"AACA,2CACE,aAAA\",\"sourcesContent\":[\"\\n.template-field__checkbox {\\n margin: 20px 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.template-field__text[data-v-9f5448c8]{margin:20px 0}.template-field__text label[data-v-9f5448c8]{font-weight:bold}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplateFiller/TemplateRichTextField.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,aAAA,CAEA,6CACC,gBAAA\",\"sourcesContent\":[\"\\n.template-field__text {\\n\\tmargin: 20px 0;\\n\\n\\tlabel {\\n\\t\\tfont-weight: bold;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.template-picker__item[data-v-9ac54e24]{display:flex}.template-picker__label[data-v-9ac54e24]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-9ac54e24],.template-picker__label *[data-v-9ac54e24]{cursor:pointer;user-select:none}.template-picker__label[data-v-9ac54e24]::before{display:none !important}.template-picker__preview[data-v-9ac54e24]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-9ac54e24]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-9ac54e24]{display:flex}.template-picker__image[data-v-9ac54e24]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-9ac54e24]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-9ac54e24]{max-width:calc(var(--width) + 4px);padding:var(--margin)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/TemplatePreview.vue\"],\"names\":[],\"mappings\":\"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCAEC,kCAAA,CACA,qBAAA\",\"sourcesContent\":[\"\\n\\n.template-picker {\\n\\t&__item {\\n\\t\\tdisplay: flex;\\n\\t}\\n\\n\\t&__label {\\n\\t\\tdisplay: flex;\\n\\t\\t// Align in the middle of the grid\\n\\t\\talign-items: center;\\n\\t\\tflex: 1 1;\\n\\t\\tflex-direction: column;\\n\\n\\t\\t&, * {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&::before {\\n\\t\\t\\tdisplay: none !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&__preview {\\n\\t\\tdisplay: block;\\n\\t\\toverflow: hidden;\\n\\t\\t// Stretch so all entries are the same width\\n\\t\\tflex: 1 1;\\n\\t\\twidth: var(--width);\\n\\t\\tmin-height: var(--height);\\n\\t\\tmax-height: var(--height);\\n\\t\\tpadding: 0;\\n\\t\\tborder: var(--border) solid var(--color-border);\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\n\\t\\tinput:checked + label > & {\\n\\t\\t\\tborder-color: var(--color-primary-element);\\n\\t\\t}\\n\\n\\t\\t&--failed {\\n\\t\\t\\t// Make sure to properly center fallback icon\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\t}\\n\\n\\t&__image {\\n\\t\\tmax-width: 100%;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\tobject-fit: cover;\\n\\t}\\n\\n\\t// Failed preview, fallback to mime icon\\n\\t&__preview--failed &__image {\\n\\t\\twidth: calc(var(--margin) * 8);\\n\\t\\t// Center mime icon\\n\\t\\tmargin: auto;\\n\\t\\tbackground-color: transparent !important;\\n\\n\\t\\tobject-fit: initial;\\n\\t}\\n\\n\\t&__title {\\n\\t\\t// also count preview border\\n\\t\\tmax-width: calc(var(--width) + 2 * 2px);\\n\\t\\tpadding: var(--margin);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.templates-picker__form[data-v-d063f2b2]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-d063f2b2]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-d063f2b2]{display:grid;gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-d063f2b2]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0deg, var(--gradient-main-background))}.templates-picker__buttons button[data-v-d063f2b2],.templates-picker__buttons input[type=submit][data-v-d063f2b2]{height:44px}.templates-picker[data-v-d063f2b2] .modal-container{position:relative}.templates-picker__loading[data-v-d063f2b2]{position:absolute;top:0;inset-inline-start:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/TemplatePicker.vue\"],\"names\":[],\"mappings\":\"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,yBAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,uEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,oBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA\",\"sourcesContent\":[\"\\n.templates-picker {\\n\\t&__form {\\n\\t\\tpadding: calc(var(--margin) * 2);\\n\\t\\t// Will be handled by the buttons\\n\\t\\tpadding-bottom: 0;\\n\\n\\t\\th2 {\\n\\t\\t\\ttext-align: center;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tmargin: var(--margin) 0 calc(var(--margin) * 2);\\n\\t\\t}\\n\\t}\\n\\n\\t&__list {\\n\\t\\tdisplay: grid;\\n\\t\\tgap: calc(var(--margin) * 2);\\n\\t\\tgrid-auto-columns: 1fr;\\n\\t\\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\\n\\t\\tmax-width: calc(var(--fullwidth) * 6);\\n\\t\\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\\n\\t\\t// Make sure all rows are the same height\\n\\t\\tgrid-auto-rows: 1fr;\\n\\t\\t// Center the columns set\\n\\t\\tjustify-content: center;\\n\\t}\\n\\n\\t&__buttons {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: end;\\n\\t\\tpadding: calc(var(--margin) * 2) var(--margin);\\n\\t\\tposition: sticky;\\n\\t\\tbottom: 0;\\n\\t\\tbackground-image: linear-gradient(0deg, var(--gradient-main-background));\\n\\n\\t\\tbutton, input[type='submit'] {\\n\\t\\t\\theight: 44px;\\n\\t\\t}\\n\\t}\\n\\n\\t// Make sure we're relative for the loading emptycontent on top\\n\\t:deep(.modal-container) {\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t&__loading {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tinset-inline-start: 0;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tmargin: 0;\\n\\t\\tbackground-color: var(--color-main-background-translucent);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.opened)?_c('NcModal',{staticClass:\"templates-picker\",attrs:{\"clear-view-delay\":-1,\"size\":\"large\"},on:{\"close\":_vm.close}},[_c('form',{staticClass:\"templates-picker__form\",style:(_vm.style),on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onSubmit.apply(null, arguments)}}},[_c('h2',[_vm._v(_vm._s(_vm.t('files', 'Pick a template for {name}', { name: _vm.nameWithoutExt })))]),_vm._v(\" \"),_c('ul',{staticClass:\"templates-picker__list\"},[_c('TemplatePreview',_vm._b({ref:\"emptyTemplatePreview\",attrs:{\"checked\":_vm.checked === _vm.emptyTemplate.fileid},on:{\"confirm-click\":_vm.onConfirmClick,\"check\":_vm.onCheck}},'TemplatePreview',_vm.emptyTemplate,false)),_vm._v(\" \"),_vm._l((_vm.provider.templates),function(template){return _c('TemplatePreview',_vm._b({key:template.fileid,attrs:{\"checked\":_vm.checked === template.fileid,\"ratio\":_vm.provider.ratio},on:{\"confirm-click\":_vm.onConfirmClick,\"check\":_vm.onCheck}},'TemplatePreview',template,false))})],2),_vm._v(\" \"),_c('div',{staticClass:\"templates-picker__buttons\"},[_c('input',{staticClass:\"primary\",attrs:{\"type\":\"submit\",\"aria-label\":_vm.t('files', 'Create a new file with the selected template')},domProps:{\"value\":_vm.t('files', 'Create')}})])]),_vm._v(\" \"),(_vm.loading)?_c('NcEmptyContent',{staticClass:\"templates-picker__loading\",attrs:{\"icon\":\"icon-loading\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files', 'Creating file'))+\"\\n\\t\")]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"template-field__checkbox\"},[_c('NcCheckboxRadioSwitch',{attrs:{\"id\":_vm.fieldId,\"type\":\"switch\"},on:{\"update:modelValue\":_vm.input},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.fieldLabel)+\"\\n\\t\")])],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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateCheckboxField.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateCheckboxField.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/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateCheckboxField.vue?vue&type=style&index=0&id=70a7f597&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateCheckboxField.vue?vue&type=style&index=0&id=70a7f597&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplateCheckboxField.vue?vue&type=template&id=70a7f597&scoped=true\"\nimport script from \"./TemplateCheckboxField.vue?vue&type=script&lang=ts\"\nexport * from \"./TemplateCheckboxField.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TemplateCheckboxField.vue?vue&type=style&index=0&id=70a7f597&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 \"70a7f597\",\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:\"template-field__text\"},[_c('label',{attrs:{\"for\":_vm.fieldId}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.fieldLabel)+\"\\n\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"id\":_vm.fieldId,\"type\":\"text\",\"label\":_vm.fieldLabel,\"label-outside\":true,\"placeholder\":_vm.field.content},on:{\"input\":_vm.input},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateRichTextField.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-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateRichTextField.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/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateRichTextField.vue?vue&type=style&index=0&id=9f5448c8&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateRichTextField.vue?vue&type=style&index=0&id=9f5448c8&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplateRichTextField.vue?vue&type=template&id=9f5448c8&scoped=true\"\nimport script from \"./TemplateRichTextField.vue?vue&type=script&lang=ts\"\nexport * from \"./TemplateRichTextField.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TemplateRichTextField.vue?vue&type=style&index=0&id=9f5448c8&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 \"9f5448c8\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateFiller.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!./TemplateFiller.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateFiller.vue?vue&type=style&index=0&id=97ce63ca&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateFiller.vue?vue&type=style&index=0&id=97ce63ca&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplateFiller.vue?vue&type=template&id=97ce63ca&scoped=true\"\nimport script from \"./TemplateFiller.vue?vue&type=script&lang=js\"\nexport * from \"./TemplateFiller.vue?vue&type=script&lang=js\"\nimport style0 from \"./TemplateFiller.vue?vue&type=style&index=0&id=97ce63ca&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 \"97ce63ca\",\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('NcModal',{attrs:{\"label-id\":\"template-field-modal__label\"}},[_c('div',{staticClass:\"template-field-modal__content\"},[_c('form',[_c('h3',{attrs:{\"id\":\"template-field-modal__label\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Fill template fields'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_vm._l((_vm.fields),function(field){return _c('div',{key:field.index},[(_vm.fieldHasLabel(field))?_c(_vm.getFieldComponent(field.type),{tag:\"component\",attrs:{\"field\":field},on:{\"input\":_vm.trackInput}}):_vm._e()],1)})],2)]),_vm._v(\" \"),_c('div',{staticClass:\"template-field-modal__buttons\"},[(_vm.loading)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.t('files', 'Submitting fields …')}}):_vm._e(),_vm._v(\" \"),_c('NcButton',{attrs:{\"aria-label\":\"Submit button\",\"variant\":\"primary\"},on:{\"click\":_vm.submit}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Submit'))+\"\\n\\t\\t\")])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"template-picker__item\"},[_c('input',{ref:\"input\",staticClass:\"radio\",attrs:{\"id\":_vm.id,\"type\":\"radio\",\"name\":\"template-picker\"},domProps:{\"checked\":_vm.checked},on:{\"change\":_vm.onCheck}}),_vm._v(\" \"),_c('label',{staticClass:\"template-picker__label\",attrs:{\"for\":_vm.id},on:{\"click\":_vm.onClick}},[_c('div',{staticClass:\"template-picker__preview\",class:_vm.failedPreview ? 'template-picker__preview--failed' : ''},[_c('img',{staticClass:\"template-picker__image\",attrs:{\"src\":_vm.realPreviewUrl,\"alt\":\"\",\"draggable\":\"false\"},on:{\"error\":_vm.onFailure}})]),_vm._v(\" \"),_c('span',{staticClass:\"template-picker__title\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.nameWithoutExt)+\"\\n\\t\\t\")])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=style&index=0&id=9ac54e24&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=style&index=0&id=9ac54e24&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplatePreview.vue?vue&type=template&id=9ac54e24&scoped=true\"\nimport script from \"./TemplatePreview.vue?vue&type=script&lang=js\"\nexport * from \"./TemplatePreview.vue?vue&type=script&lang=js\"\nimport style0 from \"./TemplatePreview.vue?vue&type=style&index=0&id=9ac54e24&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 \"9ac54e24\",\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-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=script&lang=ts\"","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\n\n/**\n *\n */\nexport async function getTemplates() {\n\tconst response = await axios.get(generateOcsUrl('apps/files/api/v1/templates'))\n\treturn response.data.ocs.data\n}\n\n/**\n *\n * @param fileId\n */\nexport async function getTemplateFields(fileId) {\n\tconst response = await axios.get(generateOcsUrl(`apps/files/api/v1/templates/fields/${fileId}`))\n\treturn response.data.ocs.data\n}\n\n/**\n * Create a new file from a specified template\n *\n * @param {string} filePath The new file destination path\n * @param {string} templatePath The template source path\n * @param {string} templateType The template type e.g 'user'\n * @param {object} templateFields The template fields to fill in (if any)\n */\nexport async function createFromTemplate(filePath, templatePath, templateType, templateFields) {\n\tconst response = await axios.post(generateOcsUrl('apps/files/api/v1/templates/create'), {\n\t\tfilePath,\n\t\ttemplatePath,\n\t\ttemplateType,\n\t\ttemplateFields,\n\t})\n\treturn response.data.ocs.data\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=style&index=0&id=d063f2b2&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=style&index=0&id=d063f2b2&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TemplatePicker.vue?vue&type=template&id=d063f2b2&scoped=true\"\nimport script from \"./TemplatePicker.vue?vue&type=script&lang=ts\"\nexport * from \"./TemplatePicker.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TemplatePicker.vue?vue&type=style&index=0&id=d063f2b2&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 \"d063f2b2\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","TemplateFiller_TemplateCheckboxFieldvue_type_script_lang_ts","defineComponent","name","components","NcCheckboxRadioSwitch","props","field","type","Object","default","data","value","this","checked","computed","fieldLabel","label","alias","charAt","toUpperCase","slice","fieldId","index","methods","input","$emit","property","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","TemplateCheckboxFieldvue_type_style_index_0_id_70a7f597_prod_lang_scss_scoped_true","A","locals","TemplateCheckboxField","componentNormalizer","_vm","_c","_self","_setupProxy","staticClass","attrs","on","model","callback","$$v","expression","_v","_s","TemplateFiller_TemplateRichTextFieldvue_type_script_lang_ts","NcTextField","TemplateRichTextFieldvue_type_style_index_0_id_9f5448c8_prod_lang_scss_scoped_true_options","TemplateRichTextFieldvue_type_style_index_0_id_9f5448c8_prod_lang_scss_scoped_true","TemplateRichTextField","for","placeholder","content","components_TemplateFillervue_type_script_lang_js","NcModal","NcButton","NcLoadingIcon","fields","Array","onSubmit","Function","async","localFields","loading","t","l10n_dist","trackInput","getFieldComponent","fieldType","split","map","str","join","fieldHasLabel","submit","TemplateFillervue_type_style_index_0_id_97ce63ca_prod_lang_scss_scoped_true_options","TemplateFillervue_type_style_index_0_id_97ce63ca_prod_lang_scss_scoped_true","TemplateFiller","_l","key","tag","_e","variant","click","components_TemplatePreviewvue_type_script_lang_js","inheritAttrs","basename","String","required","Boolean","fileid","Number","filename","previewUrl","hasPreview","mime","ratio","failedPreview","nameWithoutExt","indexOf","realPreviewUrl","mimeIcon","isPublicShare","generateUrl","getSharingToken","encodePath","OC","MimeType","getIconUrl","onCheck","onFailure","focus","$refs","onClick","TemplatePreviewvue_type_style_index_0_id_9ac54e24_prod_lang_scss_scoped_true_options","TemplatePreviewvue_type_style_index_0_id_9ac54e24_prod_lang_scss_scoped_true","TemplatePreview","ref","domProps","change","class","src","alt","draggable","error","views_TemplatePickervue_type_script_lang_ts","NcEmptyContent","parent","opened","provider","extension","extname","length","emptyTemplate","mimetypes","selectedTemplate","templates","find","template","style","width","margin","border","Math","round","Tl","open","getCurrentUser","fetchedProvider","axios","get","generateOcsUrl","ocs","getTemplates","app","Error","$nextTick","emptyTemplatePreview","close","onConfirmClick","createFile","templateFields","currentDirectory","URL","window","location","href","searchParams","logger","warn","client","getClient","getRootPath","putFileContents","response","stat","getDefaultPropfind","details","debug","fileInfo","node","resultToNode","handleFileCreation","filePath","templatePath","templateType","post","createFromTemplate","normalize","owner","uid","File","source","generateRemoteUrl","root","mtime","Date","lastmod","size","permissions","attributes","showError","emit","OCP","Files","Router","goToRoute","view","dir","dirname","openfile","fileId","getTemplateFields","spawnDialog","TemplatePickervue_type_style_index_0_id_d063f2b2_prod_lang_scss_scoped_true_options","TemplatePickervue_type_style_index_0_id_d063f2b2_prod_lang_scss_scoped_true","TemplatePicker_component","$event","preventDefault","stopPropagation","apply","arguments","_b","check","icon","TemplatePicker"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/6163-6163.js.map.license b/dist/6163-6163.js.map.license new file mode 120000 index 0000000000000..37e92506e4008 --- /dev/null +++ b/dist/6163-6163.js.map.license @@ -0,0 +1 @@ +6163-6163.js.license \ No newline at end of file diff --git a/dist/745-745.js b/dist/745-745.js new file mode 100644 index 0000000000000..5596b073eca4c --- /dev/null +++ b/dist/745-745.js @@ -0,0 +1,2 @@ +"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[745],{61586(e,s,t){var n=t(71354),i=t.n(n),a=t(76314),o=t.n(a)()(i());o.push([e.id,".file-drop-empty-content[data-v-994fb45e]{margin:auto;max-width:max(50vw,300px)}.file-drop-empty-content .file-drop-empty-content__note-card[data-v-994fb45e]{width:fit-content;margin-inline:auto}.file-drop-empty-content #file-drop-empty-content__heading[data-v-994fb45e]{margin-block:0 10px;font-weight:bold;font-size:20px}.file-drop-empty-content .file-drop-empty-content__list[data-v-994fb45e]{list-style:inside;max-height:min(350px,33vh);overflow-y:scroll;padding-inline-end:calc(2*var(--default-grid-baseline))}.file-drop-empty-content[data-v-994fb45e] .terms-of-service-dialog{min-height:min(100px,20vh)}.file-drop-empty-content[data-v-994fb45e] .empty-content__action{display:flex;gap:var(--default-grid-baseline)}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue"],names:[],mappings:"AACA,0CACC,WAAA,CACA,yBAAA,CAEA,8EACC,iBAAA,CACA,kBAAA,CAGD,4EACC,mBAAA,CACA,gBAAA,CACA,cAAA,CAGD,yEACC,iBAAA,CACA,0BAAA,CACA,iBAAA,CACA,uDAAA,CAGD,mEACC,0BAAA,CAID,iEACC,YAAA,CACA,gCAAA",sourcesContent:["\n.file-drop-empty-content {\n\tmargin: auto;\n\tmax-width: max(50vw, 300px);\n\n\t.file-drop-empty-content__note-card {\n\t\twidth: fit-content;\n\t\tmargin-inline: auto;\n\t}\n\n\t#file-drop-empty-content__heading {\n\t\tmargin-block: 0 10px;\n\t\tfont-weight: bold;\n\t\tfont-size: 20px;\n\t}\n\n\t.file-drop-empty-content__list {\n\t\tlist-style: inside;\n\t\tmax-height: min(350px, 33vh);\n\t\toverflow-y: scroll;\n\t\tpadding-inline-end: calc(2 * var(--default-grid-baseline));\n\t}\n\n\t:deep(.terms-of-service-dialog) {\n\t\tmin-height: min(100px, 20vh);\n\t}\n\n\t/* TODO fix in library */\n\t:deep(.empty-content__action) {\n\t\tdisplay: flex;\n\t\tgap: var(--default-grid-baseline);\n\t}\n}\n"],sourceRoot:""}]);const l=o;t.d(s,["A",0,l])},30745(e,s,t){t.d(s,{default:()=>F});var n=t(85471),i=t(81222),a=t(53334),o=t(66860),l=t(74095),r=t(94219),m=t(48943),d=t(6695),g=t(48240);const c=new Set,u=(0,n.pM)({__name:"FilesViewFileDropEmptyContent",props:{foldername:null},setup(e){const s=(0,i.C)("files_sharing","disclaimer",""),t=(0,i.C)("files_sharing","label",""),u=(0,i.C)("files_sharing","note",""),f=t||(0,a.Tl)("files_sharing","File drop"),p=(0,n.KR)(!1),h=(0,o.g)().destination;return(0,o.g)().addNotifier(e=>{e.status===o.S.FINISHED&&e.file.name&&c.add(e.file.name)}),{__sfc:!0,uploads:c,disclaimer:s,shareLabel:t,shareNote:u,name:f,showDialog:p,uploadDestination:h,getSortedUploads:function(){return[...c].sort((e,s)=>e.localeCompare(s))},svgCloudUpload:'',t:a.Tl,UploadPicker:o.j,NcButton:l.A,NcDialog:r.A,NcEmptyContent:m.A,NcIconSvgWrapper:d.A,NcNoteCard:g.A}}});var f=t(85072),p=t.n(f),h=t(97825),w=t.n(h),k=t(77659),v=t.n(k),b=t(55056),T=t.n(b),x=t(10540),y=t.n(x),U=t(41113),C=t.n(U),S=t(61586),L={};L.styleTagTransform=C(),L.setAttributes=T(),L.insert=v().bind(null,"head"),L.domAPI=w(),L.insertStyleElement=y(),p()(S.A,L),S.A&&S.A.locals&&S.A.locals;const F=(0,t(14486).A)(u,function(){var e=this,s=e._self._c,t=e._self._setupProxy;return s(t.NcEmptyContent,{staticClass:"file-drop-empty-content",attrs:{"data-cy-files-sharing-file-drop":"",name:t.name},scopedSlots:e._u([{key:"icon",fn:function(){return[s(t.NcIconSvgWrapper,{attrs:{svg:t.svgCloudUpload}})]},proxy:!0},{key:"description",fn:function(){return[s("p",[e._v("\n\t\t\t"+e._s(t.shareNote||t.t("files_sharing","Upload files to {foldername}.",{foldername:e.foldername}))+"\n\t\t")]),e._v(" "),t.disclaimer?s("p",[e._v("\n\t\t\t"+e._s(t.t("files_sharing","By uploading files, you agree to the terms of service."))+"\n\t\t")]):e._e(),e._v(" "),t.getSortedUploads().length?s(t.NcNoteCard,{staticClass:"file-drop-empty-content__note-card",attrs:{type:"success"}},[s("h2",{attrs:{id:"file-drop-empty-content__heading"}},[e._v("\n\t\t\t\t"+e._s(t.t("files_sharing","Successfully uploaded files"))+"\n\t\t\t")]),e._v(" "),s("ul",{staticClass:"file-drop-empty-content__list",attrs:{"aria-labelledby":"file-drop-empty-content__heading"}},e._l(t.getSortedUploads(),function(t){return s("li",{key:t},[e._v("\n\t\t\t\t\t"+e._s(t)+"\n\t\t\t\t")])}),0)]):e._e()]},proxy:!0},{key:"action",fn:function(){return[t.disclaimer?[s(t.NcButton,{attrs:{variant:"primary"},on:{click:function(e){t.showDialog=!0}}},[e._v("\n\t\t\t\t"+e._s(t.t("files_sharing","View terms of service"))+"\n\t\t\t")]),e._v(" "),s(t.NcDialog,{attrs:{"close-on-click-outside":"","content-classes":"terms-of-service-dialog",open:t.showDialog,name:t.t("files_sharing","Terms of service"),message:t.disclaimer},on:{"update:open":function(e){t.showDialog=e}}})]:e._e(),e._v(" "),s(t.UploadPicker,{attrs:{"allow-folders":"",content:()=>[],"no-menu":"",destination:t.uploadDestination,multiple:""}})]},proxy:!0}])})},[],!1,null,"994fb45e",null).exports},66860(e,s,t){t.d(s,{S:()=>B,g:()=>q,n:()=>V}),t(78945);var n=t(47387),i=t(21777),a=t(83391),o=t(71225),l=t(43627),r=t(87485),m=t(44368),d=t(53553),g=t(38759),c=t(11195),u=t(63814),f=t(95368),p=t(35947),h=t(380),w=t(85471),k=t(95674),v=t(98469),b=t(94205),T=t(57505),x=t(61744),y=t(15502),U=t(24764),C=t(74095),S=t(6695),L=t(95101);const F=(0,c.$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali , 2025","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\nabu.s3ud, 2024\nAli , 2025\n"},msgstr:["Last-Translator: Ali , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" هو اسم ممنوع لملف أو مجلد.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" هو نوع ممنوع أن يكون لملف.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" هو غير مسموح به في اسم ملف أو مجلد.']},"{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} ملف متعارض في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفان متعارضان في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفات متعارضة في {dirname}","{count} ملفات متعارضة في {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["مازال {seconds} ثوانٍ","مازال {seconds} ثوانٍ","مازال {seconds} ثوانٍ","مازال {seconds} ثوانٍ","مازال {seconds} ثوانٍ","مازال {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:["بضع ثوانٍ متبقية"]},assembling:{msgid:"assembling",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:["الإصدار الحالي"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["تعذّرت إعادة تجميع الكتل معاً "]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["تعذّر رفع الملف"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['غير مسموح ان ينتهي اسم الملف بـ "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["اسم ملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معروف"]},New:{msgid:"New",msgstr:["جديد"]},"New filename":{msgid:"New filename",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:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["تمّ تجاوز الرفع"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['رفع "{folder}" تمّ تجاوزه']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp , 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp , 2023\n"},msgstr:["Last-Translator: enolp , 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev , 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev , 2023\n"},msgstr:["Last-Translator: Rashad Aliyev , 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg",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":"Leandro Navarro , 2025","Language-Team":"Catalan (https://app.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:\nJoas Schilling, 2024\nv v , 2025\nLeandro Navarro , 2025\n"},msgstr:["Last-Translator: Leandro Navarro , 2025\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" és un nom de fitxer o carpeta prohibit.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" és un tipus de fitxer prohibit.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" no és permès dins del nom de fitxer o carpeta.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}fitxer en conflicte","{count} fitxer en conflicte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicte de fitxers a {dirname}","{count} conflictes de fitxers a {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} segon restant","{seconds} segons restants"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden uns segons"]},assembling:{msgid:"assembling",msgstr:["assemblatge"]},Cancel:{msgid:"Cancel",msgstr:["Cancel·lar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel·lar l'operació sencera"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crea nou"]},"estimating time left":{msgid:"estimating time left",msgstr:["s’està estimant el temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["No s'han pogut acoblar els trossos"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["No s'ha pogut pujar el fitxer"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Els noms de fitxer no han d\'acabar en "{segment}".']},"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 seleccioneu les dues versions, el fitxer entrant tindrà un número afegit al seu nom."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nom de fitxer no vàlid"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data de la darrera modificació desconeguda"]},New:{msgid:"New",msgstr:["Nou"]},"New filename":{msgid:"New filename",msgstr:["Nou nom de fitxer"]},"New version":{msgid:"New version",msgstr:["Nova versió"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Imatge de vista prèvia"]},Rename:{msgid:"Rename",msgstr:["Canviar el nom"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccioneu totes les caselles de selecció"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccioneu tots els fitxers existents"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccioneu tots el fitxers nous"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Omet {count} fitxer","Omet {count} fitxers"]},"Skip this file":{msgid:"Skip this file",msgstr:["Omet aquest fitxer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Mida desconeguda"]},Upload:{msgid:"Upload",msgstr:["Pujar"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]},"Upload folders":{msgid:"Upload folders",msgstr:["Pujar les carpetes"]},"Upload from device":{msgid:"Upload from device",msgstr:["Pujada des del dispositiu"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La pujada s'ha cancel·lat"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["S'ha omès la pujada"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['S\'ha omès la pujada de "{folder}"']},"Upload progress":{msgid:"Upload progress",msgstr:["Procés de pujada"]},"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:["Quan es selecciona una carpeta d'entrada, també es sobreescriuran els fitxers en conflicte dins d'ella."]},"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:["Quan es selecciona una carpeta d'entrada, el contingut s'escriu a la carpeta existent i es realitza una resolució recursiva de conflictes."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quins fitxers vols conservar?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Podeu canviar el nom del fitxer, saltar aquest fitxer o cancel·lar tota l'operació."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Heu de seleccionar almenys una versió de cada fitxer per continuar."]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki , 2025","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel , 2024\nMartin Hankovec, 2024\nAppukonrad , 2024\nPavel Borecki , 2025\n"},msgstr:["Last-Translator: Pavel Borecki , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ není povoleno použít jako název souboru či složky."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}“ není povoleného typu souboru."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}“ není povoleno použít v rámci názvu souboru či složky."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["zbývá {seconds}","zbývají {seconds}","zbývá {seconds}","zbývají {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"]},assembling:{msgid:"assembling",msgstr:["sestavování"]},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"]},"Create new":{msgid:"Create new",msgstr:["Vytvořit nový"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Shluky se nepodařilo dát dohromady"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Soubor se nepodařilo nahrát"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Názvy souborů nemohou končit na „{segment}“."]},"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:["Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný název souboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New filename":{msgid:"New filename",msgstr:["Nový název souboru"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},Rename:{msgid:"Rename",msgstr:["Přejmenovat"]},"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:{msgid:"Skip",msgstr:["Přeskočit"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit {count} soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Skip this file":{msgid:"Skip this file",msgstr:["Přeskočit tento soubor"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},Upload:{msgid:"Upload",msgstr:["Nahrát"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrát složky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrát ze zařízení"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávání bylo zrušeno"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrání bylo přeskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Nahrání „{folder}“ bylo přeskočeno"]},"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"]},"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:["Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit."]},"You need to select 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":"Finn Sommer , 2025","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\nRasmus Rosendahl-Kaa, 2024\nMartin Bonde , 2025\nFinn Sommer , 2025\n"},msgstr:["Last-Translator: Finn Sommer , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tilladt i et fil- eller mappenavn.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage","{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},assembling:{msgid:"assembling",msgstr:["samling"]},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"]},"Create new":{msgid:"Create new",msgstr:["Opret ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Mislykkedes at samle stumperne sammen"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Kunne ikke uploade filen"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavne må ikke slutte med "{segment}".']},"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:["Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldigt filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nyt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},Rename:{msgid:"Rename",msgstr:["Omdøb"]},"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:{msgid:"Skip",msgstr:["Spring over"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Spring {count} fil over","Spring {count} fil over"]},"Skip this file":{msgid:"Skip this file",msgstr:["Spring denne fil over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload fra enhed"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload er blevet annulleret"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload er blevet sprunget over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload af "{folder}" er blevet sprunget over']},"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."]},"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 indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen."]},"You need to select 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":"Martin Wilichowski, 2025","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\nAndy Scherzinger , 2024\nMark Ziegler , 2025\nMario Siegmann , 2025\nMartin Wilichowski, 2025\n"},msgstr:["Last-Translator: Martin Wilichowski, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} Sekunde verbleibt","{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"]},assembling:{msgid:"assembling",msgstr:["zusammenfügen"]},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:["Berechne verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Die Teile konnten nicht zusammengefügt werden"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Die Datei konnte nicht hochgeladen werden"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"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 du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Skip this file":{msgid:"Skip this file",msgstr:["Diese Datei überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"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öchtest du behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select 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":"Martin Wilichowski, 2025","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\nMark Ziegler , 2025\nMario Siegmann , 2025\nMartin Wilichowski, 2025\n"},msgstr:["Last-Translator: Martin Wilichowski, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} Sekunde verbleibt","{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"]},assembling:{msgid:"assembling",msgstr:["zusammenfügen"]},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:["Berechne verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Die Teile konnten nicht zusammengefügt werden"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Die Datei konnte nicht hochgeladen werden"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Skip this file":{msgid:"Skip this file",msgstr:["Diese Datei überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select 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":"Γιάννος, 2025","Language-Team":"Greek (https://app.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:\nJoas Schilling, 2024\nEfstathios Iosifidis , 2025\nΓιάννος, 2025\n"},msgstr:["Last-Translator: Γιάννος, 2025\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" είναι απαγορευμένο όνομα αρχείου ή φακέλου.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Το "{segment}" είναι απαγορευμένος τύπος αρχείου.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Το "{segment}" δεν επιτρέπεται μέσα στο όνομα ενός αρχείου ή φακέλου.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{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}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["Απομένει {seconds} δευτερόλεπτο","Απομένουν {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:["απομένουν λίγα δευτερόλεπτα"]},assembling:{msgid:"assembling",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:["Υπάρχουσα έκδοση"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Αποτυχία συναρμολόγησης των κομματιών"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Αποτυχία μεταφόρτωσης του αρχείου"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Τα ονόματα αρχείων δεν πρέπει να τελειώνουν με "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["Μη έγκυρο όνομα αρχείου"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Άγνωστη ημερομηνία τελευταίας τροποποίησης"]},New:{msgid:"New",msgstr:["Νέο"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Παράλειψη {count} αρχείου","Παράλειψη {count} αρχείων"]},"Skip this file":{msgid:"Skip this file",msgstr:["Παραλείψτε αυτό το αρχείο"]},"Unknown size":{msgid:"Unknown size",msgstr:["Άγνωστο μέγεθος"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Η μεταφόρτωση παραλείφθηκε"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Η μεταφόρτωση του "{folder}" παραλείφθηκε']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler , 2025","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 , 2025\n"},msgstr:["Last-Translator: Andi Chandler , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" is a forbidden file or folder name.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" is a forbidden file type.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" is not allowed inside a file or folder name.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} seconds left","{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"]},assembling:{msgid:"assembling",msgstr:["assembling"]},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"]},"Create new":{msgid:"Create new",msgstr:["Create new"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Failed to assemble the chunks together"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Failed to upload the file"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filenames must not end with "{segment}".']},"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."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Invalid filename"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New filename":{msgid:"New filename",msgstr:["New filename"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},Rename:{msgid:"Rename",msgstr:["Rename"]},"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:{msgid:"Skip",msgstr:["Skip"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Skip {count} file","Skip {count} files"]},"Skip this file":{msgid:"Skip this file",msgstr:["Skip this file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload folders"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload from device"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload has been cancelled"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload has been skipped"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload of "{folder}" has been skipped']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["You can either rename the file, skip this file or cancel the whole operation."]},"You need to select 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, 2025","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ , 2024\nJulio C. Ortega, 2025\n"},msgstr:["Last-Translator: Julio C. Ortega, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" es un nombre de archivo o carpeta no permitido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" es un tipo de archivo no permitido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" no está permitido dentro del nombre de un archivo o carpeta.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["queda {seconds} segundo","quedan {seconds} segundos","quedan {seconds} segundos"]},"{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"]},assembling:{msgid:"assembling",msgstr:["ensamblando"]},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"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Fallo al ensamblar todas las partes juntas"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Fallo al cargar el archivo"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Los nombres de archivo no deben terminar en "{segment}".']},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Nuevo nombre de archivo"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Omitir {count} archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Skip this file":{msgid:"Skip this file",msgstr:["Omitir este archivo"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},Upload:{msgid:"Upload",msgstr:["Cargar"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["La carga fue omitida"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['La carga de "{folder}" ha sido omitida']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Puede o bien, renombrar el archivo, omitirlo, o, cancelar toda la operación."]},"You need to select 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":"Matías Campo Hoet , 2024","Language-Team":"Spanish (Argentina) (https://app.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:\nJoas Schilling, 2024\nMatías Campo Hoet , 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet , 2024\nLanguage-Team: Spanish (Argentina) (https://app.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"]},'"{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, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última 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:["Vista previa de 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:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Cargar archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Cargar carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Cargar desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Carga cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la carga"]},"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 archivo en conflicto dentro de la misma también serán sobreescritos."]},"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 se escribe en la carpeta existente y se realiza 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_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":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.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:\nJoas Schilling, 2024\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.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"]},'"{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} archivos en conflicto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} archivo en conflicto en {dirname}","{count} archivos en conflicto en {dirname}","{count} archivo en conflicto en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos 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, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["en pausa"]},"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:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {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 archivo en conflicto dentro de la misma también será sobrescrito."]},"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 se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Cuáles 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_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":"Priit Jõerüüt , 2025","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:\nJoas Schilling, 2024\nPriit Jõerüüt , 2025\n"},msgstr:["Last-Translator: Priit Jõerüüt , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ on keelatud faili- või kausta nimi."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}“ on keelatud failitüüp."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}“ pole faili- või kausta nimes lubatud."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fail on vastuolus","{count} faili on vastuolus"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fail on vastuolus „{dirname}“ kaustas","{count} faili on vastuolus „{dirname}“ kaustas"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["jäänud {seconds} sekund","jäänud {seconds} sekundit"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["aega jäänud {time} "]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},assembling:{msgid:"assembling",msgstr:["koostamisel"]},Cancel:{msgid:"Cancel",msgstr:["Katkesta"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Katkesta kogu tegevus"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Katkesta üleslaadimine"]},Continue:{msgid:"Continue",msgstr:["Jätka"]},"Create new":{msgid:"Create new",msgstr:["Loo uus"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},"Existing version":{msgid:"Existing version",msgstr:["Olemasolev versioon"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Tükkide koostamine üheks tervikuks ei õnnestunud"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Faili üleslaadimine ei õnnestunud"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Failinime lõpus ei tohi olla „{segment}“."]},"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:["Kui sa valid mõlemad versioonid, lisatakse kopeeritud faili nimele number."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Vigane failinimi"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Viimase muutmise kuupäev pole teada"]},New:{msgid:"New",msgstr:["Uus"]},"New filename":{msgid:"New filename",msgstr:["Uus failinimi"]},"New version":{msgid:"New version",msgstr:["Uus versioon"]},paused:{msgid:"paused",msgstr:["pausil"]},"Preview image":{msgid:"Preview image",msgstr:["Vaata pildi eelvaadet"]},Rename:{msgid:"Rename",msgstr:["Muuda nime"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vali kõik märkeruudud"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vali kõik olemasolevad failid"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vali kõik uued failid"]},Skip:{msgid:"Skip",msgstr:["Jäta vahele"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Jäta vahele {count} fail","Jäta vahele {count} faili"]},"Skip this file":{msgid:"Skip this file",msgstr:["Jäta vahele see fail"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tundmatu suurus"]},Upload:{msgid:"Upload",msgstr:["Laadi üles"]},"Upload files":{msgid:"Upload files",msgstr:["Laadi failid üles"]},"Upload folders":{msgid:"Upload folders",msgstr:["Laadi kaustad üles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Laadi üles seadmest"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Üleslaadimine on katkestatud"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Üleslaadimine on vahele jäetud"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["„{folder}“ kausta üleslaadimine on vahele jäetud"]},"Upload progress":{msgid:"Upload progress",msgstr:["Üleslaadimise edenemine"]},"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:["Kui saabuvate failide kaust on valitud, siis seal asuvad vastuoluliste nimedega failid kirjutatakse samuti üle."]},"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:["Kui saabuvate failide kaust on valitud, siis sisu kirjutatakse olemasolevasse kausta ja käivitatakse rekursiivne vastuolude haldus."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Milliseid faile soovid säilitada?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Sa võid kas faili nime muuta, ta vahele jätta või kogu tegevuse katkestada."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Jätkamiseks pead valima vähemalt ühe versiooni igast failist."]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta , 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta , 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta , 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Alireza Rashidi, 2025","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:\nJoas Schilling, 2024\nreza reza , 2024\nAlireza Rashidi, 2025\n"},msgstr:["Last-Translator: Alireza Rashidi, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["{segment} یک نام فایل یا پوشه ممنوعه است."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["{segment} یک نوع فایل ممنوعه است."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["{segment} داخل نام فایل یا پوشه مجاز نیست."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{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} ناسازگاری داشت"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} ثانیه مانده","{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:["چند ثانیه مانده"]},assembling:{msgid:"assembling",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:["نگارش موجود"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["نتوانست تکه‌های را به سرهم کند"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["نتوانست پرونده را بارگذاری کند"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["نام پرونده نباید با {segment} پایان یابد."]},"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 filename":{msgid:"Invalid filename",msgstr:["نام پرونده نامعتبر"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["آخرین تاریخ تغییر نامشخص"]},New:{msgid:"New",msgstr:["جدید"]},"New filename":{msgid:"New filename",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:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["بارگذاری نادیده گرفته شده است"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["بارگذاری {folder} نادیده گرفته شده است"]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"fi",json:{charset:"utf-8",headers:{"Last-Translator":"Jiri Grönroos , 2025","Language-Team":"Finnish (Finland) (https://app.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:\nJoas Schilling, 2024\nthingumy, 2024\nteemue, 2024\nJiri Grönroos , 2025\n"},msgstr:["Last-Translator: Jiri Grönroos , 2025\nLanguage-Team: Finnish (Finland) (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" on kielletty tiedoston tai hakemiston nimi.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" on kielletty tiedostotyyppi.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ei ole sallittu tiedoston tai hakemiston nimessä.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} tiedoston ristiriita","{count} tiedoston ristiriita"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tiedoston ristiriita kansiossa {dirname}","{count} tiedoston ristiriita kansiossa {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} sekunti jäljellä","{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS 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ä"]},assembling:{msgid:"assembling",msgstr:["kootaan"]},Cancel:{msgid:"Cancel",msgstr:["Peruuta"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Peruuta koko toimenpide"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},Continue:{msgid:"Continue",msgstr:["Jatka"]},"Create new":{msgid:"Create new",msgstr:["Luo uusi"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},"Existing version":{msgid:"Existing version",msgstr:["Olemassa oleva versio"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Palojen kokoaminen yhteen epäonnistui"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Tiedoston lähetys epäonnistui"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Tiedoston nimi ei saa päättyä "{segment}"']},"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:["Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Kielletty/väärä tiedoston nimi"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Viimeisin muokkauspäivä on tuntematon"]},New:{msgid:"New",msgstr:["Uusi"]},"New filename":{msgid:"New filename",msgstr:["Uusi tiedostonimi"]},"New version":{msgid:"New version",msgstr:["Uusi versio"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Preview image":{msgid:"Preview image",msgstr:["Esikatsele kuva"]},Rename:{msgid:"Rename",msgstr:["Nimeä uudelleen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Valitse kaikki valintaruudut"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Valitse kaikki olemassa olevat tiedostot"]},"Select all new files":{msgid:"Select all new files",msgstr:["Valitse kaikki uudet tiedostot"]},Skip:{msgid:"Skip",msgstr:["Ohita"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ohita tämä tiedosto","Ohita {count} tiedostoa"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tuntematon koko"]},Upload:{msgid:"Upload",msgstr:["Lähetä"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]},"Upload folders":{msgid:"Upload folders",msgstr:["Lähetä kansioita"]},"Upload from device":{msgid:"Upload from device",msgstr:["Lähetä laitteelta"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Lähetys on peruttu"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Lähetys on ohitettu"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Hakemiston "{folder}" lähetys on ohitettu']},"Upload progress":{msgid:"Upload progress",msgstr:["Lähetyksen edistyminen"]},"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:["Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan."]},"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:["Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mitkä tiedostot haluat säilyttää?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi."]}}}}},{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":"Caro Leviia, 2025","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\nJEEEEEEEEEEEEEEEEEEEEEED, 2024\nJérôme HERBINET, 2024\nacazenave, 2024\nLisa Cintosh, 2025\nLdm Public , 2025\nCaro Leviia, 2025\n"},msgstr:["Last-Translator: Caro Leviia, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" est un nom de fichier ou de dossier interdit.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" est un type de fichier interdit.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} seconde restante","{seconds} secondes restantes","{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"]},assembling:{msgid:"assembling",msgstr:["assemblage"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler toute l'opération"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les téléversements"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"Create new":{msgid:"Create new",msgstr:["Créer un nouveau"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Échec de l'assemblage des morceaux"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Échec de téléversement du fichier"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Les noms des fichiers ne doivent pas terminer par "{segment}".']},"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 vous sélectionnez les deux versions, un numéro sera ajouté au nom du fichier entrant."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nom de fichier invalide"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New filename":{msgid:"New filename",msgstr:["Nouveau nom de fichier"]},"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"]},Rename:{msgid:"Rename",msgstr:["Renommer"]},"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:{msgid:"Skip",msgstr:["Ignorer"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} fichier ignoré","{count} fichiers ignorés","{count} fichiers ignorés"]},"Skip this file":{msgid:"Skip this file",msgstr:["Ignorer ce fichier"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},Upload:{msgid:"Upload",msgstr:["Téléverser"]},"Upload files":{msgid:"Upload files",msgstr:["Téléverser des fichiers"]},"Upload folders":{msgid:"Upload folders",msgstr:["Téléverser des dossiers"]},"Upload from device":{msgid:"Upload from device",msgstr:["Téléverser depuis l'appareil"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Le téléversement a été annulé"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Le téléversement a été ignoré"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Le téléversement de "{folder}" a été ignoré']},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléversement"]},"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."]},"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:["Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Vous pouvez soit renommer le fichier, soit ignorer le fichier, soit annuler toute l'opération."]},"You need to select 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, 2025","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, 2025\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Is ainm toirmiscthe comhaid nó fillteáin é "{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Is cineál comhaid toirmiscthe é "{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Ní cheadaítear "{segment}" taobh istigh d\'ainm comhaid nó fillteáin.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid"]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} soicind fágtha","{seconds} soicind fágtha","{seconds} soicind fágtha","{seconds} soicind fágtha","{seconds} soicind fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},assembling:{msgid:"assembling",msgstr:["ag cur le chéile"]},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 "]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Theip ar na smután a chur le chéile le chéile"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Theip ar uaslódáil an chomhaid"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Níor cheart go gcríochnaíonn comhaid chomhad le "{segment}".']},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Ainm comhaid 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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad {count}","Léim thar {count} comhad","Léim thar {count} comhad","Léim thar {count} comhad","Léim thar {count} comhad"]},"Skip this file":{msgid:"Skip this file",msgstr:["Seachain an comhad seo"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},Upload:{msgid:"Upload",msgstr:["Uaslódáil"]},"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 ó ghléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Léiríodh an uaslódáil"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Léiríodh an uaslódáil "{folder}".']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú."]},"You need to select 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 , 2025","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 , 2025\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» é un nome vedado para un ficheiro ou cartafol."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» é un tipo de ficheiro vedado."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["falta {seconds} segundo","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"]},assembling:{msgid:"assembling",msgstr:["ensamblando"]},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"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Produciuse un fallo ao ensamblar os anacos"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Produciuse un fallo ao enviar o ficheiro"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Os nomes de ficheiros non deben rematar con «{segment}»."]},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Novo nome de ficheiro"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Omitir {count} ficheiro","Omitir {count} ficheiros"]},"Skip this file":{msgid:"Skip this file",msgstr:["Omitir este ficheiro"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["O envío foi omitido"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["O envío de «{folder}» foi omitido"]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación."]},"You need to select 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":"Gyuris Gellért , 2024","Language-Team":"Hungarian (Hungary) (https://app.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:\nJoas Schilling, 2024\nGyuris Gellért , 2024\n"},msgstr:["Last-Translator: Gyuris Gellért , 2024\nLanguage-Team: Hungarian (Hungary) (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Tiltott fájl- vagy mappanév: „{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Tiltott fájltípus: „{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Nem megengedett egy fájl- vagy mappanévben: „{segment}".']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}fájlt érintő konfliktus","{count} fájlt érintő konfliktus"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fájlt érintő konfliktus a mappában: {dirname}","{count}fájlt érintő konfliktus a mappában: {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS 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"]},Cancel:{msgid:"Cancel",msgstr:["Mégse"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Teljes művelet megszakítása"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},Continue:{msgid:"Continue",msgstr:["Tovább"]},"Create new":{msgid:"Create new",msgstr:["Új létrehozása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},"Existing version":{msgid:"Existing version",msgstr:["Jelenlegi változat"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Fájlnevek nem végződhetnek erre: „{segment}”."]},"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:["Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Érvénytelen fájlnév"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Utolsó módosítás dátuma ismeretlen"]},New:{msgid:"New",msgstr:["Új"]},"New filename":{msgid:"New filename",msgstr:["Új fájlnév"]},"New version":{msgid:"New version",msgstr:["Új verzió"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Preview image":{msgid:"Preview image",msgstr:["Kép előnézete"]},Rename:{msgid:"Rename",msgstr:["Átnevezés"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Minden jelölőnégyzet kijelölése"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Minden jelenlegi fájl kijelölése"]},"Select all new files":{msgid:"Select all new files",msgstr:["Minden új fájl kijelölése"]},Skip:{msgid:"Skip",msgstr:["Kihagyás"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ezen fájl kihagyása","{count}fájl kihagyása"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ismeretlen méret"]},Upload:{msgid:"Upload",msgstr:["Feltöltés"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]},"Upload folders":{msgid:"Upload folders",msgstr:["Mappák feltöltése"]},"Upload from device":{msgid:"Upload from device",msgstr:["Feltöltés eszközről"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Feltöltés meg lett szakítva"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Feltöltés át lett ugorva"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["„{folder}” feltöltése át lett ugorva"]},"Upload progress":{msgid:"Upload progress",msgstr:["Feltöltési folyamat"]},"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:["Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek."]},"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:["Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mely fájlokat kívánja megtartani?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["A folytatáshoz minden fájlból legalább egy verziót ki kell választani."]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly , 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nEmpty Slot Filler, 2023\nLinerly , 2023\n"},msgstr:["Last-Translator: Linerly , 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli , 2025","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:\nJoas Schilling, 2024\nSveinn í Felli , 2025\n"},msgstr:["Last-Translator: Sveinn í Felli , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er bannað sem heiti á skrá eða möppu.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er bönnuð skráartegund.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ekki leyfilegt innan í heiti á skrá eða möppu.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} sekúnda eftir","{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"]},assembling:{msgid:"assembling",msgstr:["set saman"]},Cancel:{msgid:"Cancel",msgstr:["Hætta við"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Hætta við alla aðgerðina"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"Create new":{msgid:"Create new",msgstr:["Búa til nýtt"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"Failed assembling the chunks together":{msgid:"Failed assembling the chunks together",msgstr:["Mistókst að setja saman bútana"]},"Failed uploading the file":{msgid:"Failed uploading the file",msgstr:["Mistókst að senda inn skrána"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Skráaheiti mega ekki enda á "{segment}".']},"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:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti innkomandi skrárinnar."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ógilt skráarheiti"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New filename":{msgid:"New filename",msgstr:["Nýtt skráarheiti"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},Rename:{msgid:"Rename",msgstr:["Endurnefna"]},"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:{msgid:"Skip",msgstr:["Sleppa"]},"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:{msgid:"Upload",msgstr:["Senda inn"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Upload folders":{msgid:"Upload folders",msgstr:["Senda inn möppur"]},"Upload from device":{msgid:"Upload from device",msgstr:["Senda inn frá tæki"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Hætt hefur verið við innsendingu"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Innsendingu hefur verið sleppt"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Innsendingu á "{folder}" hefur verið sleppt']},"Upload progress":{msgid:"Upload progress",msgstr:["Framvinda innsendingar"]},"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:["Þegar valin er mappa fyrir skrár sem berast, verður einnig skrifað yfir allar skrár í henni sem valda árekstrum."]},"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:["Þegar valin er mappa fyrir skrár sem berast, verður efnið skrifað inn í fyrirliggjandi möppu og farið í að leysa úr árekstrum."]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Þú getur annaðhvort endurnefnt skrána, sleppt þessari skrá eða hætt við alla þessa aðgerð."]},"You need to select 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":"Roberto Resoli, 2025","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:\nJoas Schilling, 2024\nFrancesco Sercia, 2024\nalbanobattistella , 2024\nLorenzo Taiocchi, 2025\nesseti kappa, 2025\nRoberto Resoli, 2025\n"},msgstr:["Last-Translator: Roberto Resoli, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" è un nome di file o cartella proibito.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}"è un tipo di file proibito.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" non è consentito all\'interno di un nome di file o cartella.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} secondo rimanente ","{seconds} secondi rimanenti ","{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"]},assembling:{msgid:"assembling",msgstr:["assemblaggio"]},Cancel:{msgid:"Cancel",msgstr:["Annulla"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annulla l'intera operazione"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"Create new":{msgid:"Create new",msgstr:["Crea nuovo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Impossibile unire i pezzi"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Impossibile caricare il file"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['I nomi dei file non devono terminare con "{segment}".']},"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 selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome file non valido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New filename":{msgid:"New filename",msgstr:["Nuovo nome file"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},Rename:{msgid:"Rename",msgstr:["Rinomina"]},"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:{msgid:"Skip",msgstr:["Salta"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Sata {count} file","Salta {count} file","Salta {count} file"]},"Skip this file":{msgid:"Skip this file",msgstr:["Salta questo file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},Upload:{msgid:"Upload",msgstr:["Caricamento"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Upload folders":{msgid:"Upload folders",msgstr:["Carica cartelle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carica dal dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Caricamento annullato"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Il caricamento è stato saltato"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Il caricamento di "{folder}" è stato saltato']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso del caricamento"]},"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 si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti."]},"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:["Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["È possibile rinominare il file, ignorarlo o annullare l'intera operazione."]},"You need to select 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:"ja",json:{charset:"utf-8",headers:{"Last-Translator":"kojima.imamura, 2025","Language-Team":"Japanese (Japan) (https://app.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:\nJoas Schilling, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\n貴宝, 2025\nkshimohata, 2025\nkojima.imamura, 2025\n"},msgstr:["Last-Translator: kojima.imamura, 2025\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" は禁止されているファイルまたはフォルダ名です。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" は禁止されているファイルタイプです。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['ファイルまたはフォルダ名に "{segment}" を含めることはできません。']},"{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",msgid_plural:"{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:["残り数秒"]},assembling:{msgid:"assembling",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:["既存バージョン"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["チャンクの組み立てに失敗しました"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["ファイルのアップロードに失敗しました"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['ファイル名の末尾に "{segment}" を付けることはできません。']},"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 filename":{msgid:"Invalid filename",msgstr:["無効なファイル名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最終更新日不明"]},New:{msgid:"New",msgstr:["新規作成"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} 個のファイルをスキップする"]},"Skip this file":{msgid:"Skip this file",msgstr:["このファイルをスキップする"]},"Unknown size":{msgid:"Unknown size",msgstr:["サイズ不明"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["アップロードがスキップされました"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" のアップロードがスキップされました']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:["続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。"]}}}}},{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":"보헤민, 2025","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\nshin2012 , 2025\n이상오, 2025\n보헤민, 2025\n"},msgstr:["Last-Translator: 보헤민, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}"은(는) 금지된 파일 및 폴더 이름입니다.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}"은(는) 금지된 파일 형식입니다.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['파일이나 폴더 이름에 "{segment}"을(를) 사용할 수 없습니다.']},"{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",msgid_plural:"{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:["곧 완료"]},assembling:{msgid:"assembling",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:["현재 버전"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["조각을 취합하는 데 실패"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["파일을 업로드하는 데 실패"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['파일 이름은 "{segment}"(으)로 끝나야 합니다.']},"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 filename":{msgid:"Invalid filename",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count}개 파일 건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgstr:["이 파일 건너뛰기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["업로드를 건너뛰었습니다."]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" 업로드를 건너뛰었습니다.']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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":"bone NI, 2025","Language-Team":"Lao (https://app.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:\nbone NI, 2025\n"},msgstr:["Last-Translator: bone NI, 2025\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ແມ່ນຊື່ໄຟລ໌ ຫຼື ໂຟລເດີທີ່ບໍ່ອະນຸຍາດ.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ແມ່ນປະເພດໄຟລ໌ທີ່ບໍ່ອະນຸຍາດ.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['ບໍ່ອະນຸຍາດໃຫ້ມີ "{segment}" ຢູ່​ໃນຊື່ໄຟລ໌ ຫຼື ໂຟລເດີ.']},"{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:["ໄຟລ໌ຊ້ຳກັນ {count} ລາຍການ ໃນ {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{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:["ເຫຼືອເວລາອີກບໍ່ດົນ"]},assembling:{msgid:"assembling",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:["ສະບັບທີ່ມີຢູ່ແລ້ວ"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["ການຮວບຮວມສ່ວນຕ່າງໆເຂົ້າກັນບໍ່ສຳເລັດ"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["ອັບໂຫຼດໄຟລ໌ບໍ່ສຳເລັດ"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['ຊື່ໄຟລ໌ຕ້ອງບໍ່ລົງທ້າຍດ້ວຍ "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["ຊື່ໄຟລ໌ບໍ່ຖືກຕ້ອງ"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["ບໍ່ຊາບວັນທີແກ້ໄຂຫຼ້າສຸດ"]},New:{msgid:"New",msgstr:["ໃໝ່"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["ຂ້າມ {count} ໄຟລ໌"]},"Skip this file":{msgid:"Skip this file",msgstr:["ຂ້າມໄຟລ໌ນີ້"]},"Unknown size":{msgid:"Unknown size",msgstr:["ບໍ່ຊາບຂະໜາດ"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["ການອັບໂຫຼດໄດ້ຖືກຂ້າມໄປແລ້ວ"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['ການອັບໂຫຼດ "{folder}" ໄດ້ຖືກຂ້າມໄປແລ້ວ']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"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":"Edgars Andersons, 2025","Language-Team":"Latvian (https://app.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:\nPapuass , 2024\nArmīns Jeltajevs , 2024\nEdgars Andersons, 2025\n"},msgstr:["Last-Translator: Edgars Andersons, 2025\nLanguage-Team: Latvian (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ir aizliegts datnes vai mapes nosaukums.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ir aizliegts datnes veids.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ir nav ļauts datnes vai mapes nosaukumā.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} nesaderīgu datņu","{count} nesaderīga datne","{count} nesaderīgas datnes"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} nesaderīgu datņu {dirname}","{count} nesaderīga datne {dirname}","{count} nesaderīgas datnes {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["Atlikušas {seconds} sekundes","Atlikusi {seconds} sekunde","Atlikušas {seconds} sekundes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["atlicis {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["atlikušas dažas sekundes"]},assembling:{msgid:"assembling",msgstr:["sakopo"]},Cancel:{msgid:"Cancel",msgstr:["Atcelt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Atcelt visu darbību"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Atcelt augšupielādes"]},Continue:{msgid:"Continue",msgstr:["Turpināt"]},"Create new":{msgid:"Create new",msgstr:["Izveidot jaunu"]},"estimating time left":{msgid:"estimating time left",msgstr:["paredzamais atlikušais laiks"]},"Existing version":{msgid:"Existing version",msgstr:["Esošā versija"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Neizdevās apvienot gabalus"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Neizdevās augšupielādēt datni"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Datnes nosaukumi nedrīkst beigties ar "{segment}".']},"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:["Ja atlasa abas versijas, ienākošās datnes nosaukumam tiks pievienots skaitlis."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nederīgs datnes nosaukums"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Pēdējais izmainīšanas datums nav zināms"]},New:{msgid:"New",msgstr:["Jauns"]},"New filename":{msgid:"New filename",msgstr:["Jauns datnes nosaukums"]},"New version":{msgid:"New version",msgstr:["Jauna versija"]},paused:{msgid:"paused",msgstr:["apturēta"]},"Preview image":{msgid:"Preview image",msgstr:["Priekšskatīt attēlu"]},Rename:{msgid:"Rename",msgstr:["Pārdēvēt"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Atlasīt visas izvēles rūtiņas"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Atlasīt visas esošās datnes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Atlasīt visas jaunās datnes"]},Skip:{msgid:"Skip",msgstr:["Izlaist"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Izlaist {count} datņu","Izlaist {count} datni","Izlaist {count} datnes"]},"Skip this file":{msgid:"Skip this file",msgstr:["Izlaist šo datni"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nezināms izmērs"]},Upload:{msgid:"Upload",msgstr:["Augšupielādēt"]},"Upload files":{msgid:"Upload files",msgstr:["Augšupielādēt datnes"]},"Upload folders":{msgid:"Upload folders",msgstr:["Augšupielādēt mapes"]},"Upload from device":{msgid:"Upload from device",msgstr:["Augšupielādēt no ierīces"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Augšupielāde tika atcelta"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Augšupielāde tika izlaista"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" augšupielāde tika izlaista']},"Upload progress":{msgid:"Upload progress",msgstr:["Augšupielādes virzība"]},"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:["Kad ir atlasīta ienākošā mape, tiks pārrakstītas arī jebkuras tajā esošās nesaderīgās datnes."]},"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:["Kad ir atlasīta ienākošā mape, saturs tiks rakstīts esošajā mapē, un tiks veikta rekursīva nesaderību novēršana."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Kuras datnes paturēt?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Datni var vai nu pārdēvēt, vai izlaist vai atcelt visu darbību."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ir nepieciešams atlasīt vismaz vienu katras datnes versiju, lai turpinātu."]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров , 2025","Language-Team":"Macedonian (https://app.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:\nJoas Schilling, 2024\nСашко Тодоров , 2025\n"},msgstr:["Last-Translator: Сашко Тодоров , 2025\nLanguage-Team: Macedonian (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" е забрането име на датотека или име на папка.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" е забранет вид на датотека.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" не е дозволено во името датотека или папка.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{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}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["уште {seconds} секунда","уште {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:["уште неколку секунди"]},assembling:{msgid:"assembling",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:["Постоечка верзија"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Неуспешно составување на парчињата заедно"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Неуспешно прикачување на датотека"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Имињата на датотеките не смеат да завршуваат со "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["Невалидно име на датотека"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Непознат датумот на последната измена"]},New:{msgid:"New",msgstr:["Нова"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Прескокни {count} датотека","Прескокни {count} датотеки"]},"Skip this file":{msgid:"Skip this file",msgstr:["Прескокни ја оваа датотека"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната големина"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Прикачувањето е прескокнато"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Прикачувањето на "{folder}" е прескокнато']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"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":"DT Navy, 2024","Language-Team":"Malay (Malaysia) (https://app.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:\nDT Navy, 2024\n"},msgstr:["Last-Translator: DT Navy, 2024\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" adalah fail dan nama folder yang dilarang']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" adalah jenis fail yang dilarang']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" adalah tidak dibenarkan dalam nama fail atau folder']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} files bertindih"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fail bertindih dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saat tinggal"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tinggal"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["beberapa saat lagi"]},Cancel:{msgid:"Cancel",msgstr:["batal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Batal keseluruhan operasi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["batal muat naik"]},Continue:{msgid:"Continue",msgstr:["teruskan"]},"Create new":{msgid:"Create new",msgstr:["Buat baharu"]},"estimating time left":{msgid:"estimating time left",msgstr:["jangkaan masa tinggal"]},"Existing version":{msgid:"Existing version",msgstr:["versi sedia ada"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Nama fail tidak boleh berakhir dengan "{segment}".']},"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:["Jika dua versi dipilih, fail yang masuk akan ditambah bilangan pada namanya."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nama fail tidak sah"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tarikh terakhir diubah suai tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New filename":{msgid:"New filename",msgstr:["Nama fail baharu"]},"New version":{msgid:"New version",msgstr:["Versi baharu"]},paused:{msgid:"paused",msgstr:["Jeda"]},"Preview image":{msgid:"Preview image",msgstr:["Pratonton gambar"]},Rename:{msgid:"Rename",msgstr:["Menamakan semula"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak pilihan"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua fail yang wujud"]},"Select all new files":{msgid:"Select all new files",msgstr:["pilih semua fail baharu"]},Skip:{msgid:"Skip",msgstr:["Langkau"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Langkau fail {count}"]},"Unknown size":{msgid:"Unknown size",msgstr:["Saiz tidak diketahui"]},Upload:{msgid:"Upload",msgstr:["Muat naik"]},"Upload files":{msgid:"Upload files",msgstr:["Muat naik fail"]},"Upload folders":{msgid:"Upload folders",msgstr:["Muat naik folder"]},"Upload from device":{msgid:"Upload from device",msgstr:["Muat naik dari peranti"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Muat naik telah dibatalkan"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Muat naik telah dilangkau"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Muat naik "{folder}" telah dilangkau']},"Upload progress":{msgid:"Upload progress",msgstr:["Kemajuan muat naik"]},"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:["Apabila folder masuk dipilih, sebarang fail bertindih akan ditulis semula"]},"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:["Apabila folder masuk dipilih, kandungan ditulis ke dalam folder sedia ada dan penyelesaian konflik rekursif dilakukan."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Fail yang mana ingin disimpan?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["And boleh menamakan semula fail, langkau fail tersebut atau membatalkan keseluruhan operasi"]},"You need to select 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 perlu memilih sekurangnya satu versi setiap fail untuk teruskan"]}}}}},{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",json:{charset:"utf-8",headers:{"Last-Translator":"Roger Knutsen, 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:\nJoas Schilling, 2024\nRoger Knutsen, 2024\n"},msgstr:["Last-Translator: Roger Knutsen, 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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tillatt i et fil- eller mappenavn.']},"{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:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hele operasjonen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"Create new":{msgid:"Create new",msgstr:["Opprett ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavn må ikke slutte med "{segment}".']},"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:["Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldig filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},Rename:{msgid:"Rename",msgstr:["Omdøp"]},"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:{msgid:"Skip",msgstr:["Hopp over"]},"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 files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Last opp mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Last opp fra enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Opplastingen er kansellert"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Opplastingen er hoppet over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Opplasting av "{folder}" er hoppet over']},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"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 innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet."]},"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 innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen."]},"You need to select 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":"Stephan Paternotte , 2025","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:\nJoas Schilling, 2024\nJoris deLeeuw, 2025\nStephan Paternotte , 2025\n"},msgstr:["Last-Translator: Stephan Paternotte , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" is een verboden bestands- of mapnaam.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" is een verboden bestandstype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" is niet toegestaan in een bestand of mapnaam.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} bestandsconflict","{count} bestanden conflicteren"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} bestandsconflict in {dirname}","{count} bestandenconflicten in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} seconde resterend","{seconds} seconden resterend"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} resterend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden over"]},assembling:{msgid:"assembling",msgstr:["samenstellen"]},Cancel:{msgid:"Cancel",msgstr:["Annuleren"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["De hele bewerking annuleren"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploaden annuleren"]},Continue:{msgid:"Continue",msgstr:["Doorgaan"]},"Create new":{msgid:"Create new",msgstr:["Nieuw aanmaken"]},"estimating time left":{msgid:"estimating time left",msgstr:["resterende tijd schatten"]},"Existing version":{msgid:"Existing version",msgstr:["Bestaande versie"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Kon de stukken niet samenvoegen"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Het uploaden van het bestand is mislukt"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Bestandsnamen mogen niet eindigen met "{segment}".']},"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:["Als je beide versies selecteert, krijgt het binnenkomende bestand een nummer toegevoegd aan de naam."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ongeldige bestandsnaam"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Laatst gewijzigde datum onbekend"]},New:{msgid:"New",msgstr:["Nieuw"]},"New filename":{msgid:"New filename",msgstr:["Nieuwe bestandsnaam"]},"New version":{msgid:"New version",msgstr:["Nieuwe versie"]},paused:{msgid:"paused",msgstr:["gepauzeerd"]},"Preview image":{msgid:"Preview image",msgstr:["Voorbeeldweergave"]},Rename:{msgid:"Rename",msgstr:["Hernoemen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle opties selecteren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle bestanden selecteren"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle nieuwe bestanden selecteren"]},Skip:{msgid:"Skip",msgstr:["Overslaan"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} bestand overslaan","{count} bestanden overslaan"]},"Skip this file":{msgid:"Skip this file",msgstr:["Dit bestand overslaan"]},"Unknown size":{msgid:"Unknown size",msgstr:["Onbekende grootte"]},Upload:{msgid:"Upload",msgstr:["Uploaden"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]},"Upload folders":{msgid:"Upload folders",msgstr:["Mappen uploaden"]},"Upload from device":{msgid:"Upload from device",msgstr:["Uploaden vanaf apparaat"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload is geanulleerd"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload is overgeslagen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload van "{folder}" is overgeslagen']},"Upload progress":{msgid:"Upload progress",msgstr:["Uploadvoortgang"]},"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:["Wanneer een inkomende map is geselecteerd, worden alle conflicterende bestanden daarin ook overschreven."]},"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:["Wanneer een inkomende map is geselecteerd, wordt de inhoud in de bestaande map geschreven en wordt er een recursieve conflictoplossing uitgevoerd."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welke bestanden wil je behouden?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Je kunt het bestand ofwel hernoemen, dit bestand overslaan of de hele bewerking annuleren."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Je moet minstens één versie van elk bestand selecteren om door te gaan."]}}}}},{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":"Valdnet, 2025","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 Strebski , 2024\nValdnet, 2025\n"},msgstr:["Last-Translator: Valdnet, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" to zabroniona nazwa pliku lub katalogu.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" jest zabronionym typem pliku.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Znak "{segment}" nie jest dozwolony w nazwie pliku lub katalogu.']},"{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"]},"Create new":{msgid:"Create new",msgstr:["Utwórz nowe"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Nazwy plików nie mogą kończyć się na "{segment}".']},"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."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nieprawidłowa nazwa pliku"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New filename":{msgid:"New filename",msgstr:["Nowa nazwa pliku"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},Rename:{msgid:"Rename",msgstr:["Zmiana nazwy"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie pola wyboru"]},"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:{msgid:"Skip",msgstr:["Pomiń"]},"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:{msgid:"Upload",msgstr:["Wyślij"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload folders":{msgid:"Upload folders",msgstr:["Wyślij katalogi"]},"Upload from device":{msgid:"Upload from device",msgstr:["Wyślij z urządzenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Wysyłanie zostało anulowane"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Wysyłanie zostało pominięte"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Wysyłanie "{folder}" zostało pominięte']},"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 katalogu 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 katalogu przychodzącego zawartość jest zapisywana w istniejącym katalogu 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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację."]},"You need to select 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":"F Bausch, 2025","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes , 2024\nRodrigo Sottomaior Macedo , 2024\nF Bausch, 2025\n"},msgstr:["Last-Translator: F Bausch, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" é um nome de arquivo ou pasta proibido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" é um tipo de arquivo proibido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" não é permitido dentro de um nome de arquivo ou pasta.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} segundo restante","{seconds} segundos restantes","{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"]},assembling:{msgid:"assembling",msgstr:["montando"]},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"]},"Create new":{msgid:"Create new",msgstr:["Criar novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Falha ao montar os pedaços juntos"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Falha ao fazer o upload do arquivo"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Os nomes dos arquivos não devem terminar com "{segment}".']},"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 você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome de arquivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de arquivo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Selecionar todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecionar todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecionar todos os novos arquivos"]},Skip:{msgid:"Skip",msgstr:["Pular"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Pular {count} arquivo","Pular {count} de arquivos","Pular {count} arquivos"]},"Skip this file":{msgid:"Skip this file",msgstr:["Pular este arquivo"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},Upload:{msgid:"Upload",msgstr:["Fazer upload"]},"Upload files":{msgid:"Upload files",msgstr:["Fazer upload de arquivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Fazer upload de pastas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Fazer upload do dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O upload foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O upload foi pulado"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['O upload de "{folder}" foi pulado']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso de upload"]},"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 recebida é selecionada, todos os arquivos conflitantes dentro dela também serão sobrescritos."]},"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:["Quando uma pasta recebida é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operaçã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:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"artur25 , 2025","Language-Team":"Portuguese (Portugal) (https://app.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:\nJoas Schilling, 2024\nguilherme ferreira, 2025\nartur25 , 2025\n"},msgstr:["Last-Translator: artur25 , 2025\nLanguage-Team: Portuguese (Portugal) (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" é um Nome de arquivo ou pasta proibido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" é um tipo de ficheiro proibido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" não é permitido num nome de ficheiro ou pasta.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["Conflito em {count} ficheiro","Conflito em {count} ficheiros","Conflito em {count} ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiro em {dirname}","{count} conflitos de ficheiro em {dirname}","{count} conflitos de ficheiro em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["Falta {seconds} segundo","Faltam {seconds} segundos","Faltam {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},assembling:{msgid:"assembling",msgstr:["montagem"]},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 envios"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Criar novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Falha ao juntar os fragmentos"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Falha ao carregar o ficheiro"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Os nomes de ficheiro não podem terminar em "{segment}".']},"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 selecionar ambas as versões, será adicionado um número ao nome do ficheiro recebido."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome de ficheiro inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de ficheiro"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Pré-visualizar imagem"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Selecionar todas as caixas de verificação"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Ignorar"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} ficheiro","Ignorar {count} ficheiros","Ignorar {count} ficheiros"]},"Skip this file":{msgid:"Skip this file",msgstr:["Ignorar este ficheiro"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},Upload:{msgid:"Upload",msgstr:["Carregar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Carregar pastas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carregar a partir do dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O carregamento foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O carregamento foi ignorado"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['O carregamento da pasta "{folder}" foi ignorado']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso do carregamento"]},"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:["Ao selecionar uma pasta recebida, quaisquer ficheiros em conflito no seu interior também serão sobrescritos."]},"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:["Ao selecionar uma pasta recebida, o conteúdo é escrito na pasta existente e é efetuada uma resolução de conflitos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais ficheiros pretende manter?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Pode renomear o ficheiro, ignorá-lo ou cancelar toda a operaçã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:["Precisa de selecionar pelo menos uma versão de cada ficheiro para continuar."]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu , 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu , 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu , 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Igor Orlov, 2025","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\nВлад, 2024\nAlex , 2024\nRoman Stepanov, 2024\nMaksim Sukharev, 2024\nАлександр, 2025\nIgor Orlov, 2025\n"},msgstr:["Last-Translator: Igor Orlov, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» — это запрещенное имя файла или папки."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» — это запрещенный тип файла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» не допускается в имени файла или папки."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["осталась {seconds} секунда","осталось {seconds} секунды","осталось {seconds} секунд","осталось {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:["осталось несколько секунд"]},assembling:{msgid:"assembling",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:["Текущая версия"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Не удалось собрать части вместе"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Не удалось загрузить файл"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена файлов не должны заканчиваться на «{segment}»"]},"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 filename":{msgid:"Invalid filename",msgstr:["Неверное имя файла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Пропустить {count} файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Skip this file":{msgid:"Skip this file",msgstr:["Пропустить этот файл"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Загрузка была пропущена"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Загрузка «{folder}» была пропущена"]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"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:"sk",json:{charset:"utf-8",headers:{"Last-Translator":"Anton Krajcik , 2025","Language-Team":"Slovak (Slovakia) (https://app.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:\nJozef Gaal , 2024\nLinker Linker , 2024\nAnton Krajcik , 2025\n"},msgstr:["Last-Translator: Anton Krajcik , 2025\nLanguage-Team: Slovak (Slovakia) (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ je zakázaný názov súboru alebo priečinka."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je zákazaný typ súboru.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}“ je zakázané v názve súboru alebo adresára.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} súbor má konflikt","{count} súbory majú konflikt","{count} súborov má konflikt","{count} súborov má konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} súborový konflikt v {dirname}","{count} súborové konflikty v {dirname}","{count} súborových konfliktov v {dirname}","{count} súborových konfliktov v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} sekunda zostáva","{seconds} sekúnd zostáva","{seconds} sekúnd zostáva","{seconds} sekundy zostávajú"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} zostáva"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zostáva niekoľko sekúnd"]},assembling:{msgid:"assembling",msgstr:["zhromažďovanie"]},Cancel:{msgid:"Cancel",msgstr:["Zrušiť"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušiť celú operáciu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušiť nahrávanie"]},Continue:{msgid:"Continue",msgstr:["Pokračovať"]},"Create new":{msgid:"Create new",msgstr:["Vytvoriť nové"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovanie zostávajúceho času"]},"Existing version":{msgid:"Existing version",msgstr:["Existujúca verzia"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Nepodarilo sa dať časti dohromady."]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Nepodarilo sa nahrať súbor"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Názvy súborov nesmú končiť znakom "{segment}".']},"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:["Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný názov súboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dátum poslednej úpravy neznámy"]},New:{msgid:"New",msgstr:["Nový"]},"New filename":{msgid:"New filename",msgstr:["Nový názov súboru"]},"New version":{msgid:"New version",msgstr:["Nová verzia"]},paused:{msgid:"paused",msgstr:["pozastavené"]},"Preview image":{msgid:"Preview image",msgstr:["Náhľad obrázka"]},Rename:{msgid:"Rename",msgstr:["Premenovať"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označiť všetky výberové políčka"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrať všetky existujúce súbory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrať všetky nové súbory"]},Skip:{msgid:"Skip",msgstr:["Preskočiť"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Preskočiť {count} súbor","Preskočiť {count} súborov","Preskočiť {count} súborov","Preskočiť {count} súbory"]},"Skip this file":{msgid:"Skip this file",msgstr:["Preskočiť tento súbor"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznáma veľkosť"]},Upload:{msgid:"Upload",msgstr:["Nahrať"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrať súbory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrať priečinky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrať zo zariadenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávanie bolo zrušené"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrávanie bolo preskočené"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nahrávanie "{folder}" bolo preskočené']},"Upload progress":{msgid:"Upload progress",msgstr:["Priebeh nahrávania"]},"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:["Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom."]},"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 výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Ktoré súbory chcete ponechať?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru."]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.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:\nJoas Schilling, 2024\nJan Kraljič , 2024\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" je prepovedano ime datoteka ali mape.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je prepovedan tip datoteke.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ni dovoljeno v imenu datoteke ali mape.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["1{count} datoteka je v konfliktu","1{count} datoteki sta v konfiktu","1{count} datotek je v konfliktu","{count} datotek je v konfliktu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} datoteka je v konfiktu v {dirname}","{count} datoteki sta v konfiktu v {dirname}","{count} datotek je v konfiktu v {dirname}","{count} konfliktov datotek v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Cancel:{msgid:"Cancel",msgstr:["Prekliči"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Prekliči celotni postopek"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},Continue:{msgid:"Continue",msgstr:["Nadaljuj"]},"Create new":{msgid:"Create new",msgstr:["Ustvari nov"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjujem čas do konca"]},"Existing version":{msgid:"Existing version",msgstr:["Obstoječa različica"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Imena datotek se ne smejo končati s "{segment}".']},"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:["Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nepravilno ime datoteke"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum zadnje spremembe neznan"]},New:{msgid:"New",msgstr:["Nov"]},"New filename":{msgid:"New filename",msgstr:["Novo ime datoteke"]},"New version":{msgid:"New version",msgstr:["Nova različica"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Preview image":{msgid:"Preview image",msgstr:["Predogled slike"]},Rename:{msgid:"Rename",msgstr:["Preimenuj"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Izberi vsa potrditvena polja"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Označi vse obstoječe datoteke"]},"Select all new files":{msgid:"Select all new files",msgstr:["Označi vse nove datoteke"]},Skip:{msgid:"Skip",msgstr:["Preskoči"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskoči datoteko","Preskoči {count} datoteki","Preskoči {count} datotek","Preskoči {count} datotek"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznana velikost"]},Upload:{msgid:"Upload",msgstr:["Naloži"]},"Upload files":{msgid:"Upload files",msgstr:["Naloži datoteke"]},"Upload folders":{msgid:"Upload folders",msgstr:["Naloži mape"]},"Upload from device":{msgid:"Upload from device",msgstr:["Naloži iz naprave"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nalaganje je bilo preklicano"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nalaganje je bilo preskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nalaganje "{folder}" je bilo preskočeno']},"Upload progress":{msgid:"Upload progress",msgstr:["Napredek nalaganja"]},"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:["Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane."]},"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:["Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Katere datoteke želite obdržati?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Izbrati morate vsaj eno različico vsake datoteke da nadaljujete."]}}}}},{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":"Иван Пешић, 2025","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:\nJoas Schilling, 2024\nИван Пешић, 2025\n"},msgstr:["Last-Translator: Иван Пешић, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” је забрањено име фајла или фолдера."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” је забрањен тип фајла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}” није дозвољено унутар имена фајла или фолдера."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["преостало је {seconds} секунда","преостало је {seconds} секунде","преостало је {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:["преостало је неколико секунди"]},assembling:{msgid:"assembling",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:["Постојећа верзија"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Није успело састављање делова"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Није успело отпремање фајла"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена фајлова не смеју да се завршавају на „{segment}”."]},"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 filename":{msgid:"Invalid filename",msgstr:["Неисправно име фајла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Прескочи {count} фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Skip this file":{msgid:"Skip this file",msgstr:["Прескочи овај фајл"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Отпремање је прескочено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Отпремање „{folder}”је прескочено"]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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, 2025","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, 2025\n"},msgstr:["Last-Translator: Magnus Höglund, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" är ett förbjudet fil- eller mappnamn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" är en förbjuden filtyp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" är inte tillåtet i ett fil- eller mappnamn.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} sekunder kvar","{seconds} sekunder kvar"]},"{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"]},assembling:{msgid:"assembling",msgstr:["Sammanställer"]},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"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Misslyckades med att sammanställa delarna"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Kunde inte ladda upp filen"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnamn får inte sluta med "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnamn"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över {count} fil","Hoppa över {count} filer"]},"Skip this file":{msgid:"Skip this file",msgstr:["Hoppa över denna fil"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},Upload:{msgid:"Upload",msgstr:["Ladda upp"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Uppladdningen har hoppats över"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Uppladdningen av "{folder}" har hoppats över']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen."]},"You need to select 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:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat , 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat , 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat , 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren , 2025","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 , 2025\n"},msgstr:["Last-Translator: Kaya Zeren , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" dosya ya da klasör adına izin verilmiyor.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" dosya türüne izin verilmiyor.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Bir dosya ya da klasör adında "{segment}" ifadesine izin verilmiyor.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı","{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ı"]},assembling:{msgid:"assembling",msgstr:["birleştiriliyor"]},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"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Parçalar birleştirilemedi"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Dosya yüklenemedi"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dosya adları "{segment}" ile bitmemeli.']},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Yeni dosya adı"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} dosyayı atla","{count} dosyayı atla"]},"Skip this file":{msgid:"Skip this file",msgstr:["Bu dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},Upload:{msgid:"Upload",msgstr:["Yükle"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Yükleme atlandı"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" klasörünün yüklenmesi atlandı']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz."]},"You need to select 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, 2025","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, 2025\n"},msgstr:["Last-Translator: O St, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" недозволене ім\'я файлу або каталогу.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" недозволений тип файлу.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" недозволене сполучення символів в назві файлу або каталогу.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} секунда залишилася","{seconds} секунди залишилося","{seconds} секунд залишилося","{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:["залишилося кілька секунд"]},assembling:{msgid:"assembling",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:["Присутня версія"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Не вдалося зібрати частинки докупи"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Не вдалося завантажити файл"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Ім\'я файлів не можуть закінчуватися на "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["Недійсне ім'я файлу"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Пропустити {count} файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Skip this file":{msgid:"Skip this file",msgstr:["Пропустити цей файл"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Завантаження пропущено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Завантаження "{folder}" пропущено']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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":"Khurshid Ibatov , 2025","Language-Team":"Uzbek (https://app.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:\nKhurshid Ibatov , 2025\n"},msgstr:["Last-Translator: Khurshid Ibatov , 2025\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" taqiqlangan fayl yoki papka nomidir.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" taqiqlangan fayl turi hisoblanadi.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" fayl yoki papka nomi ichida ruxsat berilmaydi.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fayllar ziddiyati"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count}fayl ziddiyatlari {dirname} da"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} soniya qoldi"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} qoldi"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir necha soniya qoldi"]},assembling:{msgid:"assembling",msgstr:["yig'ish"]},Cancel:{msgid:"Cancel",msgstr:["Bekor qilish"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Butun operatsiyani bekor qiling"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yuklashni bekor qilish"]},Continue:{msgid:"Continue",msgstr:["Davom eting"]},"Create new":{msgid:"Create new",msgstr:["Yangi yaratish"]},"estimating time left":{msgid:"estimating time left",msgstr:["qolgan vaqtni hisoblash"]},"Existing version":{msgid:"Existing version",msgstr:["Mavjud versiya"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Bo'laklarni birlashtirib bo'lmadi"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Fayl yuklanmadi"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Fayl nomlari bilan tugamasligi kerak "{segment}".']},"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:["Agar siz ikkala versiyani tanlasangiz, kiruvchi fayl nomiga qo'shilgan raqamga ega bo'ladi."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Fayl nomi noto‘g‘ri"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Oxirgi tahrirlangan sana noma'lum"]},New:{msgid:"New",msgstr:["Yangi"]},"New filename":{msgid:"New filename",msgstr:["Yangi nom faylga"]},"New version":{msgid:"New version",msgstr:["Yangi versiya"]},paused:{msgid:"paused",msgstr:["tanaffus"]},"Preview image":{msgid:"Preview image",msgstr:["Rasmni oldindan ko'rish"]},Rename:{msgid:"Rename",msgstr:["Qayta nomlash"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Barcha katakchalarni belgilang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Barcha mavjud fayllarni tanlang"]},"Select all new files":{msgid:"Select all new files",msgstr:["Barcha yangi fayllarni tanlang"]},Skip:{msgid:"Skip",msgstr:["Oʻtkazib yuborish"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Oʻtkazib yuborish {count} fayllarini"]},"Skip this file":{msgid:"Skip this file",msgstr:["Oʻtkazib yuborish ushbu faylni"]},"Unknown size":{msgid:"Unknown size",msgstr:["Noma'lum o'lcham"]},Upload:{msgid:"Upload",msgstr:["Yuklash"]},"Upload files":{msgid:"Upload files",msgstr:["Fayllarni yuklash"]},"Upload folders":{msgid:"Upload folders",msgstr:["Jildlarni yuklash"]},"Upload from device":{msgid:"Upload from device",msgstr:["Qurilmadan yuklash"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yuklash bekor qilindi"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Yuklash oʻtkazib yuborildi"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:[' "{folder}" ni yuklash bekor qilindi']},"Upload progress":{msgid:"Upload progress",msgstr:["Yuklash jarayoni"]},"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:["Kiruvchi jild tanlanganda, undagi har qanday ziddiyatli fayllar ham ustiga yoziladi."]},"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:["Kiruvchi jild tanlanganda, kontent mavjud jildga yoziladi va nizolarni rekursiv hal qilish amalga oshiriladi."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Qaysi fayllarni saqlamoqchisiz?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Siz fayl nomini o'zgartirishingiz, ushbu faylni o'tkazib yuborishingiz yoki butun operatsiyani bekor qilishingiz mumkin."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Davom etish uchun har bir faylning kamida bitta versiyasini tanlashingiz kerak."]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"nhatCreA, 2025","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:\nJoas Schilling, 2024\nnhatCreA, 2025\n"},msgstr:["Last-Translator: nhatCreA, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" là tên thư mục bị cấm đặt.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" là loại tệp bị cấm.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" không được phép đặt trong tên tệp hoặc thư mục.']},"{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 ở thư mục "{dirname}"']},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} giây trước"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} trước"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["vài giây trước"]},assembling:{msgid:"assembling",msgstr:["đang cấu trúc"]},Cancel:{msgid:"Cancel",msgstr:["Huỷ"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Huỷ toàn bộ thao tác"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"Create new":{msgid:"Create new",msgstr:["Tạo mới"]},"estimating time left":{msgid:"estimating time left",msgstr:["ước tính thời gian còn lại"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên bản hiện tại"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Không thể assemble các chunks lại với nhau"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Tải lên tệp tin thất bại"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Tên tập tin không được kết thúc bằng "{segment}".']},"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:["Nếu bạn chọn cả hai, tệp tin đến sẽ có thêm một chữ số vào tên."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Tên tệp tin không hợp lệ"]},"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 filename":{msgid:"New filename",msgstr:["Tên tệp tin 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"]},Rename:{msgid:"Rename",msgstr:["Đổi tên"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin đang tồn tại"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},Skip:{msgid:"Skip",msgstr:["Bỏ qua"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Bỏ qua {count} tệp"]},"Skip this file":{msgid:"Skip this file",msgstr:["Bỏ qua tệp này"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},Upload:{msgid:"Upload",msgstr:["Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tải lên tệp tin"]},"Upload folders":{msgid:"Upload folders",msgstr:["Tải lên thư mục"]},"Upload from device":{msgid:"Upload from device",msgstr:["Tải lên từ thiết bị"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Tải lên đã bị huỷ"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Tải lên đã bỏ qua"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Tải lên "{folder}" đã bị bỏ qua']},"Upload progress":{msgid:"Upload progress",msgstr:["Tiến trình tải lê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:["Khi bạn chọn một thư mục để đưa vào, bất kỳ tệp nào trong đó gây xung đột cũng sẽ bị ghi đè."]},"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:["Khi chọn một thư mục để đưa vào, nội dung sẽ được ghi vào thư mục hiện có, và hệ thống sẽ tự động giải quyết các xung đột một cách chi tiết và cẩn thận."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tệp nào?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Bạn có thể đổi tên tệp, bỏ qua tệp này, hoặc hủy toàn bộ thao tác."]},"You need to select 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 cho mỗi tệp để tiếp tục."]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"DWXXX, 2025","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:\nJoas Schilling, 2024\ngloryandel, 2024\nDWXXX, 2025\n"},msgstr:["Last-Translator: DWXXX, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是被禁止的文件名或文件夹名。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是被禁止的文件类型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允许包含在文件名或文件夹名中。']},"{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",msgid_plural:"{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:["还剩几秒"]},assembling:{msgid:"assembling",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:["服务端版本"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["组合区块失败"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["上传文件失败"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['文件名不得以 "{segment}" 结尾。']},"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 filename":{msgid:"Invalid filename",msgstr:["无效文件名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},New:{msgid:"New",msgstr:["新建"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["跳过 {count} 文件"]},"Skip this file":{msgid:"Skip this file",msgstr:["跳过此文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["上传已跳过"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['已跳过上传"{folder}"']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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, 2025","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, 2025\n"},msgstr:["Last-Translator: Café Tango, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是禁止使用的檔案或資料夾名稱。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是禁止使用的檔案類型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允許出現在檔案或資料夾名稱中。']},"{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",msgid_plural:"{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:["還剩幾秒"]},assembling:{msgid:"assembling",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:["既有版本"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["無法組裝這些部分"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["無法上傳檔案"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['檔案名不得以 "{segment}" 結尾。']},"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 filename":{msgid:"Invalid filename",msgstr:["無效的檔案名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Skip this file":{msgid:"Skip this file",msgstr:["略過這個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["上傳已被跳過"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" 的上傳已被跳過']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以選擇重新命名檔案、跳過此檔案或取消整個操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 , 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 , 2024\n"},msgstr:["Last-Translator: 黃柏諺 , 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map(e=>F.addTranslation(e.locale,e.json));const _=F.build(),N=_.ngettext.bind(_),P=_.gettext.bind(_);class A extends Error{constructor(e){super(P("Upload has been cancelled"),{cause:e})}}const z=(0,p.YK)().setApp("@nextcloud/upload").detectUser().build();async function j(e,s,t){const n={headers:{},onUploadProgress:()=>{},onUploadRetry:()=>{},retries:5,...t};let i;return i=s instanceof Blob?s:await s(),n.destinationFile&&(n.headers.Destination=n.destinationFile),n.headers["Content-Type"]||(n.headers["Content-Type"]="application/octet-stream"),await m.Ay.request({method:"PUT",url:e,data:i,signal:n.signal,onUploadProgress:n.onUploadProgress,headers:n.headers,"axios-retry":{retries:n.retries,retryDelay:(e,s)=>(0,f.Nv)(e,s,1e3),retryCondition:e=>507!==e.status&&(423===e.status||(0,f.Gp)(e)),onRetry:n.onUploadRetry}})}(0,f.Ay)(m.Ay,{retries:0});const I=function(e,s,t){return 0===s&&e.size<=t?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(s,s+t)],{type:"application/octet-stream"}))},W=function(e=void 0){const s=window.OC?.appConfig?.files?.max_chunk_size;if(s<=0)return 0;if(!Number(s))return 10485760;const t=Math.max(Number(s),5242880);return void 0===e?t:Math.max(t,Math.ceil(e/1e4))};var B=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(B||{});class E{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,s=!1,t,n){const i=Math.min(W()>0?Math.ceil(t/W()):1,1e4);this._source=e,this._isChunked=s&&W()>0&&i>1,this._chunks=this._isChunked?i:1,this._size=t,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}const R=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry;class Y extends File{_originalName;_path;_children;constructor(e){super([],(0,o.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,o.P8)(e),this._path=e}get size(){return this.children.reduce((e,s)=>e+s.size,0)}get lastModified(){return this.children.reduce((e,s)=>Math.max(e,s.lastModified),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChildren(e){for(const s of e)await this.addChild(s)}async addChild(e){const s=this._path&&`${this._path}/`;if(R(e))e=await new Promise((s,t)=>e.file(s,t));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const t=e.createReader(),n=await new Promise((e,s)=>t.readEntries(e,s)),i=new Y(`${s}${e.name}`);return await i.addChildren(n),void this._children.set(e.name,i)}const t=e.webkitRelativePath??e.name;if(t.includes("/")){if(!t.startsWith(this._path))throw new Error(`File ${t} is not a child of ${this._path}`);const n=t.slice(s.length),i=(0,o.P8)(n);if(i===n)this._children.set(i,e);else{const t=n.slice(0,n.indexOf("/"));if(this._children.has(t))await this._children.get(t).addChild(e);else{const n=new Y(`${s}${t}`);await n.addChild(e),this._children.set(t,n)}}}else this._children.set(e.name,e)}}class D extends h.m{_done=0;_total=0;_progress=0;_status=0;_startTime=-1;_elapsedTime=0;_speed=-1;_eta=1/0;_cutoffTime=2.5;constructor(e={}){super(),e.start&&this.resume(),e.total&&this.update(0,e.total),this._cutoffTime=e.cutoffTime??2.5}add(e){this.update(this._done+e)}update(e,s){if(2!==this.status)return;s&&s>0&&(this._total=s);const t=e-this._done,n=(Date.now()-this._startTime)/1e3;this._startTime=Date.now(),this._elapsedTime+=n,this._done=e,this._progress=this._done/this._total;const i=this._cutoffTime+n;if(this._elapsedTime>i){const e=n/(n+1/this._cutoffTime),s=this._done-t+(1-e)*t;this._speed=Math.round(s/this._elapsedTime)}else if(-1===this._speed&&this._elapsedTime>n){const s=(this._total-e)/(e/this._elapsedTime);(this._eta!==1/0||s<=2*this._cutoffTime)&&(this._eta=s)}this._speed>0&&(this._eta=Math.round((this._total-this._done)/this._speed)),this.dispatchTypedEvent("update",new CustomEvent("update",{cancelable:!1}))}reset(){this._done=0,this._total=0,this._progress=0,this._elapsedTime=0,this._eta=1/0,this._speed=-1,this._startTime=-1,this._status=0,this.dispatchTypedEvent("reset",new CustomEvent("reset"))}pause(){2===this._status&&(this._status=1,this._elapsedTime+=(Date.now()-this._startTime)/1e3,this.dispatchTypedEvent("pause",new CustomEvent("pause")))}resume(){2!==this._status&&(this._startTime=Date.now(),this._status=2,this.dispatchTypedEvent("resume",new CustomEvent("resume")))}get status(){return this._status}get progress(){return Math.round(1e4*this._progress)/100}get time(){return this._eta}get timeReadable(){if(this._eta===1/0)return P("estimating time left");if(this._eta<10)return P("a few seconds left");if(this._eta<60)return N("{seconds} seconds left","{seconds} seconds left",this._eta,{seconds:this._eta});const e=String(Math.floor(this._eta/3600)).padStart(2,"0"),s=String(Math.floor(this._eta%3600/60)).padStart(2,"0"),t=String(this._eta%60).padStart(2,"0");return P("{time} left",{time:`${e}:${s}:${t}`})}get speed(){return this._speed}get speedReadable(){return this._speed>0?`${(0,a.v7)(this._speed,!0)}∕s`:""}}var O=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(O||{});class M{_destinationFolder;_isPublic;_customHeaders;_uploadQueue=[];_jobQueue=new g.A({concurrency:(0,r.F)().files?.chunked_upload?.max_parallel_count??5});_queueSize=0;_queueProgress=0;_queueStatus=0;_eta=new D;_notifiers=[];constructor(e=!1,s){if(this._isPublic=e,this._customHeaders={},!s){const t=`${a.PY}${a.lJ}`;let n;if(e)n="anonymous";else{const e=(0,i.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}s=new a.vd({id:0,owner:n,permissions:a.aX.ALL,root:a.lJ,source:t})}this.destination=s,z.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:W()})}get destination(){return this._destinationFolder}set destination(e){if(!e||e.type!==a.pt.Folder||!e.source)throw new Error("Invalid destination folder");z.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get customHeaders(){return structuredClone(this._customHeaders)}setCustomHeader(e,s=""){this._customHeaders[e]=s}deleteCustomerHeader(e){delete this._customHeaders[e]}get queue(){return this._uploadQueue}reset(){this._eta.reset(),0===this._uploadQueue.length&&0===this._jobQueue.size||(this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0,z.debug("Uploader state reset"))}pause(){this._eta.pause(),this._jobQueue.pause(),this._queueStatus=2,this.updateStats(),z.debug("Uploader paused")}start(){this._eta.resume(),this._jobQueue.start(),this._queueStatus=1,this.updateStats(),z.debug("Uploader resumed")}get eta(){return this._eta}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map(e=>e.size).reduce((e,s)=>e+s,0),s=this._uploadQueue.map(e=>e.uploaded).reduce((e,s)=>e+s,0);if(this._eta.update(s,e),this._queueSize=e,this._queueProgress=s,2!==this._queueStatus){const e=this._uploadQueue.find(({status:e})=>[B.INITIALIZED,B.UPLOADING,B.ASSEMBLING].includes(e));this._jobQueue.size>0||e?this._queueStatus=1:(this.eta.reset(),this._queueStatus=0)}}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const s of this._notifiers)try{s(e)}catch(s){z.warn("Error in upload notifier",{error:s,source:e.source})}}batchUpload(e,s,t){return t||(t=async e=>e),new d.A(async(n,i,o)=>{const l=new Y("");await l.addChildren(s);const r=`${this.root.replace(/\/$/,"")}/${e.replace(/^\//,"")}`,d=new E(r,!1,0,l);d.status=B.UPLOADING,this._uploadQueue.push(d),z.debug("Starting new batch upload",{target:r});try{const s=(0,a.H4)(this.root,this._customHeaders),i=this.uploadDirectory(e,l,t,s);o(()=>i.cancel());const r=await i;d.status=B.FINISHED,n(r)}catch(e){(0,m.FZ)(e)||e instanceof A?(z.info("Upload cancelled by user",{error:e}),d.status=B.CANCELLED,i(new A(e))):(z.error("Error in batch upload",{error:e}),d.status=B.FAILED,i(e))}finally{this._uploadQueue.splice(this._uploadQueue.indexOf(d),1),this._notifyAll(d),this.updateStats()}})}createDirectory(e,s,t){const n=(0,l.normalize)(`${e}/${s.name}`).replace(/\/$/,""),i=`${this.root.replace(/\/$/,"")}/${n.replace(/^\//,"")}`;if(!s.name)throw new Error("Can not create empty directory");const a=new E(i,!1,0,s);return this._uploadQueue.push(a),new d.A(async(e,i,o)=>{const l=new AbortController;o(()=>l.abort()),a.signal.addEventListener("abort",()=>i(P("Upload has been cancelled"))),await this._jobQueue.add(async()=>{a.status=B.UPLOADING;try{await t.createDirectory(n,{signal:l.signal}),e(a)}catch(t){(0,m.FZ)(t)||t instanceof A?(a.status=B.CANCELLED,i(new A(t))):t&&"object"==typeof t&&"status"in t&&405===t.status?(z.debug("Directory already exists, writing into it",{directory:s.name}),a.status=B.FINISHED,e(a)):(a.status=B.FAILED,i(t))}finally{this._notifyAll(a),this.updateStats()}})})}uploadDirectory(e,s,t,n){const i=(0,l.normalize)(`${e}/${s.name}`).replace(/\/$/,"");return new d.A(async(a,o,l)=>{const r=new AbortController;l(()=>r.abort());const m=await t(s.children,i);if(!1===m)return z.debug("Upload canceled by user",{directory:s}),void o(new A("Conflict resolution cancelled by user"));if(0===m.length&&s.children.length>0)return z.debug("Skipping directory, as all files were skipped by user",{directory:s}),void a([]);const d=[],g=[];r.signal.addEventListener("abort",()=>{d.forEach(e=>e.cancel()),g.forEach(e=>e.cancel())}),z.debug("Start directory upload",{directory:s});try{s.name&&(g.push(this.createDirectory(e,s,n)),await g.at(-1));for(const e of m)e instanceof Y?d.push(this.uploadDirectory(i,e,t,n)):g.push(this.upload(`${i}/${e.name}`,e));a([await Promise.all(g),...await Promise.all(d)].flat())}catch(e){r.abort(e),o(e)}})}upload(e,s,t,a=5){const l=`${(t=t||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:g}=new URL(l),c=g+(0,o.O0)(l.slice(g.length));return this.eta.resume(),z.debug(`Uploading ${s.name} to ${c}`),new d.A(async(e,t,o)=>{R(s)&&(s=await new Promise(e=>s.file(e,t)));const d=s,g=(0,r.F)().dav?.public_shares_chunking??!1,p=W("size"in d?d.size:void 0),h=this._isPublic&&!g||0===p||"size"in d&&d.size{try{w.response=await j(c,s,{signal:w.signal,onUploadProgress:({bytes:e})=>{w.uploaded+=.9*e,this.updateStats()},onUploadRetry:()=>{w.uploaded=0,this.updateStats()},headers:{...this._customHeaders,...this._mtimeHeader(d),"Content-Type":d.type}}),w.uploaded=w.size,this.updateStats(),z.debug(`Successfully uploaded ${d.name}`,{file:d,upload:w}),e(w)}catch(e){if((0,m.FZ)(e)||e instanceof A)return w.status=B.CANCELLED,void t(new A(e));e?.response&&(w.response=e.response),w.status=B.FAILED,z.error(`Failed uploading ${d.name}`,{error:e,file:d,upload:w}),t(P("Failed to upload the file"))}this._notifyAll(w)};this._jobQueue.add(n),this.updateStats()}else{z.debug("Initializing chunked upload",{file:d,upload:w});const s=await async function(e,s=5,t=!1,a={}){let o;o=t?`${(0,u.$_)()}/public.php/dav/uploads/${(0,n.G)()}`:(0,u.dC)(`dav/uploads/${(0,i.HW)()?.uid}`);const l=`${o}/web-file-upload-${[...Array(16)].map(()=>Math.floor(16*Math.random()).toString(16)).join("")}`,r=a;return e&&(r.Destination=e),await m.Ay.request({method:"MKCOL",url:l,headers:r,"axios-retry":{retries:s,retryDelay:(e,s)=>(0,f.Nv)(e,s,1e3)}}),z.debug("Created temporary upload workspace",{url:l}),l}(c,a,this._isPublic,this._customHeaders),o=[];for(let e=0;eI(d,t,p),l=()=>{let o=0;return j(`${s}/${e+1}`,i,{signal:w.signal,destinationFile:c,retries:a,onUploadProgress:({bytes:e})=>{const s=.9*e;o+=s,w.uploaded+=s,this.updateStats()},onUploadRetry:()=>{w.uploaded-=o,o=0,this.updateStats()},headers:{...this._customHeaders,...this._mtimeHeader(d),"OC-Total-Length":d.size,"Content-Type":"application/octet-stream"}}).then(()=>{w.uploaded+=n-t-o,this.updateStats()}).catch(s=>{if(507===s?.response?.status)throw z.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:s,upload:w}),w.cancel(),w.status=B.FAILED,s;throw(0,m.FZ)(s)||(z.error(`Chunk ${e+1} ${t} - ${n} uploading failed`,{error:s,upload:w}),w.cancel(),w.status=B.FAILED),s})};o.push(this._jobQueue.add(l))}const l=async()=>{try{await Promise.all(o),w.status=B.ASSEMBLING,this.updateStats(),w.response=await m.Ay.request({method:"MOVE",url:`${s}/.file`,headers:{...this._customHeaders,...this._mtimeHeader(d),"OC-Total-Length":d.size,Destination:c}}),w.status=B.FINISHED,this.updateStats(),z.debug(`Successfully uploaded ${d.name}`,{file:d,upload:w}),e(w)}catch(e){(0,m.FZ)(e)||e instanceof A?(w.status=B.CANCELLED,t(new A(e))):(w.status=B.FAILED,t(P("Failed to assemble the chunks together"))),m.Ay.request({method:"DELETE",url:`${s}`})}finally{this._notifyAll(w)}};this._jobQueue.add(l)}return this._jobQueue.onIdle().then(()=>this.reset()),w})}_mtimeHeader(e){const s=Math.floor(e.lastModified/1e3);return s>0?{"X-OC-Mtime":s}:{}}}function q(e=(0,n.f)(),s=!1){return(s||void 0===window._nc_uploader)&&(window._nc_uploader=new M(e)),window._nc_uploader}function H(e){const s=(0,w.$V)(()=>Promise.all([t.e(4208),t.e(1764)]).then(t.bind(t,21764))),{promise:n,reject:i,resolve:o}=Promise.withResolvers();return(0,v.S)(s,{error:e,validateFilename:a.KT},(...e)=>{const[{skip:s,rename:t}]=e;s?o(!1):t?o(t):i()}),n}function V(e,s,t,n,i,a,o,l){var r="function"==typeof e?e.options:e;return s&&(r.render=s,r.staticRenderFns=t,r._compiled=!0),a&&(r._scopeId="data-v-"+a),{exports:e,options:r}}const K=V({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])},[],0,0,null).exports,J=V({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])},[],0,0,null).exports,G=V({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])},[],0,0,null).exports,$=V({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])},[],0,0,null).exports,Q=V((0,w.pM)({name:"UploadPicker",components:{IconCancel:K,IconFolderUpload:J,IconPlus:G,IconUpload:$,NcActionButton:T.A,NcActionCaption:x.A,NcActionSeparator:y.A,NcActions:U.A,NcButton:C.A,NcIconSvgWrapper:S.A,NcProgressBar:L.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noMenu:{type:Boolean,default:!1},noLabel:{type:Boolean,default:!1},primary:{type:Boolean,default:!1},destination:{type:a.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:P,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({newFileMenuEntries:[],openedMenu:!1,uploadManager:q()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter(e=>e.category===a.a7.UploadFromDevice)},menuEntriesNew(){return this.newFileMenuEntries.filter(e=>e.category===a.a7.CreateNew)},menuEntriesOther(){return this.newFileMenuEntries.filter(e=>e.category===a.a7.Other)},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},queue(){return this.uploadManager.queue},hasFailure(){return this.queue.some(e=>e.status===B.FAILED)},isAssembling(){return this.queue.some(e=>e.status===B.ASSEMBLING)},isUploading(){return this.queue.some(e=>e.status!==B.CANCELLED)},isOnlyAssembling(){return this.isAssembling&&this.queue.every(e=>0===e.size||e.status===B.ASSEMBLING||e.status===B.FINISHED)},isPaused(){return this.uploadManager.info?.status===O.PAUSED},buttonLabel(){return this.noMenu?P("Upload"):P("New")},haveMenu(){return!((this.noMenu||0===this.newFileMenuEntries.length)&&!this.canUploadFolders)}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&z.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},destination(e){this.setDestination(e)},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),(0,b.C)("u",this.onKeyDown,{stop:!0,prevent:!0,shift:!0}),(0,b.C)("Escape",this.onKeyDown,{stop:!0,prevent:!0}),z.debug("UploadPicker initialised")},methods:{etaTimeAndSpeed(){const e=this.uploadManager.eta.speedReadable;return e?`${this.uploadManager.eta.timeReadable} (${e})`:this.uploadManager.eta.timeReadable},async onClick(e){e.handler(this.destination,await this.getContent().catch(()=>[]))},onTriggerPick(e=!1){const s=this.$refs.input;this.canUploadFolders&&(s.webkitdirectory=e),this.$nextTick(()=>s.click())},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},async onPick(){const e=this.$refs.input,s=e.files?Array.from(e.files):[];try{await this.uploadManager.batchUpload("",s,(n=this.getContent,async(e,s)=>{try{const i=await n(s).catch(()=>[]),l=function(e,s){const t=s.map(e=>e.basename);return e.filter(e=>{const s="basename"in e?e.basename:e.name;return-1!==t.indexOf(s)})}(e,i);if(l.length>0){const{selected:n,renamed:a}=await async function(e,s,n,i){const a=(0,w.$V)(()=>Promise.all([t.e(4208),t.e(2457)]).then(t.bind(t,32457)));return new Promise((t,o)=>{const l=new w.Ay({name:"ConflictPickerRoot",render:r=>r(a,{props:{dirname:e,conflicts:s,content:n,recursiveUpload:!0===i?.recursive},on:{submit(e){t(e),l.$destroy(),l.$el?.parentNode?.removeChild(l.$el)},cancel(e){o(e??new Error("Canceled")),l.$destroy(),l.$el?.parentNode?.removeChild(l.$el)}}})});l.$mount(),document.body.appendChild(l.$el)})}(s,l,i,{recursive:!0});e=[...e.filter(e=>!l.includes(e)),...n,...a]}const r=[];for(const s of e)try{(0,a.KT)(s.name),r.push(s)}catch(t){if(!(t instanceof a.di))throw z.error(`Unexpected error while validating ${s.name}`,{error:t}),t;let n=await H(t);!1!==n&&(n=(0,a.E6)(n,e.map(e=>e.name)),Object.defineProperty(s,"name",{value:n}),r.push(s))}if(0===r.length&&e.length>0){const e=(0,o.P8)(s);(0,k.cf)(e?P('Upload of "{folder}" has been skipped',{folder:e}):P("Upload has been skipped"))}return r}catch(e){return z.debug("Upload has been cancelled",{error:e}),(0,k.I9)(P("Upload has been cancelled")),!1}}))}catch(e){z.debug("Error while uploading",{error:e})}finally{this.resetForm()}var n},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach(e=>{e.cancel()}),this.resetForm()},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,a.m1)(e)):z.debug("Invalid destination")},onUploadCompletion(e){e.status===B.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)},onKeyDown(e){if("u"===e.key){if(this.haveMenu)return void(this.openedMenu=!0);this.onTriggerPick()}"Escape"===e.key&&this.openedMenu&&(this.openedMenu=!1)}}}),function(){var e=this,s=e._self._c;return e._self._setupProxy,e.destination?s("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[e.haveMenu?s("NcActions",{attrs:{"aria-label":e.buttonLabel,"menu-name":e.noLabel?void 0:e.buttonLabel,open:e.openedMenu,type:e.primary?"primary":"secondary"},on:{"update:open":function(s){e.openedMenu=s}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[s("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),s("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file","close-after-click":!0},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?s("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":"","data-cy-upload-picker-menu-entry":"upload-folder"},on:{click:function(s){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconFolderUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,931184598)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e.noMenu?e._e():e._l(e.menuEntriesUpload,function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}),!e.noMenu&&e.menuEntriesNew.length>0?[s("NcActionSeparator"),s("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])})]:e._e(),!e.noMenu&&e.menuEntriesOther.length>0?[s("NcActionSeparator"),e._l(e.menuEntriesOther,function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])})]:e._e()],2):s("NcButton",{attrs:{"aria-label":e.buttonLabel,disabled:e.disabled,"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file",type:e.primary?"primary":"secondary"},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0},e.isUploading?null:{key:"default",fn:function(){return[e._v(" "+e._s(e.buttonLabel)+" ")]},proxy:!0}],null,!0)}),s("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[s("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,"data-cy-upload-picker-progress":"",error:e.hasFailure,value:e.uploadManager.eta.progress,size:"medium"}}),s("p",{attrs:{id:e.progressTimeId,"data-cy-upload-picker-progress-label":""}},[e.isPaused?s("span",[e._v(" "+e._s(e.t("paused"))+" ")]):e.isOnlyAssembling?s("span",[e._v(" "+e._s(e.t("assembling"))+" ")]):s("span",{attrs:{title:e.etaTimeAndSpeed()}},[e._v(" "+e._s(e.uploadManager.eta.timeReadable)+" "),e.uploadManager.eta.speedReadable&&e.uploadManager.eta.time>=60?s("span",[e._v(" ("+e._s(e.uploadManager.eta.speedReadable)+") ")]):e._e()])])],1),e.isUploading&&!e.isOnlyAssembling?s("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),s("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()},[],0,0,"a66c1264").exports;t.d(s,["a",0,R,"b",0,N,"i",0,e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry,"j",0,Q,"l",0,z,"t",0,P])}}]); +//# sourceMappingURL=745-745.js.map?v=c07f924f4a107de4e123 \ No newline at end of file diff --git a/dist/8192-8192.js.license b/dist/745-745.js.license similarity index 100% rename from dist/8192-8192.js.license rename to dist/745-745.js.license diff --git a/dist/745-745.js.map b/dist/745-745.js.map new file mode 100644 index 0000000000000..aeb29d0e8de71 --- /dev/null +++ b/dist/745-745.js.map @@ -0,0 +1 @@ +{"version":3,"file":"745-745.js?v=12f677ca283fef964814","mappings":"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","sources":["webpack:///nextcloud/apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue?vue&type=style&index=0&id=994fb45e&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue","webpack:///nextcloud/apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue?df08","webpack://nextcloud/./apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue?1bbe","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-DPkUyJ8g.mjs"],"sourcesContent":["// 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, `.file-drop-empty-content[data-v-994fb45e]{margin:auto;max-width:max(50vw,300px)}.file-drop-empty-content .file-drop-empty-content__note-card[data-v-994fb45e]{width:fit-content;margin-inline:auto}.file-drop-empty-content #file-drop-empty-content__heading[data-v-994fb45e]{margin-block:0 10px;font-weight:bold;font-size:20px}.file-drop-empty-content .file-drop-empty-content__list[data-v-994fb45e]{list-style:inside;max-height:min(350px,33vh);overflow-y:scroll;padding-inline-end:calc(2*var(--default-grid-baseline))}.file-drop-empty-content[data-v-994fb45e] .terms-of-service-dialog{min-height:min(100px,20vh)}.file-drop-empty-content[data-v-994fb45e] .empty-content__action{display:flex;gap:var(--default-grid-baseline)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue\"],\"names\":[],\"mappings\":\"AACA,0CACC,WAAA,CACA,yBAAA,CAEA,8EACC,iBAAA,CACA,kBAAA,CAGD,4EACC,mBAAA,CACA,gBAAA,CACA,cAAA,CAGD,yEACC,iBAAA,CACA,0BAAA,CACA,iBAAA,CACA,uDAAA,CAGD,mEACC,0BAAA,CAID,iEACC,YAAA,CACA,gCAAA\",\"sourcesContent\":[\"\\n.file-drop-empty-content {\\n\\tmargin: auto;\\n\\tmax-width: max(50vw, 300px);\\n\\n\\t.file-drop-empty-content__note-card {\\n\\t\\twidth: fit-content;\\n\\t\\tmargin-inline: auto;\\n\\t}\\n\\n\\t#file-drop-empty-content__heading {\\n\\t\\tmargin-block: 0 10px;\\n\\t\\tfont-weight: bold;\\n\\t\\tfont-size: 20px;\\n\\t}\\n\\n\\t.file-drop-empty-content__list {\\n\\t\\tlist-style: inside;\\n\\t\\tmax-height: min(350px, 33vh);\\n\\t\\toverflow-y: scroll;\\n\\t\\tpadding-inline-end: calc(2 * var(--default-grid-baseline));\\n\\t}\\n\\n\\t:deep(.terms-of-service-dialog) {\\n\\t\\tmin-height: min(100px, 20vh);\\n\\t}\\n\\n\\t/* TODO fix in library */\\n\\t:deep(.empty-content__action) {\\n\\t\\tdisplay: flex;\\n\\t\\tgap: var(--default-grid-baseline);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcEmptyContent,{staticClass:\"file-drop-empty-content\",attrs:{\"data-cy-files-sharing-file-drop\":\"\",\"name\":_setup.name},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"svg\":_setup.svgCloudUpload}})]},proxy:true},{key:\"description\",fn:function(){return [_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.shareNote || _setup.t('files_sharing', 'Upload files to {foldername}.', { foldername: _vm.foldername }))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_setup.disclaimer)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('files_sharing', 'By uploading files, you agree to the terms of service.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_setup.getSortedUploads().length)?_c(_setup.NcNoteCard,{staticClass:\"file-drop-empty-content__note-card\",attrs:{\"type\":\"success\"}},[_c('h2',{attrs:{\"id\":\"file-drop-empty-content__heading\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('files_sharing', 'Successfully uploaded files'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('ul',{staticClass:\"file-drop-empty-content__list\",attrs:{\"aria-labelledby\":\"file-drop-empty-content__heading\"}},_vm._l((_setup.getSortedUploads()),function(file){return _c('li',{key:file},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(file)+\"\\n\\t\\t\\t\\t\")])}),0)]):_vm._e()]},proxy:true},{key:\"action\",fn:function(){return [(_setup.disclaimer)?[_c(_setup.NcButton,{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){_setup.showDialog = true}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('files_sharing', 'View terms of service'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c(_setup.NcDialog,{attrs:{\"close-on-click-outside\":\"\",\"content-classes\":\"terms-of-service-dialog\",\"open\":_setup.showDialog,\"name\":_setup.t('files_sharing', 'Terms of service'),\"message\":_setup.disclaimer},on:{\"update:open\":function($event){_setup.showDialog=$event}}})]:_vm._e(),_vm._v(\" \"),_c(_setup.UploadPicker,{attrs:{\"allow-folders\":\"\",\"content\":() => [],\"no-menu\":\"\",\"destination\":_setup.uploadDestination,\"multiple\":\"\"}})]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesViewFileDropEmptyContent.vue?vue&type=style&index=0&id=994fb45e&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesViewFileDropEmptyContent.vue?vue&type=style&index=0&id=994fb45e&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesViewFileDropEmptyContent.vue?vue&type=template&id=994fb45e&scoped=true\"\nimport script from \"./FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./FilesViewFileDropEmptyContent.vue?vue&type=style&index=0&id=994fb45e&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 \"994fb45e\",\n null\n \n)\n\nexport default component.exports","import '../assets/index-BGmULkk-.css';\nimport { getSharingToken, isPublicShare } from \"@nextcloud/sharing/public\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { formatFileSize, Folder, davRemoteURL, davRootPath, Permission, FileType, davGetClient, validateFilename, InvalidFilenameError, getUniqueName, getNewFileMenuEntries, NewMenuEntryCategory } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { normalize } from \"path\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getBaseUrl, generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry, { exponentialDelay, isNetworkOrIdempotentRequestError } from \"axios-retry\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { TypedEventTarget } from \"typescript-event-target\";\nimport Vue, { defineAsyncComponent, defineComponent } from \"vue\";\nimport { showInfo, showWarning } from \"@nextcloud/dialogs\";\nimport { spawnDialog } from \"@nextcloud/vue/functions/dialog\";\nimport { useHotKey } from \"@nextcloud/vue/dist/Composables/useHotKey.js\";\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 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 , 2025\", \"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\\nabu.s3ud, 2024\\nAli , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Ali , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" هو اسم ممنوع لملف أو مجلد.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" هو نوع ممنوع أن يكون لملف.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" هو غير مسموح به في اسم ملف أو مجلد.'] }, \"{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} ملف متعارض في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفان متعارضان في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفات متعارضة في {dirname}\", \"{count} ملفات متعارضة في {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"مازال {seconds} ثوانٍ\", \"مازال {seconds} ثوانٍ\", \"مازال {seconds} ثوانٍ\", \"مازال {seconds} ثوانٍ\", \"مازال {seconds} ثوانٍ\", \"مازال {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\": [\"بضع ثوانٍ متبقية\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"الإصدار الحالي\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"تعذّرت إعادة تجميع الكتل معاً \"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"تعذّر رفع الملف\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['غير مسموح ان ينتهي اسم الملف بـ \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"اسم ملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معروف\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"تمّ تجاوز الرفع\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['رفع \"{folder}\" تمّ تجاوزه'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp , 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp , 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp , 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev , 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev , 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg\", \"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\": \"Leandro Navarro , 2025\", \"Language-Team\": \"Catalan (https://app.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:\\nJoas Schilling, 2024\\nv v , 2025\\nLeandro Navarro , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Leandro Navarro , 2025\\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" és un nom de fitxer o carpeta prohibit.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" és un tipus de fitxer prohibit.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" no és permès dins del nom de fitxer o carpeta.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}fitxer en conflicte\", \"{count} fitxer en conflicte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicte de fitxers a {dirname}\", \"{count} conflictes de fitxers a {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segon restant\", \"{seconds} segons restants\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden uns segons\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"assemblatge\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel·lar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel·lar l'operació sencera\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crea nou\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"s’està estimant el temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"No s'han pogut acoblar els trossos\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"No s'ha pogut pujar el fitxer\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [`Els noms de fitxer no han d'acabar en \"{segment}\".`] }, \"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 seleccioneu les dues versions, el fitxer entrant tindrà un número afegit al seu nom.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nom de fitxer no vàlid\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data de la darrera modificació desconeguda\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nou\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nou nom de fitxer\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versió\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Imatge de vista prèvia\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Canviar el nom\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccioneu totes les caselles de selecció\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccioneu tots els fitxers existents\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccioneu tots el fitxers nous\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omet {count} fitxer\", \"Omet {count} fitxers\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Omet aquest fitxer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Mida desconeguda\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Pujar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Pujar les carpetes\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Pujada des del dispositiu\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La pujada s'ha cancel·lat\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"S'ha omès la pujada\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [`S'ha omès la pujada de \"{folder}\"`] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Procés de pujada\"] }, \"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\": [\"Quan es selecciona una carpeta d'entrada, també es sobreescriuran els fitxers en conflicte dins d'ella.\"] }, \"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\": [\"Quan es selecciona una carpeta d'entrada, el contingut s'escriu a la carpeta existent i es realitza una resolució recursiva de conflictes.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quins fitxers vols conservar?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Podeu canviar el nom del fitxer, saltar aquest fitxer o cancel·lar tota l'operació.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Heu de seleccionar almenys una versió de cada fitxer per continuar.\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki , 2025\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel , 2024\\nMartin Hankovec, 2024\\nAppukonrad , 2024\\nPavel Borecki , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít jako název souboru či složky.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}“ není povoleného typu souboru.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít v rámci názvu souboru či složky.\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\", \"zbývají {seconds}\", \"zbývá {seconds}\", \"zbývají {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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"sestavování\"] }, \"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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvořit nový\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Shluky se nepodařilo dát dohromady\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Soubor se nepodařilo nahrát\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Názvy souborů nemohou končit na „{segment}“.\"] }, \"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\": [\"Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný název souboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový název souboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Přejmenovat\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Přeskočit\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit {count} soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Přeskočit tento soubor\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrát\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrát složky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrát ze zařízení\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávání bylo zrušeno\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrání bylo přeskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Nahrání „{folder}“ bylo přeskočeno\"] }, \"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\"] }, \"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\": [\"Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit.\"] }, \"You need to select 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\": \"Finn Sommer , 2025\", \"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\\nRasmus Rosendahl-Kaa, 2024\\nMartin Bonde , 2025\\nFinn Sommer , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Finn Sommer , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tilladt i et fil- eller mappenavn.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\", \"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"samling\"] }, \"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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opret ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Mislykkedes at samle stumperne sammen\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Kunne ikke uploade filen\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavne må ikke slutte med \"{segment}\".'] }, \"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\": [\"Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldigt filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nyt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøb\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Spring over\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring {count} fil over\", \"Spring {count} fil over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Spring denne fil over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload fra enhed\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload er blevet annulleret\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload er blevet sprunget over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload af \"{folder}\" er blevet sprunget over'] }, \"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.\"] }, \"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 indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen.\"] }, \"You need to select 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\": \"Martin Wilichowski, 2025\", \"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\\nAndy Scherzinger , 2024\\nMark Ziegler , 2025\\nMario Siegmann , 2025\\nMartin Wilichowski, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Martin Wilichowski, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunde verbleibt\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"zusammenfügen\"] }, \"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\": [\"Berechne verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Die Teile konnten nicht zusammengefügt werden\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Die Datei konnte nicht hochgeladen werden\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"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 du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Diese Datei überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"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öchtest du behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select 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\": \"Martin Wilichowski, 2025\", \"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\\nMark Ziegler , 2025\\nMario Siegmann , 2025\\nMartin Wilichowski, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Martin Wilichowski, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunde verbleibt\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"zusammenfügen\"] }, \"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\": [\"Berechne verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Die Teile konnten nicht zusammengefügt werden\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Die Datei konnte nicht hochgeladen werden\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Diese Datei überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select 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\": \"Γιάννος, 2025\", \"Language-Team\": \"Greek (https://app.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:\\nJoas Schilling, 2024\\nEfstathios Iosifidis , 2025\\nΓιάννος, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Γιάννος, 2025\\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" είναι απαγορευμένο όνομα αρχείου ή φακέλου.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Το \"{segment}\" είναι απαγορευμένος τύπος αρχείου.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Το \"{segment}\" δεν επιτρέπεται μέσα στο όνομα ενός αρχείου ή φακέλου.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{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}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"Απομένει {seconds} δευτερόλεπτο\", \"Απομένουν {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\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Υπάρχουσα έκδοση\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Αποτυχία συναρμολόγησης των κομματιών\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Αποτυχία μεταφόρτωσης του αρχείου\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Τα ονόματα αρχείων δεν πρέπει να τελειώνουν με \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Μη έγκυρο όνομα αρχείου\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Άγνωστη ημερομηνία τελευταίας τροποποίησης\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Νέο\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Παράλειψη {count} αρχείου\", \"Παράλειψη {count} αρχείων\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Παραλείψτε αυτό το αρχείο\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Άγνωστο μέγεθος\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Η μεταφόρτωση παραλείφθηκε\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Η μεταφόρτωση του \"{folder}\" παραλείφθηκε'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler , 2025\", \"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 , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" is a forbidden file or folder name.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" is a forbidden file type.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" is not allowed inside a file or folder name.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"assembling\"] }, \"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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Create new\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Failed to assemble the chunks together\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Failed to upload the file\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filenames must not end with \"{segment}\".'] }, \"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.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Invalid filename\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"New filename\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rename\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Skip\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip {count} file\", \"Skip {count} files\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Skip this file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload folders\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload from device\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload has been cancelled\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload has been skipped\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload of \"{folder}\" has been skipped'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"You can either rename the file, skip this file or cancel the whole operation.\"] }, \"You need to select 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, 2025\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ , 2024\\nJulio C. Ortega, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" es un nombre de archivo o carpeta no permitido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" es un tipo de archivo no permitido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" no está permitido dentro del nombre de un archivo o carpeta.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"queda {seconds} segundo\", \"quedan {seconds} segundos\", \"quedan {seconds} segundos\"] }, \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"ensamblando\"] }, \"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\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Fallo al ensamblar todas las partes juntas\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Fallo al cargar el archivo\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Los nombres de archivo no deben terminar en \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nuevo nombre de archivo\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir {count} archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Omitir este archivo\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Cargar\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"La carga fue omitida\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['La carga de \"{folder}\" ha sido omitida'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Puede o bien, renombrar el archivo, omitirlo, o, cancelar toda la operación.\"] }, \"You need to select 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\": \"Matías Campo Hoet , 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.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:\\nJoas Schilling, 2024\\nMatías Campo Hoet , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet , 2024\\nLanguage-Team: Spanish (Argentina) (https://app.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\"] }, '\"{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, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última 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\": [\"Vista previa de 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\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Cargar archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Cargar carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Cargar desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Carga cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la carga\"] }, \"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 archivo en conflicto dentro de la misma también serán sobreescritos.\"] }, \"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 se escribe en la carpeta existente y se realiza 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_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\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.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:\\nJoas Schilling, 2024\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.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\"] }, '\"{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} archivos en conflicto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} archivo en conflicto en {dirname}\", \"{count} archivos en conflicto en {dirname}\", \"{count} archivo en conflicto en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos 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, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"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\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {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 archivo en conflicto dentro de la misma también será sobrescrito.\"] }, \"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 se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Cuáles 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_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\": \"Priit Jõerüüt , 2025\", \"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:\\nJoas Schilling, 2024\\nPriit Jõerüüt , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Priit Jõerüüt , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ on keelatud faili- või kausta nimi.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}“ on keelatud failitüüp.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}“ pole faili- või kausta nimes lubatud.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fail on vastuolus\", \"{count} faili on vastuolus\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fail on vastuolus „{dirname}“ kaustas\", \"{count} faili on vastuolus „{dirname}“ kaustas\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"jäänud {seconds} sekund\", \"jäänud {seconds} sekundit\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"aega jäänud {time} \"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"koostamisel\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Katkesta\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Katkesta kogu tegevus\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Katkesta üleslaadimine\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Jätka\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Loo uus\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Olemasolev versioon\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Tükkide koostamine üheks tervikuks ei õnnestunud\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Faili üleslaadimine ei õnnestunud\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Failinime lõpus ei tohi olla „{segment}“.\"] }, \"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\": [\"Kui sa valid mõlemad versioonid, lisatakse kopeeritud faili nimele number.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Vigane failinimi\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Viimase muutmise kuupäev pole teada\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uus\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Uus failinimi\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Uus versioon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vaata pildi eelvaadet\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Muuda nime\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vali kõik märkeruudud\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vali kõik olemasolevad failid\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vali kõik uued failid\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Jäta vahele\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Jäta vahele {count} fail\", \"Jäta vahele {count} faili\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Jäta vahele see fail\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tundmatu suurus\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Laadi üles\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Laadi failid üles\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Laadi kaustad üles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Laadi üles seadmest\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Üleslaadimine on katkestatud\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Üleslaadimine on vahele jäetud\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"„{folder}“ kausta üleslaadimine on vahele jäetud\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Üleslaadimise edenemine\"] }, \"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\": [\"Kui saabuvate failide kaust on valitud, siis seal asuvad vastuoluliste nimedega failid kirjutatakse samuti üle.\"] }, \"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\": [\"Kui saabuvate failide kaust on valitud, siis sisu kirjutatakse olemasolevasse kausta ja käivitatakse rekursiivne vastuolude haldus.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Milliseid faile soovid säilitada?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Sa võid kas faili nime muuta, ta vahele jätta või kogu tegevuse katkestada.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Jätkamiseks pead valima vähemalt ühe versiooni igast failist.\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta , 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta , 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Alireza Rashidi, 2025\", \"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:\\nJoas Schilling, 2024\\nreza reza , 2024\\nAlireza Rashidi, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Alireza Rashidi, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"{segment} یک نام فایل یا پوشه ممنوعه است.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"{segment} یک نوع فایل ممنوعه است.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"{segment} داخل نام فایل یا پوشه مجاز نیست.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{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} ناسازگاری داشت\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانیه مانده\", \"{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\": [\"چند ثانیه مانده\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"نگارش موجود\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"نتوانست تکه‌های را به سرهم کند\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"نتوانست پرونده را بارگذاری کند\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"نام پرونده نباید با {segment} پایان یابد.\"] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"نام پرونده نامعتبر\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"آخرین تاریخ تغییر نامشخص\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جدید\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"بارگذاری نادیده گرفته شده است\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"بارگذاری {folder} نادیده گرفته شده است\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"fi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jiri Grönroos , 2025\", \"Language-Team\": \"Finnish (Finland) (https://app.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:\\nJoas Schilling, 2024\\nthingumy, 2024\\nteemue, 2024\\nJiri Grönroos , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Jiri Grönroos , 2025\\nLanguage-Team: Finnish (Finland) (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" on kielletty tiedoston tai hakemiston nimi.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" on kielletty tiedostotyyppi.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ei ole sallittu tiedoston tai hakemiston nimessä.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} tiedoston ristiriita\", \"{count} tiedoston ristiriita\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tiedoston ristiriita kansiossa {dirname}\", \"{count} tiedoston ristiriita kansiossa {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunti jäljellä\", \"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS 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ä\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"kootaan\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Peruuta\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Peruuta koko toimenpide\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Jatka\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Luo uusi\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Olemassa oleva versio\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Palojen kokoaminen yhteen epäonnistui\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Tiedoston lähetys epäonnistui\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Tiedoston nimi ei saa päättyä \"{segment}\"'] }, \"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\": [\"Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Kielletty/väärä tiedoston nimi\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Viimeisin muokkauspäivä on tuntematon\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Uusi tiedostonimi\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Uusi versio\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Esikatsele kuva\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Nimeä uudelleen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Valitse kaikki valintaruudut\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Valitse kaikki olemassa olevat tiedostot\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Valitse kaikki uudet tiedostot\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ohita\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ohita tämä tiedosto\", \"Ohita {count} tiedostoa\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tuntematon koko\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Lähetä\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Lähetä kansioita\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Lähetä laitteelta\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Lähetys on peruttu\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Lähetys on ohitettu\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Hakemiston \"{folder}\" lähetys on ohitettu'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Lähetyksen edistyminen\"] }, \"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\": [\"Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan.\"] }, \"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\": [\"Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mitkä tiedostot haluat säilyttää?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi.\"] } } } } }, { \"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\": \"Caro Leviia, 2025\", \"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\\nJEEEEEEEEEEEEEEEEEEEEEED, 2024\\nJérôme HERBINET, 2024\\nacazenave, 2024\\nLisa Cintosh, 2025\\nLdm Public , 2025\\nCaro Leviia, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Caro Leviia, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" est un nom de fichier ou de dossier interdit.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" est un type de fichier interdit.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier.`] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconde restante\", \"{seconds} secondes restantes\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"assemblage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler toute l'opération\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les téléversements\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Créer un nouveau\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Échec de l'assemblage des morceaux\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Échec de téléversement du fichier\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Les noms des fichiers ne doivent pas terminer par \"{segment}\".'] }, \"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 vous sélectionnez les deux versions, un numéro sera ajouté au nom du fichier entrant.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nom de fichier invalide\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nouveau nom de fichier\"] }, \"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\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renommer\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ignorer\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} fichier ignoré\", \"{count} fichiers ignorés\", \"{count} fichiers ignorés\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Ignorer ce fichier\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Téléverser\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléverser des fichiers\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Téléverser des dossiers\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Téléverser depuis l'appareil\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Le téléversement a été annulé\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Le téléversement a été ignoré\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Le téléversement de \"{folder}\" a été ignoré'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléversement\"] }, \"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.\"] }, \"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\": [\"Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Vous pouvez soit renommer le fichier, soit ignorer le fichier, soit annuler toute l'opération.\"] }, \"You need to select 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, 2025\", \"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, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Is ainm toirmiscthe comhaid nó fillteáin é \"{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Is cineál comhaid toirmiscthe é \"{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`Ní cheadaítear \"{segment}\" taobh istigh d'ainm comhaid nó fillteáin.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} soicind fágtha\", \"{seconds} soicind fágtha\", \"{seconds} soicind fágtha\", \"{seconds} soicind fágtha\", \"{seconds} soicind fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"ag cur le chéile\"] }, \"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 \"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Theip ar na smután a chur le chéile le chéile\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Theip ar uaslódáil an chomhaid\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Níor cheart go gcríochnaíonn comhaid chomhad le \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ainm comhaid 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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad {count}\", \"Léim thar {count} comhad\", \"Léim thar {count} comhad\", \"Léim thar {count} comhad\", \"Léim thar {count} comhad\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Seachain an comhad seo\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Uaslódáil\"] }, \"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 ó ghléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Léiríodh an uaslódáil\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Léiríodh an uaslódáil \"{folder}\".'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú.\"] }, \"You need to select 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 , 2025\", \"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 , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» é un nome vedado para un ficheiro ou cartafol.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» é un tipo de ficheiro vedado.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol.\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"falta {seconds} segundo\", \"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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"ensamblando\"] }, \"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\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Produciuse un fallo ao ensamblar os anacos\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Produciuse un fallo ao enviar o ficheiro\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Os nomes de ficheiros non deben rematar con «{segment}».\"] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de ficheiro\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir {count} ficheiro\", \"Omitir {count} ficheiros\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Omitir este ficheiro\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O envío foi omitido\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"O envío de «{folder}» foi omitido\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación.\"] }, \"You need to select 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\": \"Gyuris Gellért , 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.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:\\nJoas Schilling, 2024\\nGyuris Gellért , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért , 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Tiltott fájl- vagy mappanév: „{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Tiltott fájltípus: „{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Nem megengedett egy fájl- vagy mappanévben: „{segment}\".'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}fájlt érintő konfliktus\", \"{count} fájlt érintő konfliktus\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fájlt érintő konfliktus a mappában: {dirname}\", \"{count}fájlt érintő konfliktus a mappában: {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS 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\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Mégse\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Teljes művelet megszakítása\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tovább\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Új létrehozása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Jelenlegi változat\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Fájlnevek nem végződhetnek erre: „{segment}”.\"] }, \"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\": [\"Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Érvénytelen fájlnév\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Utolsó módosítás dátuma ismeretlen\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Új fájlnév\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Új verzió\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Kép előnézete\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Átnevezés\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Minden jelölőnégyzet kijelölése\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Minden jelenlegi fájl kijelölése\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Minden új fájl kijelölése\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Kihagyás\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ezen fájl kihagyása\", \"{count}fájl kihagyása\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ismeretlen méret\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Feltöltés\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Mappák feltöltése\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Feltöltés eszközről\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Feltöltés meg lett szakítva\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Feltöltés át lett ugorva\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"„{folder}” feltöltése át lett ugorva\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Feltöltési folyamat\"] }, \"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\": [\"Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek.\"] }, \"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\": [\"Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mely fájlokat kívánja megtartani?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"A folytatáshoz minden fájlból legalább egy verziót ki kell választani.\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly , 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nEmpty Slot Filler, 2023\\nLinerly , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly , 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli , 2025\", \"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:\\nJoas Schilling, 2024\\nSveinn í Felli , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er bannað sem heiti á skrá eða möppu.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er bönnuð skráartegund.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ekki leyfilegt innan í heiti á skrá eða möppu.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúnda eftir\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"set saman\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Hætta við\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Hætta við alla aðgerðina\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Búa til nýtt\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"Failed assembling the chunks together\": { \"msgid\": \"Failed assembling the chunks together\", \"msgstr\": [\"Mistókst að setja saman bútana\"] }, \"Failed uploading the file\": { \"msgid\": \"Failed uploading the file\", \"msgstr\": [\"Mistókst að senda inn skrána\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Skráaheiti mega ekki enda á \"{segment}\".'] }, \"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\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti innkomandi skrárinnar.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ógilt skráarheiti\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nýtt skráarheiti\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Endurnefna\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Sleppa\"] }, \"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\": { \"msgid\": \"Upload\", \"msgstr\": [\"Senda inn\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Senda inn möppur\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Senda inn frá tæki\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Hætt hefur verið við innsendingu\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Innsendingu hefur verið sleppt\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Innsendingu á \"{folder}\" hefur verið sleppt'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Framvinda innsendingar\"] }, \"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\": [\"Þegar valin er mappa fyrir skrár sem berast, verður einnig skrifað yfir allar skrár í henni sem valda árekstrum.\"] }, \"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\": [\"Þegar valin er mappa fyrir skrár sem berast, verður efnið skrifað inn í fyrirliggjandi möppu og farið í að leysa úr árekstrum.\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Þú getur annaðhvort endurnefnt skrána, sleppt þessari skrá eða hætt við alla þessa aðgerð.\"] }, \"You need to select 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\": \"Roberto Resoli, 2025\", \"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:\\nJoas Schilling, 2024\\nFrancesco Sercia, 2024\\nalbanobattistella , 2024\\nLorenzo Taiocchi, 2025\\nesseti kappa, 2025\\nRoberto Resoli, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Roberto Resoli, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" è un nome di file o cartella proibito.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\"è un tipo di file proibito.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" non è consentito all'interno di un nome di file o cartella.`] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondo rimanente \", \"{seconds} secondi rimanenti \", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"assemblaggio\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annulla\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annulla l'intera operazione\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crea nuovo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Impossibile unire i pezzi\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Impossibile caricare il file\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['I nomi dei file non devono terminare con \"{segment}\".'] }, \"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 selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome file non valido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nuovo nome file\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rinomina\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Salta\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sata {count} file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Salta questo file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Caricamento\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Carica cartelle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carica dal dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Caricamento annullato\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Il caricamento è stato saltato\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Il caricamento di \"{folder}\" è stato saltato'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso del caricamento\"] }, \"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 si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti.\"] }, \"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\": [\"Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"È possibile rinominare il file, ignorarlo o annullare l'intera operazione.\"] }, \"You need to select 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\": \"ja\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"kojima.imamura, 2025\", \"Language-Team\": \"Japanese (Japan) (https://app.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:\\nJoas Schilling, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\n貴宝, 2025\\nkshimohata, 2025\\nkojima.imamura, 2025\\n\" }, \"msgstr\": [\"Last-Translator: kojima.imamura, 2025\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" は禁止されているファイルまたはフォルダ名です。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" は禁止されているファイルタイプです。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['ファイルまたはフォルダ名に \"{segment}\" を含めることはできません。'] }, \"{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\", \"msgid_plural\": \"{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\": [\"残り数秒\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"既存バージョン\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"チャンクの組み立てに失敗しました\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"ファイルのアップロードに失敗しました\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['ファイル名の末尾に \"{segment}\" を付けることはできません。'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無効なファイル名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最終更新日不明\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} 個のファイルをスキップする\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"このファイルをスキップする\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"サイズ不明\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"アップロードがスキップされました\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" のアップロードがスキップされました'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": [\"続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。\"] } } } } }, { \"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\": \"보헤민, 2025\", \"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\\nshin2012 , 2025\\n이상오, 2025\\n보헤민, 2025\\n\" }, \"msgstr\": [\"Last-Translator: 보헤민, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\"은(는) 금지된 파일 및 폴더 이름입니다.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\"은(는) 금지된 파일 형식입니다.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['파일이나 폴더 이름에 \"{segment}\"을(를) 사용할 수 없습니다.'] }, \"{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\", \"msgid_plural\": \"{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\": [\"곧 완료\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"현재 버전\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"조각을 취합하는 데 실패\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"파일을 업로드하는 데 실패\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['파일 이름은 \"{segment}\"(으)로 끝나야 합니다.'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개 파일 건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"이 파일 건너뛰기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"업로드를 건너뛰었습니다.\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" 업로드를 건너뛰었습니다.'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"bone NI, 2025\", \"Language-Team\": \"Lao (https://app.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:\\nbone NI, 2025\\n\" }, \"msgstr\": [\"Last-Translator: bone NI, 2025\\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ແມ່ນຊື່ໄຟລ໌ ຫຼື ໂຟລເດີທີ່ບໍ່ອະນຸຍາດ.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ແມ່ນປະເພດໄຟລ໌ທີ່ບໍ່ອະນຸຍາດ.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['ບໍ່ອະນຸຍາດໃຫ້ມີ \"{segment}\" ຢູ່​ໃນຊື່ໄຟລ໌ ຫຼື ໂຟລເດີ.'] }, \"{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\": [\"ໄຟລ໌ຊ້ຳກັນ {count} ລາຍການ ໃນ {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{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\": [\"ເຫຼືອເວລາອີກບໍ່ດົນ\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"ສະບັບທີ່ມີຢູ່ແລ້ວ\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"ການຮວບຮວມສ່ວນຕ່າງໆເຂົ້າກັນບໍ່ສຳເລັດ\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"ອັບໂຫຼດໄຟລ໌ບໍ່ສຳເລັດ\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['ຊື່ໄຟລ໌ຕ້ອງບໍ່ລົງທ້າຍດ້ວຍ \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"ຊື່ໄຟລ໌ບໍ່ຖືກຕ້ອງ\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"ບໍ່ຊາບວັນທີແກ້ໄຂຫຼ້າສຸດ\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"ໃໝ່\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"ຂ້າມ {count} ໄຟລ໌\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"ຂ້າມໄຟລ໌ນີ້\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"ບໍ່ຊາບຂະໜາດ\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"ການອັບໂຫຼດໄດ້ຖືກຂ້າມໄປແລ້ວ\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['ການອັບໂຫຼດ \"{folder}\" ໄດ້ຖືກຂ້າມໄປແລ້ວ'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"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\": \"Edgars Andersons, 2025\", \"Language-Team\": \"Latvian (https://app.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:\\nPapuass , 2024\\nArmīns Jeltajevs , 2024\\nEdgars Andersons, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Edgars Andersons, 2025\\nLanguage-Team: Latvian (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ir aizliegts datnes vai mapes nosaukums.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ir aizliegts datnes veids.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ir nav ļauts datnes vai mapes nosaukumā.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} nesaderīgu datņu\", \"{count} nesaderīga datne\", \"{count} nesaderīgas datnes\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} nesaderīgu datņu {dirname}\", \"{count} nesaderīga datne {dirname}\", \"{count} nesaderīgas datnes {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"Atlikušas {seconds} sekundes\", \"Atlikusi {seconds} sekunde\", \"Atlikušas {seconds} sekundes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"atlicis {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"atlikušas dažas sekundes\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"sakopo\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Atcelt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Atcelt visu darbību\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Atcelt augšupielādes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Turpināt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Izveidot jaunu\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"paredzamais atlikušais laiks\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Esošā versija\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Neizdevās apvienot gabalus\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Neizdevās augšupielādēt datni\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Datnes nosaukumi nedrīkst beigties ar \"{segment}\".'] }, \"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\": [\"Ja atlasa abas versijas, ienākošās datnes nosaukumam tiks pievienots skaitlis.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nederīgs datnes nosaukums\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Pēdējais izmainīšanas datums nav zināms\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Jauns\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Jauns datnes nosaukums\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Jauna versija\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"apturēta\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Priekšskatīt attēlu\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Pārdēvēt\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Atlasīt visas izvēles rūtiņas\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Atlasīt visas esošās datnes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Atlasīt visas jaunās datnes\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Izlaist\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Izlaist {count} datņu\", \"Izlaist {count} datni\", \"Izlaist {count} datnes\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Izlaist šo datni\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nezināms izmērs\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Augšupielādēt\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Augšupielādēt datnes\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Augšupielādēt mapes\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Augšupielādēt no ierīces\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Augšupielāde tika atcelta\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Augšupielāde tika izlaista\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" augšupielāde tika izlaista'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Augšupielādes virzība\"] }, \"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\": [\"Kad ir atlasīta ienākošā mape, tiks pārrakstītas arī jebkuras tajā esošās nesaderīgās datnes.\"] }, \"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\": [\"Kad ir atlasīta ienākošā mape, saturs tiks rakstīts esošajā mapē, un tiks veikta rekursīva nesaderību novēršana.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Kuras datnes paturēt?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Datni var vai nu pārdēvēt, vai izlaist vai atcelt visu darbību.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ir nepieciešams atlasīt vismaz vienu katras datnes versiju, lai turpinātu.\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров , 2025\", \"Language-Team\": \"Macedonian (https://app.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:\\nJoas Schilling, 2024\\nСашко Тодоров , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров , 2025\\nLanguage-Team: Macedonian (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" е забрането име на датотека или име на папка.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" е забранет вид на датотека.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" не е дозволено во името датотека или папка.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{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}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"уште {seconds} секунда\", \"уште {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\": [\"уште неколку секунди\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Постоечка верзија\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Неуспешно составување на парчињата заедно\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Неуспешно прикачување на датотека\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Имињата на датотеките не смеат да завршуваат со \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Невалидно име на датотека\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Непознат датумот на последната измена\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нова\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескокни {count} датотека\", \"Прескокни {count} датотеки\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Прескокни ја оваа датотека\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната големина\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Прикачувањето е прескокнато\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Прикачувањето на \"{folder}\" е прескокнато'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"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\": \"DT Navy, 2024\", \"Language-Team\": \"Malay (Malaysia) (https://app.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:\\nDT Navy, 2024\\n\" }, \"msgstr\": [\"Last-Translator: DT Navy, 2024\\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" adalah fail dan nama folder yang dilarang'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" adalah jenis fail yang dilarang'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" adalah tidak dibenarkan dalam nama fail atau folder'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} files bertindih\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fail bertindih dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saat tinggal\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tinggal\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"beberapa saat lagi\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"batal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Batal keseluruhan operasi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"batal muat naik\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"teruskan\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Buat baharu\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"jangkaan masa tinggal\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"versi sedia ada\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Nama fail tidak boleh berakhir dengan \"{segment}\".'] }, \"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\": [\"Jika dua versi dipilih, fail yang masuk akan ditambah bilangan pada namanya.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nama fail tidak sah\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tarikh terakhir diubah suai tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nama fail baharu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baharu\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Jeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Pratonton gambar\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Menamakan semula\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak pilihan\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua fail yang wujud\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"pilih semua fail baharu\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Langkau\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Langkau fail {count}\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Saiz tidak diketahui\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Muat naik\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Muat naik fail\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Muat naik folder\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Muat naik dari peranti\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Muat naik telah dibatalkan\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Muat naik telah dilangkau\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Muat naik \"{folder}\" telah dilangkau'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Kemajuan muat naik\"] }, \"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\": [\"Apabila folder masuk dipilih, sebarang fail bertindih akan ditulis semula\"] }, \"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\": [\"Apabila folder masuk dipilih, kandungan ditulis ke dalam folder sedia ada dan penyelesaian konflik rekursif dilakukan.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Fail yang mana ingin disimpan?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"And boleh menamakan semula fail, langkau fail tersebut atau membatalkan keseluruhan operasi\"] }, \"You need to select 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 perlu memilih sekurangnya satu versi setiap fail untuk teruskan\"] } } } } }, { \"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\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Roger Knutsen, 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:\\nJoas Schilling, 2024\\nRoger Knutsen, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Roger Knutsen, 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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tillatt i et fil- eller mappenavn.'] }, \"{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\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hele operasjonen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opprett ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavn må ikke slutte med \"{segment}\".'] }, \"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\": [\"Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldig filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøp\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hopp over\"] }, \"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 files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Last opp mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Last opp fra enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Opplastingen er kansellert\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Opplastingen er hoppet over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Opplasting av \"{folder}\" er hoppet over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"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 innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet.\"] }, \"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 innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen.\"] }, \"You need to select 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\": \"Stephan Paternotte , 2025\", \"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:\\nJoas Schilling, 2024\\nJoris deLeeuw, 2025\\nStephan Paternotte , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Stephan Paternotte , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" is een verboden bestands- of mapnaam.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" is een verboden bestandstype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" is niet toegestaan in een bestand of mapnaam.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} bestandsconflict\", \"{count} bestanden conflicteren\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} bestandsconflict in {dirname}\", \"{count} bestandenconflicten in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconde resterend\", \"{seconds} seconden resterend\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} resterend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden over\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"samenstellen\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuleren\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"De hele bewerking annuleren\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploaden annuleren\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Doorgaan\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Nieuw aanmaken\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"resterende tijd schatten\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Bestaande versie\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Kon de stukken niet samenvoegen\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Het uploaden van het bestand is mislukt\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Bestandsnamen mogen niet eindigen met \"{segment}\".'] }, \"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\": [\"Als je beide versies selecteert, krijgt het binnenkomende bestand een nummer toegevoegd aan de naam.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ongeldige bestandsnaam\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Laatst gewijzigde datum onbekend\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nieuw\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nieuwe bestandsnaam\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nieuwe versie\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"gepauzeerd\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Voorbeeldweergave\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Hernoemen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle opties selecteren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle bestanden selecteren\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle nieuwe bestanden selecteren\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Overslaan\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} bestand overslaan\", \"{count} bestanden overslaan\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Dit bestand overslaan\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Onbekende grootte\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Uploaden\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Mappen uploaden\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Uploaden vanaf apparaat\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload is geanulleerd\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload is overgeslagen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload van \"{folder}\" is overgeslagen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uploadvoortgang\"] }, \"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\": [\"Wanneer een inkomende map is geselecteerd, worden alle conflicterende bestanden daarin ook overschreven.\"] }, \"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\": [\"Wanneer een inkomende map is geselecteerd, wordt de inhoud in de bestaande map geschreven en wordt er een recursieve conflictoplossing uitgevoerd.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welke bestanden wil je behouden?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Je kunt het bestand ofwel hernoemen, dit bestand overslaan of de hele bewerking annuleren.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Je moet minstens één versie van elk bestand selecteren om door te gaan.\"] } } } } }, { \"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\": \"Valdnet, 2025\", \"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 Strebski , 2024\\nValdnet, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Valdnet, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" to zabroniona nazwa pliku lub katalogu.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" jest zabronionym typem pliku.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Znak \"{segment}\" nie jest dozwolony w nazwie pliku lub katalogu.'] }, \"{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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Utwórz nowe\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Nazwy plików nie mogą kończyć się na \"{segment}\".'] }, \"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.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nieprawidłowa nazwa pliku\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nowa nazwa pliku\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Zmiana nazwy\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie pola wyboru\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pomiń\"] }, \"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\": { \"msgid\": \"Upload\", \"msgstr\": [\"Wyślij\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Wyślij katalogi\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Wyślij z urządzenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Wysyłanie zostało anulowane\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Wysyłanie zostało pominięte\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Wysyłanie \"{folder}\" zostało pominięte'] }, \"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 katalogu 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 katalogu przychodzącego zawartość jest zapisywana w istniejącym katalogu 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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację.\"] }, \"You need to select 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\": \"F Bausch, 2025\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes , 2024\\nRodrigo Sottomaior Macedo , 2024\\nF Bausch, 2025\\n\" }, \"msgstr\": [\"Last-Translator: F Bausch, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" é um nome de arquivo ou pasta proibido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" é um tipo de arquivo proibido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" não é permitido dentro de um nome de arquivo ou pasta.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo restante\", \"{seconds} segundos restantes\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"montando\"] }, \"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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Criar novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Falha ao montar os pedaços juntos\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Falha ao fazer o upload do arquivo\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Os nomes dos arquivos não devem terminar com \"{segment}\".'] }, \"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 você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome de arquivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de arquivo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Selecionar todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecionar todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecionar todos os novos arquivos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pular\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pular {count} arquivo\", \"Pular {count} de arquivos\", \"Pular {count} arquivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Pular este arquivo\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Fazer upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fazer upload de arquivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Fazer upload de pastas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Fazer upload do dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O upload foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O upload foi pulado\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['O upload de \"{folder}\" foi pulado'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso de upload\"] }, \"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 recebida é selecionada, todos os arquivos conflitantes dentro dela também serão sobrescritos.\"] }, \"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\": [\"Quando uma pasta recebida é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operaçã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\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"artur25 , 2025\", \"Language-Team\": \"Portuguese (Portugal) (https://app.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:\\nJoas Schilling, 2024\\nguilherme ferreira, 2025\\nartur25 , 2025\\n\" }, \"msgstr\": [\"Last-Translator: artur25 , 2025\\nLanguage-Team: Portuguese (Portugal) (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" é um Nome de arquivo ou pasta proibido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" é um tipo de ficheiro proibido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" não é permitido num nome de ficheiro ou pasta.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"Conflito em {count} ficheiro\", \"Conflito em {count} ficheiros\", \"Conflito em {count} ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiro em {dirname}\", \"{count} conflitos de ficheiro em {dirname}\", \"{count} conflitos de ficheiro em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"Falta {seconds} segundo\", \"Faltam {seconds} segundos\", \"Faltam {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"montagem\"] }, \"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 envios\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Criar novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Falha ao juntar os fragmentos\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Falha ao carregar o ficheiro\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Os nomes de ficheiro não podem terminar em \"{segment}\".'] }, \"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 selecionar ambas as versões, será adicionado um número ao nome do ficheiro recebido.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome de ficheiro inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de ficheiro\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Pré-visualizar imagem\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Selecionar todas as caixas de verificação\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ignorar\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} ficheiro\", \"Ignorar {count} ficheiros\", \"Ignorar {count} ficheiros\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Ignorar este ficheiro\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Carregar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Carregar pastas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carregar a partir do dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O carregamento foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O carregamento foi ignorado\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['O carregamento da pasta \"{folder}\" foi ignorado'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso do carregamento\"] }, \"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\": [\"Ao selecionar uma pasta recebida, quaisquer ficheiros em conflito no seu interior também serão sobrescritos.\"] }, \"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\": [\"Ao selecionar uma pasta recebida, o conteúdo é escrito na pasta existente e é efetuada uma resolução de conflitos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais ficheiros pretende manter?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Pode renomear o ficheiro, ignorá-lo ou cancelar toda a operaçã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\": [\"Precisa de selecionar pelo menos uma versão de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu , 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu , 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Igor Orlov, 2025\", \"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\\nВлад, 2024\\nAlex , 2024\\nRoman Stepanov, 2024\\nMaksim Sukharev, 2024\\nАлександр, 2025\\nIgor Orlov, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Igor Orlov, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» — это запрещенное имя файла или папки.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» — это запрещенный тип файла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» не допускается в имени файла или папки.\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"осталась {seconds} секунда\", \"осталось {seconds} секунды\", \"осталось {seconds} секунд\", \"осталось {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\": [\"осталось несколько секунд\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Текущая версия\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Не удалось собрать части вместе\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Не удалось загрузить файл\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена файлов не должны заканчиваться на «{segment}»\"] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неверное имя файла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить {count} файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Пропустить этот файл\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Загрузка была пропущена\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Загрузка «{folder}» была пропущена\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"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\": \"sk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Anton Krajcik , 2025\", \"Language-Team\": \"Slovak (Slovakia) (https://app.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:\\nJozef Gaal , 2024\\nLinker Linker , 2024\\nAnton Krajcik , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Anton Krajcik , 2025\\nLanguage-Team: Slovak (Slovakia) (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ je zakázaný názov súboru alebo priečinka.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je zákazaný typ súboru.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}“ je zakázané v názve súboru alebo adresára.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} súbor má konflikt\", \"{count} súbory majú konflikt\", \"{count} súborov má konflikt\", \"{count} súborov má konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} súborový konflikt v {dirname}\", \"{count} súborové konflikty v {dirname}\", \"{count} súborových konfliktov v {dirname}\", \"{count} súborových konfliktov v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunda zostáva\", \"{seconds} sekúnd zostáva\", \"{seconds} sekúnd zostáva\", \"{seconds} sekundy zostávajú\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} zostáva\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zostáva niekoľko sekúnd\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"zhromažďovanie\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušiť\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušiť celú operáciu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušiť nahrávanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovať\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvoriť nové\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovanie zostávajúceho času\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existujúca verzia\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Nepodarilo sa dať časti dohromady.\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Nepodarilo sa nahrať súbor\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Názvy súborov nesmú končiť znakom \"{segment}\".'] }, \"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\": [\"Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný názov súboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dátum poslednej úpravy neznámy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nový\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový názov súboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verzia\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastavené\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhľad obrázka\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Premenovať\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označiť všetky výberové políčka\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrať všetky existujúce súbory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrať všetky nové súbory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskočiť\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskočiť {count} súbor\", \"Preskočiť {count} súborov\", \"Preskočiť {count} súborov\", \"Preskočiť {count} súbory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Preskočiť tento súbor\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznáma veľkosť\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrať\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrať súbory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrať priečinky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrať zo zariadenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávanie bolo zrušené\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrávanie bolo preskočené\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nahrávanie \"{folder}\" bolo preskočené'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Priebeh nahrávania\"] }, \"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\": [\"Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom.\"] }, \"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 výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Ktoré súbory chcete ponechať?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru.\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.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:\\nJoas Schilling, 2024\\nJan Kraljič , 2024\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" je prepovedano ime datoteka ali mape.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je prepovedan tip datoteke.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ni dovoljeno v imenu datoteke ali mape.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"1{count} datoteka je v konfliktu\", \"1{count} datoteki sta v konfiktu\", \"1{count} datotek je v konfliktu\", \"{count} datotek je v konfliktu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} datoteka je v konfiktu v {dirname}\", \"{count} datoteki sta v konfiktu v {dirname}\", \"{count} datotek je v konfiktu v {dirname}\", \"{count} konfliktov datotek v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Prekliči\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Prekliči celotni postopek\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Nadaljuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Ustvari nov\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjujem čas do konca\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Obstoječa različica\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Imena datotek se ne smejo končati s \"{segment}\".'] }, \"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\": [\"Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nepravilno ime datoteke\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum zadnje spremembe neznan\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo ime datoteke\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova različica\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Predogled slike\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Preimenuj\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Izberi vsa potrditvena polja\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Označi vse obstoječe datoteke\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Označi vse nove datoteke\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskoči\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskoči datoteko\", \"Preskoči {count} datoteki\", \"Preskoči {count} datotek\", \"Preskoči {count} datotek\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznana velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Naloži\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Naloži datoteke\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Naloži mape\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Naloži iz naprave\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nalaganje je bilo preklicano\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nalaganje je bilo preskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nalaganje \"{folder}\" je bilo preskočeno'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Napredek nalaganja\"] }, \"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\": [\"Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane.\"] }, \"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\": [\"Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Katere datoteke želite obdržati?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Izbrati morate vsaj eno različico vsake datoteke da nadaljujete.\"] } } } } }, { \"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\": \"Иван Пешић, 2025\", \"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:\\nJoas Schilling, 2024\\nИван Пешић, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” је забрањено име фајла или фолдера.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” је забрањен тип фајла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}” није дозвољено унутар имена фајла или фолдера.\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунда\", \"преостало је {seconds} секунде\", \"преостало је {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\": [\"преостало је неколико секунди\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Постојећа верзија\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Није успело састављање делова\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Није успело отпремање фајла\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена фајлова не смеју да се завршавају на „{segment}”.\"] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неисправно име фајла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи {count} фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Прескочи овај фајл\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Отпремање је прескочено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Отпремање „{folder}”је прескочено\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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, 2025\", \"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, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" är ett förbjudet fil- eller mappnamn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" är en förbjuden filtyp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" är inte tillåtet i ett fil- eller mappnamn.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvar\", \"{seconds} sekunder kvar\"] }, \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"Sammanställer\"] }, \"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\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Misslyckades med att sammanställa delarna\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Kunde inte ladda upp filen\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnamn får inte sluta med \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnamn\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över {count} fil\", \"Hoppa över {count} filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Hoppa över denna fil\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Ladda upp\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Uppladdningen har hoppats över\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Uppladdningen av \"{folder}\" har hoppats över'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen.\"] }, \"You need to select 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\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat , 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat , 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren , 2025\", \"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 , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" dosya ya da klasör adına izin verilmiyor.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" dosya türüne izin verilmiyor.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Bir dosya ya da klasör adında \"{segment}\" ifadesine izin verilmiyor.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\", \"{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ı\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"birleştiriliyor\"] }, \"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\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Parçalar birleştirilemedi\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Dosya yüklenemedi\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dosya adları \"{segment}\" ile bitmemeli.'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Yeni dosya adı\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} dosyayı atla\", \"{count} dosyayı atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Bu dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Yükle\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Yükleme atlandı\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" klasörünün yüklenmesi atlandı'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz.\"] }, \"You need to select 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, 2025\", \"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, 2025\\n\" }, \"msgstr\": [\"Last-Translator: O St, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [`\"{segment}\" недозволене ім'я файлу або каталогу.`] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" недозволений тип файлу.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" недозволене сполучення символів в назві файлу або каталогу.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунда залишилася\", \"{seconds} секунди залишилося\", \"{seconds} секунд залишилося\", \"{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\": [\"залишилося кілька секунд\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Присутня версія\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Не вдалося зібрати частинки докупи\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Не вдалося завантажити файл\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [`Ім'я файлів не можуть закінчуватися на \"{segment}\".`] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Недійсне ім'я файлу\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити {count} файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Пропустити цей файл\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Завантаження пропущено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Завантаження \"{folder}\" пропущено'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"Khurshid Ibatov , 2025\", \"Language-Team\": \"Uzbek (https://app.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:\\nKhurshid Ibatov , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Khurshid Ibatov , 2025\\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" taqiqlangan fayl yoki papka nomidir.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" taqiqlangan fayl turi hisoblanadi.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" fayl yoki papka nomi ichida ruxsat berilmaydi.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fayllar ziddiyati\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count}fayl ziddiyatlari {dirname} da\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} soniya qoldi\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} qoldi\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir necha soniya qoldi\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"yig'ish\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Bekor qilish\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Butun operatsiyani bekor qiling\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yuklashni bekor qilish\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Davom eting\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yangi yaratish\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"qolgan vaqtni hisoblash\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Mavjud versiya\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Bo'laklarni birlashtirib bo'lmadi\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Fayl yuklanmadi\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Fayl nomlari bilan tugamasligi kerak \"{segment}\".'] }, \"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\": [\"Agar siz ikkala versiyani tanlasangiz, kiruvchi fayl nomiga qo'shilgan raqamga ega bo'ladi.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Fayl nomi noto‘g‘ri\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Oxirgi tahrirlangan sana noma'lum\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yangi\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Yangi nom faylga\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yangi versiya\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"tanaffus\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Rasmni oldindan ko'rish\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Qayta nomlash\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Barcha katakchalarni belgilang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Barcha mavjud fayllarni tanlang\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Barcha yangi fayllarni tanlang\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Oʻtkazib yuborish\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Oʻtkazib yuborish {count} fayllarini\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Oʻtkazib yuborish ushbu faylni\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Noma'lum o'lcham\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Yuklash\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fayllarni yuklash\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Jildlarni yuklash\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Qurilmadan yuklash\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yuklash bekor qilindi\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Yuklash oʻtkazib yuborildi\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [' \"{folder}\" ni yuklash bekor qilindi'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yuklash jarayoni\"] }, \"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\": [\"Kiruvchi jild tanlanganda, undagi har qanday ziddiyatli fayllar ham ustiga yoziladi.\"] }, \"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\": [\"Kiruvchi jild tanlanganda, kontent mavjud jildga yoziladi va nizolarni rekursiv hal qilish amalga oshiriladi.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Qaysi fayllarni saqlamoqchisiz?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Siz fayl nomini o'zgartirishingiz, ushbu faylni o'tkazib yuborishingiz yoki butun operatsiyani bekor qilishingiz mumkin.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Davom etish uchun har bir faylning kamida bitta versiyasini tanlashingiz kerak.\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"nhatCreA, 2025\", \"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:\\nJoas Schilling, 2024\\nnhatCreA, 2025\\n\" }, \"msgstr\": [\"Last-Translator: nhatCreA, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" là tên thư mục bị cấm đặt.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" là loại tệp bị cấm.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" không được phép đặt trong tên tệp hoặc thư mục.'] }, \"{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 ở thư mục \"{dirname}\"'] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} giây trước\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} trước\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"vài giây trước\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"đang cấu trúc\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Huỷ\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Huỷ toàn bộ thao tác\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Tạo mới\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ước tính thời gian còn lại\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên bản hiện tại\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Không thể assemble các chunks lại với nhau\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Tải lên tệp tin thất bại\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Tên tập tin không được kết thúc bằng \"{segment}\".'] }, \"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\": [\"Nếu bạn chọn cả hai, tệp tin đến sẽ có thêm một chữ số vào tên.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Tên tệp tin không hợp lệ\"] }, \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Tên tệp tin 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\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Đổi tên\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin đang tồn tại\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Bỏ qua\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ qua {count} tệp\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Bỏ qua tệp này\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tải lên tệp tin\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Tải lên thư mục\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Tải lên từ thiết bị\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Tải lên đã bị huỷ\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Tải lên đã bỏ qua\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Tải lên \"{folder}\" đã bị bỏ qua'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Tiến trình tải lê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\": [\"Khi bạn chọn một thư mục để đưa vào, bất kỳ tệp nào trong đó gây xung đột cũng sẽ bị ghi đè.\"] }, \"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\": [\"Khi chọn một thư mục để đưa vào, nội dung sẽ được ghi vào thư mục hiện có, và hệ thống sẽ tự động giải quyết các xung đột một cách chi tiết và cẩn thận.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tệp nào?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Bạn có thể đổi tên tệp, bỏ qua tệp này, hoặc hủy toàn bộ thao tác.\"] }, \"You need to select 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 cho mỗi tệp để tiếp tục.\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"DWXXX, 2025\", \"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:\\nJoas Schilling, 2024\\ngloryandel, 2024\\nDWXXX, 2025\\n\" }, \"msgstr\": [\"Last-Translator: DWXXX, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是被禁止的文件名或文件夹名。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是被禁止的文件类型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允许包含在文件名或文件夹名中。'] }, \"{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\", \"msgid_plural\": \"{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\": [\"还剩几秒\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"服务端版本\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"组合区块失败\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"上传文件失败\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['文件名不得以 \"{segment}\" 结尾。'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"无效文件名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过 {count} 文件\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"跳过此文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上传已跳过\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['已跳过上传\"{folder}\"'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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, 2025\", \"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, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案或資料夾名稱。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案類型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允許出現在檔案或資料夾名稱中。'] }, \"{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\", \"msgid_plural\": \"{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\": [\"還剩幾秒\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"既有版本\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"無法組裝這些部分\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"無法上傳檔案\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['檔案名不得以 \"{segment}\" 結尾。'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無效的檔案名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"略過這個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上傳已被跳過\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" 的上傳已被跳過'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以選擇重新命名檔案、跳過此檔案或取消整個操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 , 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 , 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 , 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nclass UploadCancelledError extends Error {\n constructor(cause) {\n super(t(\"Upload has been cancelled\"), { cause });\n }\n}\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\naxiosRetry(axios, { retries: 0 });\nasync function uploadData(url, uploadData2, uploadOptions) {\n const options = {\n headers: {},\n onUploadProgress: () => {\n },\n onUploadRetry: () => {\n },\n retries: 5,\n ...uploadOptions\n };\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (options.destinationFile) {\n options.headers.Destination = options.destinationFile;\n }\n if (!options.headers[\"Content-Type\"]) {\n options.headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal: options.signal,\n onUploadProgress: options.onUploadProgress,\n headers: options.headers,\n \"axios-retry\": {\n retries: options.retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3),\n retryCondition(error) {\n if (error.status === 507) {\n return false;\n }\n if (error.status === 423) {\n return true;\n }\n return isNetworkOrIdempotentRequestError(error);\n },\n onRetry: options.onUploadRetry\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, isPublic = false, customHeaders = {}) {\n let chunksWorkspace;\n if (isPublic) {\n chunksWorkspace = `${getBaseUrl()}/public.php/dav/uploads/${getSharingToken()}`;\n } else {\n chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n }\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 = customHeaders;\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n logger.debug(\"Created temporary upload workspace\", { url });\n return url;\n};\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\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 = /* @__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 || {});\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}\n/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\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;\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path) {\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 }\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 /**\n * Add multiple children at once\n * @param files The files to add\n */\n async addChildren(files) {\n for (const file of files) {\n await this.addChild(file);\n }\n }\n /**\n * Add a child to the directory.\n * If it is a nested child the parents will be created if not already exist.\n * @param file The child to add\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 const child = new Directory(`${rootPath}${file.name}`);\n await child.addChildren(entries);\n this._children.set(file.name, child);\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 await this._children.get(base).addChild(file);\n } else {\n const child = new Directory(`${rootPath}${base}`);\n await child.addChild(file);\n this._children.set(base, child);\n }\n }\n }\n }\n}\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nvar EtaStatus = /* @__PURE__ */ ((EtaStatus2) => {\n EtaStatus2[EtaStatus2[\"Idle\"] = 0] = \"Idle\";\n EtaStatus2[EtaStatus2[\"Paused\"] = 1] = \"Paused\";\n EtaStatus2[EtaStatus2[\"Running\"] = 2] = \"Running\";\n return EtaStatus2;\n})(EtaStatus || {});\nclass Eta extends TypedEventTarget {\n /** Bytes done */\n _done = 0;\n /** Total bytes to do */\n _total = 0;\n /** Current progress (cached) as interval [0,1] */\n _progress = 0;\n /** Status of the ETA */\n _status = 0;\n /** Time of the last update */\n _startTime = -1;\n /** Total elapsed time for current ETA */\n _elapsedTime = 0;\n /** Current speed in bytes per second */\n _speed = -1;\n /** Expected duration to finish in seconds */\n _eta = Infinity;\n /**\n * Cutoff time for the low pass filter of the ETA.\n * A higher value will consider more history information for calculation,\n * and thus suppress spikes of the speed,\n * but will make the overall resposiveness slower.\n */\n _cutoffTime = 2.5;\n constructor(options = {}) {\n super();\n if (options.start) {\n this.resume();\n }\n if (options.total) {\n this.update(0, options.total);\n }\n this._cutoffTime = options.cutoffTime ?? 2.5;\n }\n /**\n * Add more transferred bytes.\n * @param done Additional bytes done.\n */\n add(done) {\n this.update(this._done + done);\n }\n /**\n * Update the transmission state.\n *\n * @param done The new value of transferred bytes.\n * @param total Optionally also update the total bytes we expect.\n */\n update(done, total) {\n if (this.status !== 2) {\n return;\n }\n if (total && total > 0) {\n this._total = total;\n }\n const deltaDone = done - this._done;\n const deltaTime = (Date.now() - this._startTime) / 1e3;\n this._startTime = Date.now();\n this._elapsedTime += deltaTime;\n this._done = done;\n this._progress = this._done / this._total;\n const historyNeeded = this._cutoffTime + deltaTime;\n if (this._elapsedTime > historyNeeded) {\n const alpha = deltaTime / (deltaTime + 1 / this._cutoffTime);\n const filtered = this._done - deltaDone + (1 - alpha) * deltaDone;\n this._speed = Math.round(filtered / this._elapsedTime);\n } else if (this._speed === -1 && this._elapsedTime > deltaTime) {\n const remaining = this._total - done;\n const eta = remaining / (done / this._elapsedTime);\n if (this._eta !== Infinity || eta <= 2 * this._cutoffTime) {\n this._eta = eta;\n }\n }\n if (this._speed > 0) {\n this._eta = Math.round((this._total - this._done) / this._speed);\n }\n this.dispatchTypedEvent(\"update\", new CustomEvent(\"update\", { cancelable: false }));\n }\n reset() {\n this._done = 0;\n this._total = 0;\n this._progress = 0;\n this._elapsedTime = 0;\n this._eta = Infinity;\n this._speed = -1;\n this._startTime = -1;\n this._status = 0;\n this.dispatchTypedEvent(\"reset\", new CustomEvent(\"reset\"));\n }\n /**\n * Pause the ETA calculation.\n */\n pause() {\n if (this._status === 2) {\n this._status = 1;\n this._elapsedTime += (Date.now() - this._startTime) / 1e3;\n this.dispatchTypedEvent(\"pause\", new CustomEvent(\"pause\"));\n }\n }\n /**\n * Resume the ETA calculation.\n */\n resume() {\n if (this._status !== 2) {\n this._startTime = Date.now();\n this._status = 2;\n this.dispatchTypedEvent(\"resume\", new CustomEvent(\"resume\"));\n }\n }\n /**\n * Status of the Eta (paused, active, idle).\n */\n get status() {\n return this._status;\n }\n /**\n * Progress (percent done)\n */\n get progress() {\n return Math.round(this._progress * 1e4) / 100;\n }\n /**\n * Estimated time in seconds.\n */\n get time() {\n return this._eta;\n }\n /**\n * Human readable version of the estimated time.\n */\n get timeReadable() {\n if (this._eta === Infinity) {\n return t(\"estimating time left\");\n } else if (this._eta < 10) {\n return t(\"a few seconds left\");\n } else if (this._eta < 60) {\n return n(\"{seconds} seconds left\", \"{seconds} seconds left\", this._eta, { seconds: this._eta });\n }\n const hours = String(Math.floor(this._eta / 3600)).padStart(2, \"0\");\n const minutes = String(Math.floor(this._eta % 3600 / 60)).padStart(2, \"0\");\n const seconds = String(this._eta % 60).padStart(2, \"0\");\n return t(\"{time} left\", { time: `${hours}:${minutes}:${seconds}` });\n }\n /**\n * Transfer speed in bytes per second.\n * Returns `-1` if not yet estimated.\n */\n get speed() {\n return this._speed;\n }\n /**\n * Get the speed in human readable format using file sizes like 10KB/s.\n * Returns the empty string if not yet estimated.\n */\n get speedReadable() {\n return this._speed > 0 ? `${formatFileSize(this._speed, true)}∕s` : \"\";\n }\n}\nvar UploaderStatus = /* @__PURE__ */ ((UploaderStatus2) => {\n UploaderStatus2[UploaderStatus2[\"IDLE\"] = 0] = \"IDLE\";\n UploaderStatus2[UploaderStatus2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n UploaderStatus2[UploaderStatus2[\"PAUSED\"] = 2] = \"PAUSED\";\n return UploaderStatus2;\n})(UploaderStatus || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n _customHeaders;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({\n // Maximum number of concurrent uploads\n // @ts-expect-error TS2339 Object has no defined properties\n concurrency: getCapabilities().files?.chunked_upload?.max_parallel_count ?? 5\n });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _eta = new Eta();\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 this._customHeaders = {};\n if (!destinationFolder) {\n const source = `${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 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 || folder.type !== FileType.Folder || !folder.source) {\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 registered custom headers for uploads\n */\n get customHeaders() {\n return structuredClone(this._customHeaders);\n }\n /**\n * Set a custom header\n * @param name The header to set\n * @param value The string value\n */\n setCustomHeader(name, value = \"\") {\n this._customHeaders[name] = value;\n }\n /**\n * Unset a custom header\n * @param name The header to unset\n */\n deleteCustomerHeader(name) {\n delete this._customHeaders[name];\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n this._eta.reset();\n if (this._uploadQueue.length === 0 && this._jobQueue.size === 0) {\n return;\n }\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 logger.debug(\"Uploader state reset\");\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._eta.pause();\n this._jobQueue.pause();\n this._queueStatus = 2;\n this.updateStats();\n logger.debug(\"Uploader paused\");\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._eta.resume();\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n logger.debug(\"Uploader resumed\");\n }\n /**\n * Get the estimation for the uploading time.\n */\n get eta() {\n return this._eta;\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._eta.update(uploaded, size);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus !== 2) {\n const pending = this._uploadQueue.find(({ status }) => [Status.INITIALIZED, Status.UPLOADING, Status.ASSEMBLING].includes(status));\n if (this._jobQueue.size > 0 || pending) {\n this._queueStatus = 1;\n } else {\n this.eta.reset();\n this._queueStatus = 0;\n }\n }\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conflicts.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 if (!callback) {\n callback = async (files2) => files2;\n }\n return new PCancelable(async (resolve, reject, onCancel) => {\n const rootFolder = new Directory(\"\");\n await rootFolder.addChildren(files);\n const target = `${this.root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const upload2 = new Upload(target, false, 0, rootFolder);\n upload2.status = Status.UPLOADING;\n this._uploadQueue.push(upload2);\n logger.debug(\"Starting new batch upload\", { target });\n try {\n const client = davGetClient(this.root, this._customHeaders);\n const promise = this.uploadDirectory(destination, rootFolder, callback, client);\n onCancel(() => promise.cancel());\n const uploads = await promise;\n upload2.status = Status.FINISHED;\n resolve(uploads);\n } catch (error) {\n if (isCancel(error) || error instanceof UploadCancelledError) {\n logger.info(\"Upload cancelled by user\", { error });\n upload2.status = Status.CANCELLED;\n reject(new UploadCancelledError(error));\n } else {\n logger.error(\"Error in batch upload\", { error });\n upload2.status = Status.FAILED;\n reject(error);\n }\n } finally {\n this._uploadQueue.splice(this._uploadQueue.indexOf(upload2), 1);\n this._notifyAll(upload2);\n this.updateStats();\n }\n });\n }\n /**\n * Helper to create a directory wrapped inside an Upload class\n * @param destination Destination where to create the directory\n * @param directory The directory to create\n * @param client The cached WebDAV client\n */\n createDirectory(destination, directory, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n if (!directory.name) {\n throw new Error(\"Can not create empty directory\");\n }\n const currentUpload = new Upload(rootPath, false, 0, directory);\n this._uploadQueue.push(currentUpload);\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n await this._jobQueue.add(async () => {\n currentUpload.status = Status.UPLOADING;\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n resolve(currentUpload);\n } catch (error) {\n if (isCancel(error) || error instanceof UploadCancelledError) {\n currentUpload.status = Status.CANCELLED;\n reject(new UploadCancelledError(error));\n } else if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n currentUpload.status = Status.FINISHED;\n resolve(currentUpload);\n } else {\n currentUpload.status = Status.FAILED;\n reject(error);\n }\n } finally {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n });\n });\n }\n // Helper for uploading directories (recursively)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).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 logger.debug(\"Upload canceled by user\", { directory });\n reject(new UploadCancelledError(\"Conflict resolution cancelled by user\"));\n return;\n } else if (selectedForUpload.length === 0 && directory.children.length > 0) {\n logger.debug(\"Skipping directory, as all files were skipped by user\", { directory });\n resolve([]);\n return;\n }\n const directories = [];\n const uploads = [];\n abort.signal.addEventListener(\"abort\", () => {\n directories.forEach((upload2) => upload2.cancel());\n uploads.forEach((upload2) => upload2.cancel());\n });\n logger.debug(\"Start directory upload\", { directory });\n try {\n if (directory.name) {\n uploads.push(this.createDirectory(destination, directory, client));\n await uploads.at(-1);\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 const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n reject(e);\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 this.eta.resume();\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 supportsPublicChunking = getCapabilities().dav?.public_shares_chunking ?? false;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic && !supportsPublicChunking || 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, this._isPublic, this._customHeaders);\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 request2 = () => {\n let chunkBytes = 0;\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n {\n signal: upload2.signal,\n destinationFile: encodedDestinationFile,\n retries,\n onUploadProgress: ({ bytes }) => {\n const progressBytes = bytes * 0.9;\n chunkBytes += progressBytes;\n upload2.uploaded += progressBytes;\n this.updateStats();\n },\n onUploadRetry: () => {\n upload2.uploaded -= chunkBytes;\n chunkBytes = 0;\n this.updateStats();\n },\n headers: {\n ...this._customHeaders,\n ...this._mtimeHeader(file),\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n }\n }\n ).then(() => {\n upload2.uploaded += bufferEnd - bufferStart - chunkBytes;\n this.updateStats();\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.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.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request2));\n }\n const request = async () => {\n try {\n await Promise.all(chunksQueue);\n upload2.status = Status.ASSEMBLING;\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n ...this._customHeaders,\n ...this._mtimeHeader(file),\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n upload2.status = Status.FINISHED;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error) || error instanceof UploadCancelledError) {\n upload2.status = Status.CANCELLED;\n reject(new UploadCancelledError(error));\n } else {\n upload2.status = Status.FAILED;\n reject(t(\"Failed to assemble the chunks together\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n } finally {\n this._notifyAll(upload2);\n }\n };\n this._jobQueue.add(request);\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 {\n signal: upload2.signal,\n onUploadProgress: ({ bytes }) => {\n upload2.uploaded += bytes * 0.9;\n this.updateStats();\n },\n onUploadRetry: () => {\n upload2.uploaded = 0;\n this.updateStats();\n },\n headers: {\n ...this._customHeaders,\n ...this._mtimeHeader(file),\n \"Content-Type\": file.type\n }\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) || error instanceof UploadCancelledError) {\n upload2.status = Status.CANCELLED;\n reject(new UploadCancelledError(error));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(t(\"Failed to upload the file\"));\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n this._jobQueue.onIdle().then(() => this.reset());\n return upload2;\n });\n return promise;\n }\n /**\n * Create modification time headers if valid value is available.\n * It can be invalid on Android devices if SD cards with NTFS / FAT are used,\n * as those files might use the NT epoch for time so the value will be negative.\n *\n * @param file The file to upload\n */\n _mtimeHeader(file) {\n const mtime = Math.floor(file.lastModified / 1e3);\n if (mtime > 0) {\n return { \"X-OC-Mtime\": mtime };\n }\n return {};\n }\n}\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (forceRecreate || window._nc_uploader === void 0) {\n window._nc_uploader = new Uploader(isPublic);\n }\n return window._nc_uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\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}\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-DuPiUBHl.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 showInvalidFilenameDialog(error) {\n const InvalidFilenameDialog = defineAsyncComponent(() => import(\"./InvalidFilenameDialog-BM2VDeLo.mjs\"));\n const { promise, reject, resolve } = Promise.withResolvers();\n spawnDialog(\n InvalidFilenameDialog,\n {\n error,\n validateFilename\n },\n (...rest) => {\n const [{ skip, rename }] = rest;\n if (skip) {\n resolve(false);\n } else if (rename) {\n resolve(rename);\n } else {\n reject();\n }\n }\n );\n return promise;\n}\n/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nfunction uploadConflictHandler(contentsCallback) {\n return async (nodes, path) => {\n try {\n const content = await contentsCallback(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 = [\n ...nodes.filter((node) => !conflicts.includes(node)),\n ...selected,\n ...renamed\n ];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n try {\n validateFilename(file.name);\n filesToUpload.push(file);\n } catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n logger.error(`Unexpected error while validating ${file.name}`, { error });\n throw error;\n }\n let newName = await showInvalidFilenameDialog(error);\n if (newName !== false) {\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n }\n if (filesToUpload.length === 0 && nodes.length > 0) {\n const folder = basename(path);\n showInfo(\n folder ? t('Upload of \"{folder}\" has been skipped', { folder }) : t(\"Upload has been skipped\")\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}\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 (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\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);\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);\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);\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);\nconst IconUpload = __component__$1.exports;\nconst _sfc_main = defineComponent({\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 /**\n * Allow to disable the \"new\"-menu for this UploadPicker instance\n */\n noMenu: {\n type: Boolean,\n default: false\n },\n /**\n * Allow to disable the button label\n */\n noLabel: {\n type: Boolean,\n default: false\n },\n /**\n * Make the \"New\"-button primary color.\n */\n primary: {\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 /**\n * Overwrite forbidden characters (by default the capabilities of the server are used)\n * @deprecated Deprecated and will be removed in the next major version\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 newFileMenuEntries: [],\n openedMenu: false,\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 queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue.some((upload2) => upload2.status === Status.FAILED);\n },\n isAssembling() {\n return this.queue.some((upload2) => upload2.status === Status.ASSEMBLING);\n },\n isUploading() {\n return this.queue.some((upload2) => upload2.status !== Status.CANCELLED);\n },\n isOnlyAssembling() {\n return this.isAssembling && this.queue.every((upload2) => (\n // ignore empty uploads or meta uploads\n upload2.size === 0 || upload2.status === Status.ASSEMBLING || upload2.status === Status.FINISHED\n ));\n },\n isPaused() {\n return this.uploadManager.info?.status === UploaderStatus.PAUSED;\n },\n buttonLabel() {\n return this.noMenu ? t(\"Upload\") : t(\"New\");\n },\n haveMenu() {\n return !((this.noMenu || this.newFileMenuEntries.length === 0) && !this.canUploadFolders);\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 destination(destination) {\n this.setDestination(destination);\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 useHotKey(\"u\", this.onKeyDown, {\n stop: true,\n prevent: true,\n shift: true\n });\n useHotKey(\"Escape\", this.onKeyDown, {\n stop: true,\n prevent: true\n });\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n etaTimeAndSpeed() {\n const speed = this.uploadManager.eta.speedReadable;\n if (speed) {\n return `${this.uploadManager.eta.timeReadable} (${speed})`;\n }\n return this.uploadManager.eta.timeReadable;\n },\n /**\n * Handle clicking a new-menu entry\n * @param entry The entry that was clicked\n */\n async onClick(entry) {\n entry.handler(\n this.destination,\n await this.getContent().catch(() => [])\n );\n },\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 * Start uploading\n */\n async onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n try {\n await this.uploadManager.batchUpload(\"\", files, uploadConflictHandler(this.getContent));\n } catch (error) {\n logger.debug(\"Error while uploading\", { error });\n } finally {\n this.resetForm();\n }\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 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.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n },\n onKeyDown(event) {\n if (event.key === \"u\") {\n if (this.haveMenu) {\n this.openedMenu = true;\n return;\n }\n this.onTriggerPick();\n }\n if (event.key === \"Escape\" && this.openedMenu) {\n this.openedMenu = false;\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.haveMenu ? _c(\"NcButton\", { attrs: { \"aria-label\": _vm.buttonLabel, \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"type\": _vm.primary ? \"primary\" : \"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 }, !_vm.isUploading ? { key: \"default\", fn: function() {\n return [_vm._v(\" \" + _vm._s(_vm.buttonLabel) + \" \")];\n }, proxy: true } : null], null, true) }) : _c(\"NcActions\", { attrs: { \"aria-label\": _vm.buttonLabel, \"menu-name\": _vm.noLabel ? void 0 : _vm.buttonLabel, \"open\": _vm.openedMenu, \"type\": _vm.primary ? \"primary\" : \"secondary\" }, on: { \"update:open\": function($event) {\n _vm.openedMenu = $event;\n } }, 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\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"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\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-folder\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 931184598) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), !_vm.noMenu ? _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, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\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.noMenu && _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, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\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.noMenu && _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesOther, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\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, \"data-cy-upload-picker-progress\": \"\", \"error\": _vm.hasFailure, \"value\": _vm.uploadManager.eta.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId, \"data-cy-upload-picker-progress-label\": \"\" } }, [_vm.isPaused ? _c(\"span\", [_vm._v(\" \" + _vm._s(_vm.t(\"paused\")) + \" \")]) : _vm.isOnlyAssembling ? _c(\"span\", [_vm._v(\" \" + _vm._s(_vm.t(\"assembling\")) + \" \")]) : _c(\"span\", { attrs: { \"title\": _vm.etaTimeAndSpeed() } }, [_vm._v(\" \" + _vm._s(_vm.uploadManager.eta.timeReadable) + \" \"), _vm.uploadManager.eta.speedReadable && _vm.uploadManager.eta.time >= 60 ? _c(\"span\", [_vm._v(\" (\" + _vm._s(_vm.uploadManager.eta.speedReadable) + \") \")]) : _vm._e()])])], 1), _vm.isUploading && !_vm.isOnlyAssembling ? _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 \"a66c1264\"\n);\nconst UploadPicker = __component__.exports;\nexport {\n EtaStatus as E,\n Status as S,\n Upload as U,\n isFileSystemFileEntry as a,\n n as b,\n Uploader as c,\n UploaderStatus as d,\n getConflicts as e,\n uploadConflictHandler as f,\n getUploader as g,\n hasConflict as h,\n isFileSystemEntry as i,\n UploadPicker as j,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n//# sourceMappingURL=index-DPkUyJ8g.mjs.map\n"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","uploads","Set","views_FilesViewFileDropEmptyContentvue_type_script_setup_true_lang_ts","_defineComponent","__name","props","foldername","setup","__props","disclaimer","loadState","shareLabel","shareNote","name","t","showDialog","ref","uploadDestination","getUploader","destination","addNotifier","upload","status","UploadStatus","FINISHED","file","add","__sfc","getSortedUploads","sort","a","b","localeCompare","svgCloudUpload","l10n_dist","Tl","UploadPicker","index_DPkUyJ8g","j","NcButton","A","NcDialog","NcEmptyContent","NcIconSvgWrapper","NcNoteCard","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","FilesViewFileDropEmptyContentvue_type_style_index_0_id_994fb45e_prod_scoped_true_lang_scss","locals","FilesViewFileDropEmptyContent","_vm","this","_c","_self","_setup","_setupProxy","staticClass","attrs","scopedSlots","_u","key","fn","svg","proxy","_v","_s","_e","length","type","_l","variant","on","click","$event","open","message","content","multiple","gtBuilder","_nextcloud_l10n_gettext__WEBPACK_IMPORTED_MODULE_10__","$","detectLocale","locale","json","charset","headers","Language","translations","msgid","comments","translator","msgstr","Add","paused","msgid_plural","extracted","assembling","Cancel","Continue","New","Rename","Skip","Upload","map","data","addTranslation","gt","build","n","ngettext","gettext","UploadCancelledError","Error","constructor","cause","super","logger","_nextcloud_logger__WEBPACK_IMPORTED_MODULE_13__","YK","setApp","detectUser","async","uploadData","url","uploadData2","uploadOptions","onUploadProgress","onUploadRetry","retries","Blob","destinationFile","Destination","_nextcloud_axios__WEBPACK_IMPORTED_MODULE_7__","Ay","request","method","signal","retryDelay","retryCount","error","axios_retry__WEBPACK_IMPORTED_MODULE_12__","Nv","retryCondition","Gp","onRetry","getChunk","start","size","Promise","resolve","slice","getMaxChunksSize","fileSize","maxChunkSize","window","OC","appConfig","files","max_chunk_size","Number","minimumChunkSize","Math","max","ceil","Status","Status2","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","source","chunked","chunks","min","AbortController","isChunked","startTime","response","uploaded","Date","getTime","cancel","abort","isFileSystemFileEntry","o","FileSystemFileEntry","Directory","File","_originalName","_path","_children","path","_nextcloud_paths__WEBPACK_IMPORTED_MODULE_4__","P8","lastModified","Map","children","reduce","sum","latest","originalName","Array","from","values","webkitRelativePath","getChild","get","addChildren","addChild","rootPath","reject","FileSystemDirectoryEntry","reader","createReader","entries","readEntries","child","set","filePath","includes","startsWith","relPath","base","indexOf","has","Eta","typescript_event_target__WEBPACK_IMPORTED_MODULE_14__","m","_done","_total","_progress","_elapsedTime","_speed","_eta","Infinity","_cutoffTime","resume","total","update","cutoffTime","done","deltaDone","deltaTime","now","historyNeeded","alpha","filtered","round","eta","dispatchTypedEvent","CustomEvent","cancelable","reset","pause","progress","time","timeReadable","seconds","hours","String","floor","padStart","minutes","speed","speedReadable","_nextcloud_files__WEBPACK_IMPORTED_MODULE_3__","v7","UploaderStatus","UploaderStatus2","Uploader","_destinationFolder","_isPublic","_customHeaders","_uploadQueue","_jobQueue","p_queue__WEBPACK_IMPORTED_MODULE_9__","concurrency","_nextcloud_capabilities__WEBPACK_IMPORTED_MODULE_6__","F","chunked_upload","max_parallel_count","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","PY","lJ","owner","user","_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__","HW","uid","vd","permissions","aX","ALL","root","debug","maxChunksSize","folder","pt","Folder","customHeaders","structuredClone","setCustomHeader","value","deleteCustomerHeader","queue","splice","clear","updateStats","info","upload2","partialSum","pending","find","INITIALIZED","UPLOADING","ASSEMBLING","notifier","_notifyAll","warn","batchUpload","callback","files2","p_cancelable__WEBPACK_IMPORTED_MODULE_8__","onCancel","rootFolder","target","replace","client","H4","promise","uploadDirectory","FZ","CANCELLED","FAILED","createDirectory","directory","folderPath","path__WEBPACK_IMPORTED_MODULE_5__","normalize","currentUpload","addEventListener","selectedForUpload","directories","forEach","at","node","all","flat","e","fileHandle","destinationPath","origin","URL","encodedDestinationFile","O0","resolve2","supportsPublicChunking","dav","public_shares_chunking","disabledChunkUpload","blob","bytes","_mtimeHeader","tempUrl","chunksWorkspace","_nextcloud_router__WEBPACK_IMPORTED_MODULE_11__","$_","_nextcloud_sharing_public__WEBPACK_IMPORTED_MODULE_1__","G","dC","random","toString","join","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","request2","chunkBytes","progressBytes","then","catch","onIdle","mtime","f","forceRecreate","_nc_uploader","showInvalidFilenameDialog","InvalidFilenameDialog","vue__WEBPACK_IMPORTED_MODULE_15__","$V","__webpack_require__","withResolvers","_nextcloud_vue_functions_dialog__WEBPACK_IMPORTED_MODULE_17__","S","validateFilename","KT","rest","skip","rename","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","render","_compiled","_scopeId","exports","IconCancel","emits","title","fillColor","default","_b","role","$emit","$attrs","fill","width","height","viewBox","d","IconFolderUpload","IconPlus","IconUpload","pM","components","NcActionButton","_nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_19__","NcActionCaption","_nextcloud_vue_dist_Components_NcActionCaption_js__WEBPACK_IMPORTED_MODULE_20__","NcActionSeparator","_nextcloud_vue_dist_Components_NcActionSeparator_js__WEBPACK_IMPORTED_MODULE_21__","NcActions","_nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_22__","_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_23__","_nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_24__","NcProgressBar","_nextcloud_vue_dist_Components_NcProgressBar_js__WEBPACK_IMPORTED_MODULE_25__","accept","disabled","Boolean","noMenu","noLabel","primary","allowFolders","Function","forbiddenCharacters","progressTimeId","newFileMenuEntries","openedMenu","uploadManager","computed","menuEntriesUpload","filter","entry","category","a7","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","document","createElement","hasFailure","some","isAssembling","isUploading","isOnlyAssembling","every","isPaused","PAUSED","buttonLabel","haveMenu","watch","immediate","handler","setDestination","beforeMount","onUploadCompletion","_nextcloud_vue_dist_Composables_useHotKey_js__WEBPACK_IMPORTED_MODULE_18__","C","onKeyDown","stop","prevent","shift","methods","etaTimeAndSpeed","onClick","getContent","onTriggerPick","uploadFolders","input","$refs","webkitdirectory","$nextTick","isArray","onPick","contentsCallback","nodes","conflicts","contentNames","basename","getConflicts","selected","renamed","dirname","ConflictPicker","picker","h","recursiveUpload","recursive","submit","results","$destroy","$el","parentNode","removeChild","$mount","body","appendChild","openConflictPicker","filesToUpload","di","newName","E6","Object","defineProperty","_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_16__","cf","I9","resetForm","form","m1","event","class","icon","iconClass","iconSvgInline","displayName","directives","rawName","expression","change","FileSystemEntry"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/745-745.js.map.license b/dist/745-745.js.map.license new file mode 120000 index 0000000000000..496c0e8252d51 --- /dev/null +++ b/dist/745-745.js.map.license @@ -0,0 +1 @@ +745-745.js.license \ No newline at end of file diff --git a/dist/7497-7497.js.map.license b/dist/7497-7497.js.map.license deleted file mode 120000 index 016a3c4db1e94..0000000000000 --- a/dist/7497-7497.js.map.license +++ /dev/null @@ -1 +0,0 @@ -7497-7497.js.license \ No newline at end of file diff --git a/dist/8192-8192.js b/dist/8192-8192.js deleted file mode 100644 index bf3dced475f43..0000000000000 --- a/dist/8192-8192.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[8192],{18465(e,s,t){var n=t(71354),i=t.n(n),a=t(76314),o=t.n(a)()(i());o.push([e.id,".file-drop-empty-content[data-v-994fb45e]{margin:auto;max-width:max(50vw,300px)}.file-drop-empty-content .file-drop-empty-content__note-card[data-v-994fb45e]{width:fit-content;margin-inline:auto}.file-drop-empty-content #file-drop-empty-content__heading[data-v-994fb45e]{margin-block:0 10px;font-weight:bold;font-size:20px}.file-drop-empty-content .file-drop-empty-content__list[data-v-994fb45e]{list-style:inside;max-height:min(350px,33vh);overflow-y:scroll;padding-inline-end:calc(2*var(--default-grid-baseline))}.file-drop-empty-content[data-v-994fb45e] .terms-of-service-dialog{min-height:min(100px,20vh)}.file-drop-empty-content[data-v-994fb45e] .empty-content__action{display:flex;gap:var(--default-grid-baseline)}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue"],names:[],mappings:"AACA,0CACC,WAAA,CACA,yBAAA,CAEA,8EACC,iBAAA,CACA,kBAAA,CAGD,4EACC,mBAAA,CACA,gBAAA,CACA,cAAA,CAGD,yEACC,iBAAA,CACA,0BAAA,CACA,iBAAA,CACA,uDAAA,CAGD,mEACC,0BAAA,CAID,iEACC,YAAA,CACA,gCAAA",sourcesContent:["\n.file-drop-empty-content {\n\tmargin: auto;\n\tmax-width: max(50vw, 300px);\n\n\t.file-drop-empty-content__note-card {\n\t\twidth: fit-content;\n\t\tmargin-inline: auto;\n\t}\n\n\t#file-drop-empty-content__heading {\n\t\tmargin-block: 0 10px;\n\t\tfont-weight: bold;\n\t\tfont-size: 20px;\n\t}\n\n\t.file-drop-empty-content__list {\n\t\tlist-style: inside;\n\t\tmax-height: min(350px, 33vh);\n\t\toverflow-y: scroll;\n\t\tpadding-inline-end: calc(2 * var(--default-grid-baseline));\n\t}\n\n\t:deep(.terms-of-service-dialog) {\n\t\tmin-height: min(100px, 20vh);\n\t}\n\n\t/* TODO fix in library */\n\t:deep(.empty-content__action) {\n\t\tdisplay: flex;\n\t\tgap: var(--default-grid-baseline);\n\t}\n}\n"],sourceRoot:""}]);const l=o;t.d(s,["A",0,l])},28192(e,s,t){t.d(s,{default:()=>F});var n=t(85471),i=t(81222),a=t(53334),o=t(66860),l=t(74095),r=t(94219),m=t(48943),d=t(6695),g=t(48240);const c=new Set,u=(0,n.pM)({__name:"FilesViewFileDropEmptyContent",props:{foldername:null},setup(e){const s=(0,i.C)("files_sharing","disclaimer",""),t=(0,i.C)("files_sharing","label",""),u=(0,i.C)("files_sharing","note",""),f=t||(0,a.Tl)("files_sharing","File drop"),p=(0,n.KR)(!1),h=(0,o.g)().destination;return(0,o.g)().addNotifier(e=>{e.status===o.S.FINISHED&&e.file.name&&c.add(e.file.name)}),{__sfc:!0,uploads:c,disclaimer:s,shareLabel:t,shareNote:u,name:f,showDialog:p,uploadDestination:h,getSortedUploads:function(){return[...c].sort((e,s)=>e.localeCompare(s))},svgCloudUpload:'',t:a.Tl,UploadPicker:o.j,NcButton:l.A,NcDialog:r.A,NcEmptyContent:m.A,NcIconSvgWrapper:d.A,NcNoteCard:g.A}}});var f=t(85072),p=t.n(f),h=t(97825),w=t.n(h),k=t(77659),v=t.n(k),b=t(55056),T=t.n(b),x=t(10540),y=t.n(x),U=t(41113),C=t.n(U),S=t(18465),L={};L.styleTagTransform=C(),L.setAttributes=T(),L.insert=v().bind(null,"head"),L.domAPI=w(),L.insertStyleElement=y(),p()(S.A,L),S.A&&S.A.locals&&S.A.locals;const F=(0,t(14486).A)(u,function(){var e=this,s=e._self._c,t=e._self._setupProxy;return s(t.NcEmptyContent,{staticClass:"file-drop-empty-content",attrs:{"data-cy-files-sharing-file-drop":"",name:t.name},scopedSlots:e._u([{key:"icon",fn:function(){return[s(t.NcIconSvgWrapper,{attrs:{svg:t.svgCloudUpload}})]},proxy:!0},{key:"description",fn:function(){return[s("p",[e._v("\n\t\t\t"+e._s(t.shareNote||t.t("files_sharing","Upload files to {foldername}.",{foldername:e.foldername}))+"\n\t\t")]),e._v(" "),t.disclaimer?s("p",[e._v("\n\t\t\t"+e._s(t.t("files_sharing","By uploading files, you agree to the terms of service."))+"\n\t\t")]):e._e(),e._v(" "),t.getSortedUploads().length?s(t.NcNoteCard,{staticClass:"file-drop-empty-content__note-card",attrs:{type:"success"}},[s("h2",{attrs:{id:"file-drop-empty-content__heading"}},[e._v("\n\t\t\t\t"+e._s(t.t("files_sharing","Successfully uploaded files"))+"\n\t\t\t")]),e._v(" "),s("ul",{staticClass:"file-drop-empty-content__list",attrs:{"aria-labelledby":"file-drop-empty-content__heading"}},e._l(t.getSortedUploads(),function(t){return s("li",{key:t},[e._v("\n\t\t\t\t\t"+e._s(t)+"\n\t\t\t\t")])}),0)]):e._e()]},proxy:!0},{key:"action",fn:function(){return[t.disclaimer?[s(t.NcButton,{attrs:{variant:"primary"},on:{click:function(e){t.showDialog=!0}}},[e._v("\n\t\t\t\t"+e._s(t.t("files_sharing","View terms of service"))+"\n\t\t\t")]),e._v(" "),s(t.NcDialog,{attrs:{"close-on-click-outside":"","content-classes":"terms-of-service-dialog",open:t.showDialog,name:t.t("files_sharing","Terms of service"),message:t.disclaimer},on:{"update:open":function(e){t.showDialog=e}}})]:e._e(),e._v(" "),s(t.UploadPicker,{attrs:{"allow-folders":"",content:()=>[],"no-menu":"",destination:t.uploadDestination,multiple:""}})]},proxy:!0}])})},[],!1,null,"994fb45e",null).exports},66860(e,s,t){t.d(s,{S:()=>B,g:()=>q,n:()=>V}),t(78945);var n=t(47387),i=t(21777),a=t(83391),o=t(71225),l=t(43627),r=t(87485),m=t(44368),d=t(53553),g=t(38759),c=t(11195),u=t(63814),f=t(95368),p=t(35947),h=t(380),w=t(85471),k=t(95674),v=t(98469),b=t(94205),T=t(57505),x=t(61744),y=t(15502),U=t(24764),C=t(74095),S=t(6695),L=t(95101);const F=(0,c.$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali , 2025","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\nabu.s3ud, 2024\nAli , 2025\n"},msgstr:["Last-Translator: Ali , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" هو اسم ممنوع لملف أو مجلد.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" هو نوع ممنوع أن يكون لملف.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" هو غير مسموح به في اسم ملف أو مجلد.']},"{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} ملف متعارض في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفان متعارضان في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفات متعارضة في {dirname}","{count} ملفات متعارضة في {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["مازال {seconds} ثوانٍ","مازال {seconds} ثوانٍ","مازال {seconds} ثوانٍ","مازال {seconds} ثوانٍ","مازال {seconds} ثوانٍ","مازال {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:["بضع ثوانٍ متبقية"]},assembling:{msgid:"assembling",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:["الإصدار الحالي"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["تعذّرت إعادة تجميع الكتل معاً "]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["تعذّر رفع الملف"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['غير مسموح ان ينتهي اسم الملف بـ "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["اسم ملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معروف"]},New:{msgid:"New",msgstr:["جديد"]},"New filename":{msgid:"New filename",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:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["تمّ تجاوز الرفع"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['رفع "{folder}" تمّ تجاوزه']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp , 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp , 2023\n"},msgstr:["Last-Translator: enolp , 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev , 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev , 2023\n"},msgstr:["Last-Translator: Rashad Aliyev , 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg",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":"Leandro Navarro , 2025","Language-Team":"Catalan (https://app.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:\nJoas Schilling, 2024\nv v , 2025\nLeandro Navarro , 2025\n"},msgstr:["Last-Translator: Leandro Navarro , 2025\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" és un nom de fitxer o carpeta prohibit.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" és un tipus de fitxer prohibit.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" no és permès dins del nom de fitxer o carpeta.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}fitxer en conflicte","{count} fitxer en conflicte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicte de fitxers a {dirname}","{count} conflictes de fitxers a {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} segon restant","{seconds} segons restants"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden uns segons"]},assembling:{msgid:"assembling",msgstr:["assemblatge"]},Cancel:{msgid:"Cancel",msgstr:["Cancel·lar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel·lar l'operació sencera"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crea nou"]},"estimating time left":{msgid:"estimating time left",msgstr:["s’està estimant el temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["No s'han pogut acoblar els trossos"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["No s'ha pogut pujar el fitxer"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Els noms de fitxer no han d\'acabar en "{segment}".']},"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 seleccioneu les dues versions, el fitxer entrant tindrà un número afegit al seu nom."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nom de fitxer no vàlid"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data de la darrera modificació desconeguda"]},New:{msgid:"New",msgstr:["Nou"]},"New filename":{msgid:"New filename",msgstr:["Nou nom de fitxer"]},"New version":{msgid:"New version",msgstr:["Nova versió"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Imatge de vista prèvia"]},Rename:{msgid:"Rename",msgstr:["Canviar el nom"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccioneu totes les caselles de selecció"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccioneu tots els fitxers existents"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccioneu tots el fitxers nous"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Omet {count} fitxer","Omet {count} fitxers"]},"Skip this file":{msgid:"Skip this file",msgstr:["Omet aquest fitxer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Mida desconeguda"]},Upload:{msgid:"Upload",msgstr:["Pujar"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]},"Upload folders":{msgid:"Upload folders",msgstr:["Pujar les carpetes"]},"Upload from device":{msgid:"Upload from device",msgstr:["Pujada des del dispositiu"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La pujada s'ha cancel·lat"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["S'ha omès la pujada"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['S\'ha omès la pujada de "{folder}"']},"Upload progress":{msgid:"Upload progress",msgstr:["Procés de pujada"]},"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:["Quan es selecciona una carpeta d'entrada, també es sobreescriuran els fitxers en conflicte dins d'ella."]},"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:["Quan es selecciona una carpeta d'entrada, el contingut s'escriu a la carpeta existent i es realitza una resolució recursiva de conflictes."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quins fitxers vols conservar?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Podeu canviar el nom del fitxer, saltar aquest fitxer o cancel·lar tota l'operació."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Heu de seleccionar almenys una versió de cada fitxer per continuar."]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki , 2025","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel , 2024\nMartin Hankovec, 2024\nAppukonrad , 2024\nPavel Borecki , 2025\n"},msgstr:["Last-Translator: Pavel Borecki , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ není povoleno použít jako název souboru či složky."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}“ není povoleného typu souboru."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}“ není povoleno použít v rámci názvu souboru či složky."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["zbývá {seconds}","zbývají {seconds}","zbývá {seconds}","zbývají {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"]},assembling:{msgid:"assembling",msgstr:["sestavování"]},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"]},"Create new":{msgid:"Create new",msgstr:["Vytvořit nový"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Shluky se nepodařilo dát dohromady"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Soubor se nepodařilo nahrát"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Názvy souborů nemohou končit na „{segment}“."]},"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:["Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný název souboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New filename":{msgid:"New filename",msgstr:["Nový název souboru"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},Rename:{msgid:"Rename",msgstr:["Přejmenovat"]},"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:{msgid:"Skip",msgstr:["Přeskočit"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit {count} soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Skip this file":{msgid:"Skip this file",msgstr:["Přeskočit tento soubor"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},Upload:{msgid:"Upload",msgstr:["Nahrát"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrát složky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrát ze zařízení"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávání bylo zrušeno"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrání bylo přeskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Nahrání „{folder}“ bylo přeskočeno"]},"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"]},"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:["Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit."]},"You need to select 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":"Finn Sommer , 2025","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\nRasmus Rosendahl-Kaa, 2024\nMartin Bonde , 2025\nFinn Sommer , 2025\n"},msgstr:["Last-Translator: Finn Sommer , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tilladt i et fil- eller mappenavn.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage","{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},assembling:{msgid:"assembling",msgstr:["samling"]},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"]},"Create new":{msgid:"Create new",msgstr:["Opret ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Mislykkedes at samle stumperne sammen"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Kunne ikke uploade filen"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavne må ikke slutte med "{segment}".']},"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:["Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldigt filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nyt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},Rename:{msgid:"Rename",msgstr:["Omdøb"]},"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:{msgid:"Skip",msgstr:["Spring over"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Spring {count} fil over","Spring {count} fil over"]},"Skip this file":{msgid:"Skip this file",msgstr:["Spring denne fil over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload fra enhed"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload er blevet annulleret"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload er blevet sprunget over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload af "{folder}" er blevet sprunget over']},"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."]},"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 indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen."]},"You need to select 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":"Martin Wilichowski, 2025","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\nAndy Scherzinger , 2024\nMark Ziegler , 2025\nMario Siegmann , 2025\nMartin Wilichowski, 2025\n"},msgstr:["Last-Translator: Martin Wilichowski, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} Sekunde verbleibt","{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"]},assembling:{msgid:"assembling",msgstr:["zusammenfügen"]},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:["Berechne verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Die Teile konnten nicht zusammengefügt werden"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Die Datei konnte nicht hochgeladen werden"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"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 du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Skip this file":{msgid:"Skip this file",msgstr:["Diese Datei überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"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öchtest du behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select 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":"Martin Wilichowski, 2025","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\nMark Ziegler , 2025\nMario Siegmann , 2025\nMartin Wilichowski, 2025\n"},msgstr:["Last-Translator: Martin Wilichowski, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} Sekunde verbleibt","{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"]},assembling:{msgid:"assembling",msgstr:["zusammenfügen"]},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:["Berechne verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Die Teile konnten nicht zusammengefügt werden"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Die Datei konnte nicht hochgeladen werden"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Skip this file":{msgid:"Skip this file",msgstr:["Diese Datei überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select 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":"Γιάννος, 2025","Language-Team":"Greek (https://app.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:\nJoas Schilling, 2024\nEfstathios Iosifidis , 2025\nΓιάννος, 2025\n"},msgstr:["Last-Translator: Γιάννος, 2025\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" είναι απαγορευμένο όνομα αρχείου ή φακέλου.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Το "{segment}" είναι απαγορευμένος τύπος αρχείου.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Το "{segment}" δεν επιτρέπεται μέσα στο όνομα ενός αρχείου ή φακέλου.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{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}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["Απομένει {seconds} δευτερόλεπτο","Απομένουν {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:["απομένουν λίγα δευτερόλεπτα"]},assembling:{msgid:"assembling",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:["Υπάρχουσα έκδοση"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Αποτυχία συναρμολόγησης των κομματιών"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Αποτυχία μεταφόρτωσης του αρχείου"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Τα ονόματα αρχείων δεν πρέπει να τελειώνουν με "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["Μη έγκυρο όνομα αρχείου"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Άγνωστη ημερομηνία τελευταίας τροποποίησης"]},New:{msgid:"New",msgstr:["Νέο"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Παράλειψη {count} αρχείου","Παράλειψη {count} αρχείων"]},"Skip this file":{msgid:"Skip this file",msgstr:["Παραλείψτε αυτό το αρχείο"]},"Unknown size":{msgid:"Unknown size",msgstr:["Άγνωστο μέγεθος"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Η μεταφόρτωση παραλείφθηκε"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Η μεταφόρτωση του "{folder}" παραλείφθηκε']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler , 2025","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 , 2025\n"},msgstr:["Last-Translator: Andi Chandler , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" is a forbidden file or folder name.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" is a forbidden file type.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" is not allowed inside a file or folder name.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} seconds left","{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"]},assembling:{msgid:"assembling",msgstr:["assembling"]},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"]},"Create new":{msgid:"Create new",msgstr:["Create new"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Failed to assemble the chunks together"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Failed to upload the file"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filenames must not end with "{segment}".']},"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."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Invalid filename"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New filename":{msgid:"New filename",msgstr:["New filename"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},Rename:{msgid:"Rename",msgstr:["Rename"]},"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:{msgid:"Skip",msgstr:["Skip"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Skip {count} file","Skip {count} files"]},"Skip this file":{msgid:"Skip this file",msgstr:["Skip this file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload folders"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload from device"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload has been cancelled"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload has been skipped"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload of "{folder}" has been skipped']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["You can either rename the file, skip this file or cancel the whole operation."]},"You need to select 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, 2025","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ , 2024\nJulio C. Ortega, 2025\n"},msgstr:["Last-Translator: Julio C. Ortega, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" es un nombre de archivo o carpeta no permitido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" es un tipo de archivo no permitido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" no está permitido dentro del nombre de un archivo o carpeta.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["queda {seconds} segundo","quedan {seconds} segundos","quedan {seconds} segundos"]},"{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"]},assembling:{msgid:"assembling",msgstr:["ensamblando"]},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"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Fallo al ensamblar todas las partes juntas"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Fallo al cargar el archivo"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Los nombres de archivo no deben terminar en "{segment}".']},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Nuevo nombre de archivo"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Omitir {count} archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Skip this file":{msgid:"Skip this file",msgstr:["Omitir este archivo"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},Upload:{msgid:"Upload",msgstr:["Cargar"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["La carga fue omitida"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['La carga de "{folder}" ha sido omitida']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Puede o bien, renombrar el archivo, omitirlo, o, cancelar toda la operación."]},"You need to select 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":"Matías Campo Hoet , 2024","Language-Team":"Spanish (Argentina) (https://app.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:\nJoas Schilling, 2024\nMatías Campo Hoet , 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet , 2024\nLanguage-Team: Spanish (Argentina) (https://app.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"]},'"{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, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última 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:["Vista previa de 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:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Cargar archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Cargar carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Cargar desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Carga cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la carga"]},"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 archivo en conflicto dentro de la misma también serán sobreescritos."]},"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 se escribe en la carpeta existente y se realiza 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_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":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.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:\nJoas Schilling, 2024\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.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"]},'"{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} archivos en conflicto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} archivo en conflicto en {dirname}","{count} archivos en conflicto en {dirname}","{count} archivo en conflicto en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos 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, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["en pausa"]},"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:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {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 archivo en conflicto dentro de la misma también será sobrescrito."]},"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 se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Cuáles 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_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":"Priit Jõerüüt , 2025","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:\nJoas Schilling, 2024\nPriit Jõerüüt , 2025\n"},msgstr:["Last-Translator: Priit Jõerüüt , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ on keelatud faili- või kausta nimi."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}“ on keelatud failitüüp."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}“ pole faili- või kausta nimes lubatud."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fail on vastuolus","{count} faili on vastuolus"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fail on vastuolus „{dirname}“ kaustas","{count} faili on vastuolus „{dirname}“ kaustas"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["jäänud {seconds} sekund","jäänud {seconds} sekundit"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["aega jäänud {time} "]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},assembling:{msgid:"assembling",msgstr:["koostamisel"]},Cancel:{msgid:"Cancel",msgstr:["Katkesta"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Katkesta kogu tegevus"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Katkesta üleslaadimine"]},Continue:{msgid:"Continue",msgstr:["Jätka"]},"Create new":{msgid:"Create new",msgstr:["Loo uus"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},"Existing version":{msgid:"Existing version",msgstr:["Olemasolev versioon"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Tükkide koostamine üheks tervikuks ei õnnestunud"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Faili üleslaadimine ei õnnestunud"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Failinime lõpus ei tohi olla „{segment}“."]},"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:["Kui sa valid mõlemad versioonid, lisatakse kopeeritud faili nimele number."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Vigane failinimi"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Viimase muutmise kuupäev pole teada"]},New:{msgid:"New",msgstr:["Uus"]},"New filename":{msgid:"New filename",msgstr:["Uus failinimi"]},"New version":{msgid:"New version",msgstr:["Uus versioon"]},paused:{msgid:"paused",msgstr:["pausil"]},"Preview image":{msgid:"Preview image",msgstr:["Vaata pildi eelvaadet"]},Rename:{msgid:"Rename",msgstr:["Muuda nime"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vali kõik märkeruudud"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vali kõik olemasolevad failid"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vali kõik uued failid"]},Skip:{msgid:"Skip",msgstr:["Jäta vahele"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Jäta vahele {count} fail","Jäta vahele {count} faili"]},"Skip this file":{msgid:"Skip this file",msgstr:["Jäta vahele see fail"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tundmatu suurus"]},Upload:{msgid:"Upload",msgstr:["Laadi üles"]},"Upload files":{msgid:"Upload files",msgstr:["Laadi failid üles"]},"Upload folders":{msgid:"Upload folders",msgstr:["Laadi kaustad üles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Laadi üles seadmest"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Üleslaadimine on katkestatud"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Üleslaadimine on vahele jäetud"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["„{folder}“ kausta üleslaadimine on vahele jäetud"]},"Upload progress":{msgid:"Upload progress",msgstr:["Üleslaadimise edenemine"]},"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:["Kui saabuvate failide kaust on valitud, siis seal asuvad vastuoluliste nimedega failid kirjutatakse samuti üle."]},"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:["Kui saabuvate failide kaust on valitud, siis sisu kirjutatakse olemasolevasse kausta ja käivitatakse rekursiivne vastuolude haldus."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Milliseid faile soovid säilitada?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Sa võid kas faili nime muuta, ta vahele jätta või kogu tegevuse katkestada."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Jätkamiseks pead valima vähemalt ühe versiooni igast failist."]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta , 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta , 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta , 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Alireza Rashidi, 2025","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:\nJoas Schilling, 2024\nreza reza , 2024\nAlireza Rashidi, 2025\n"},msgstr:["Last-Translator: Alireza Rashidi, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["{segment} یک نام فایل یا پوشه ممنوعه است."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["{segment} یک نوع فایل ممنوعه است."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["{segment} داخل نام فایل یا پوشه مجاز نیست."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{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} ناسازگاری داشت"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} ثانیه مانده","{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:["چند ثانیه مانده"]},assembling:{msgid:"assembling",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:["نگارش موجود"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["نتوانست تکه‌های را به سرهم کند"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["نتوانست پرونده را بارگذاری کند"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["نام پرونده نباید با {segment} پایان یابد."]},"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 filename":{msgid:"Invalid filename",msgstr:["نام پرونده نامعتبر"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["آخرین تاریخ تغییر نامشخص"]},New:{msgid:"New",msgstr:["جدید"]},"New filename":{msgid:"New filename",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:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["بارگذاری نادیده گرفته شده است"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["بارگذاری {folder} نادیده گرفته شده است"]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"fi",json:{charset:"utf-8",headers:{"Last-Translator":"Jiri Grönroos , 2025","Language-Team":"Finnish (Finland) (https://app.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:\nJoas Schilling, 2024\nthingumy, 2024\nteemue, 2024\nJiri Grönroos , 2025\n"},msgstr:["Last-Translator: Jiri Grönroos , 2025\nLanguage-Team: Finnish (Finland) (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" on kielletty tiedoston tai hakemiston nimi.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" on kielletty tiedostotyyppi.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ei ole sallittu tiedoston tai hakemiston nimessä.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} tiedoston ristiriita","{count} tiedoston ristiriita"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tiedoston ristiriita kansiossa {dirname}","{count} tiedoston ristiriita kansiossa {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} sekunti jäljellä","{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS 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ä"]},assembling:{msgid:"assembling",msgstr:["kootaan"]},Cancel:{msgid:"Cancel",msgstr:["Peruuta"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Peruuta koko toimenpide"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},Continue:{msgid:"Continue",msgstr:["Jatka"]},"Create new":{msgid:"Create new",msgstr:["Luo uusi"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},"Existing version":{msgid:"Existing version",msgstr:["Olemassa oleva versio"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Palojen kokoaminen yhteen epäonnistui"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Tiedoston lähetys epäonnistui"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Tiedoston nimi ei saa päättyä "{segment}"']},"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:["Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Kielletty/väärä tiedoston nimi"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Viimeisin muokkauspäivä on tuntematon"]},New:{msgid:"New",msgstr:["Uusi"]},"New filename":{msgid:"New filename",msgstr:["Uusi tiedostonimi"]},"New version":{msgid:"New version",msgstr:["Uusi versio"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Preview image":{msgid:"Preview image",msgstr:["Esikatsele kuva"]},Rename:{msgid:"Rename",msgstr:["Nimeä uudelleen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Valitse kaikki valintaruudut"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Valitse kaikki olemassa olevat tiedostot"]},"Select all new files":{msgid:"Select all new files",msgstr:["Valitse kaikki uudet tiedostot"]},Skip:{msgid:"Skip",msgstr:["Ohita"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ohita tämä tiedosto","Ohita {count} tiedostoa"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tuntematon koko"]},Upload:{msgid:"Upload",msgstr:["Lähetä"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]},"Upload folders":{msgid:"Upload folders",msgstr:["Lähetä kansioita"]},"Upload from device":{msgid:"Upload from device",msgstr:["Lähetä laitteelta"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Lähetys on peruttu"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Lähetys on ohitettu"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Hakemiston "{folder}" lähetys on ohitettu']},"Upload progress":{msgid:"Upload progress",msgstr:["Lähetyksen edistyminen"]},"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:["Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan."]},"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:["Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mitkä tiedostot haluat säilyttää?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi."]}}}}},{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":"Caro Leviia, 2025","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\nJEEEEEEEEEEEEEEEEEEEEEED, 2024\nJérôme HERBINET, 2024\nacazenave, 2024\nLisa Cintosh, 2025\nLdm Public , 2025\nCaro Leviia, 2025\n"},msgstr:["Last-Translator: Caro Leviia, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" est un nom de fichier ou de dossier interdit.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" est un type de fichier interdit.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} seconde restante","{seconds} secondes restantes","{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"]},assembling:{msgid:"assembling",msgstr:["assemblage"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler toute l'opération"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les téléversements"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"Create new":{msgid:"Create new",msgstr:["Créer un nouveau"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Échec de l'assemblage des morceaux"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Échec de téléversement du fichier"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Les noms des fichiers ne doivent pas terminer par "{segment}".']},"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 vous sélectionnez les deux versions, un numéro sera ajouté au nom du fichier entrant."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nom de fichier invalide"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New filename":{msgid:"New filename",msgstr:["Nouveau nom de fichier"]},"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"]},Rename:{msgid:"Rename",msgstr:["Renommer"]},"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:{msgid:"Skip",msgstr:["Ignorer"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} fichier ignoré","{count} fichiers ignorés","{count} fichiers ignorés"]},"Skip this file":{msgid:"Skip this file",msgstr:["Ignorer ce fichier"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},Upload:{msgid:"Upload",msgstr:["Téléverser"]},"Upload files":{msgid:"Upload files",msgstr:["Téléverser des fichiers"]},"Upload folders":{msgid:"Upload folders",msgstr:["Téléverser des dossiers"]},"Upload from device":{msgid:"Upload from device",msgstr:["Téléverser depuis l'appareil"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Le téléversement a été annulé"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Le téléversement a été ignoré"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Le téléversement de "{folder}" a été ignoré']},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléversement"]},"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."]},"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:["Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Vous pouvez soit renommer le fichier, soit ignorer le fichier, soit annuler toute l'opération."]},"You need to select 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, 2025","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, 2025\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Is ainm toirmiscthe comhaid nó fillteáin é "{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Is cineál comhaid toirmiscthe é "{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Ní cheadaítear "{segment}" taobh istigh d\'ainm comhaid nó fillteáin.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid"]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} soicind fágtha","{seconds} soicind fágtha","{seconds} soicind fágtha","{seconds} soicind fágtha","{seconds} soicind fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},assembling:{msgid:"assembling",msgstr:["ag cur le chéile"]},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 "]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Theip ar na smután a chur le chéile le chéile"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Theip ar uaslódáil an chomhaid"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Níor cheart go gcríochnaíonn comhaid chomhad le "{segment}".']},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Ainm comhaid 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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad {count}","Léim thar {count} comhad","Léim thar {count} comhad","Léim thar {count} comhad","Léim thar {count} comhad"]},"Skip this file":{msgid:"Skip this file",msgstr:["Seachain an comhad seo"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},Upload:{msgid:"Upload",msgstr:["Uaslódáil"]},"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 ó ghléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Léiríodh an uaslódáil"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Léiríodh an uaslódáil "{folder}".']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú."]},"You need to select 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 , 2025","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 , 2025\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» é un nome vedado para un ficheiro ou cartafol."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» é un tipo de ficheiro vedado."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["falta {seconds} segundo","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"]},assembling:{msgid:"assembling",msgstr:["ensamblando"]},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"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Produciuse un fallo ao ensamblar os anacos"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Produciuse un fallo ao enviar o ficheiro"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Os nomes de ficheiros non deben rematar con «{segment}»."]},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Novo nome de ficheiro"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Omitir {count} ficheiro","Omitir {count} ficheiros"]},"Skip this file":{msgid:"Skip this file",msgstr:["Omitir este ficheiro"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["O envío foi omitido"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["O envío de «{folder}» foi omitido"]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación."]},"You need to select 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":"Gyuris Gellért , 2024","Language-Team":"Hungarian (Hungary) (https://app.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:\nJoas Schilling, 2024\nGyuris Gellért , 2024\n"},msgstr:["Last-Translator: Gyuris Gellért , 2024\nLanguage-Team: Hungarian (Hungary) (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Tiltott fájl- vagy mappanév: „{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Tiltott fájltípus: „{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Nem megengedett egy fájl- vagy mappanévben: „{segment}".']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}fájlt érintő konfliktus","{count} fájlt érintő konfliktus"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fájlt érintő konfliktus a mappában: {dirname}","{count}fájlt érintő konfliktus a mappában: {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS 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"]},Cancel:{msgid:"Cancel",msgstr:["Mégse"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Teljes művelet megszakítása"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},Continue:{msgid:"Continue",msgstr:["Tovább"]},"Create new":{msgid:"Create new",msgstr:["Új létrehozása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},"Existing version":{msgid:"Existing version",msgstr:["Jelenlegi változat"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Fájlnevek nem végződhetnek erre: „{segment}”."]},"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:["Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Érvénytelen fájlnév"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Utolsó módosítás dátuma ismeretlen"]},New:{msgid:"New",msgstr:["Új"]},"New filename":{msgid:"New filename",msgstr:["Új fájlnév"]},"New version":{msgid:"New version",msgstr:["Új verzió"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Preview image":{msgid:"Preview image",msgstr:["Kép előnézete"]},Rename:{msgid:"Rename",msgstr:["Átnevezés"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Minden jelölőnégyzet kijelölése"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Minden jelenlegi fájl kijelölése"]},"Select all new files":{msgid:"Select all new files",msgstr:["Minden új fájl kijelölése"]},Skip:{msgid:"Skip",msgstr:["Kihagyás"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ezen fájl kihagyása","{count}fájl kihagyása"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ismeretlen méret"]},Upload:{msgid:"Upload",msgstr:["Feltöltés"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]},"Upload folders":{msgid:"Upload folders",msgstr:["Mappák feltöltése"]},"Upload from device":{msgid:"Upload from device",msgstr:["Feltöltés eszközről"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Feltöltés meg lett szakítva"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Feltöltés át lett ugorva"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["„{folder}” feltöltése át lett ugorva"]},"Upload progress":{msgid:"Upload progress",msgstr:["Feltöltési folyamat"]},"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:["Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek."]},"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:["Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mely fájlokat kívánja megtartani?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["A folytatáshoz minden fájlból legalább egy verziót ki kell választani."]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly , 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ , 2023\nEmpty Slot Filler, 2023\nLinerly , 2023\n"},msgstr:["Last-Translator: Linerly , 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli , 2025","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:\nJoas Schilling, 2024\nSveinn í Felli , 2025\n"},msgstr:["Last-Translator: Sveinn í Felli , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er bannað sem heiti á skrá eða möppu.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er bönnuð skráartegund.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ekki leyfilegt innan í heiti á skrá eða möppu.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} sekúnda eftir","{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"]},assembling:{msgid:"assembling",msgstr:["set saman"]},Cancel:{msgid:"Cancel",msgstr:["Hætta við"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Hætta við alla aðgerðina"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"Create new":{msgid:"Create new",msgstr:["Búa til nýtt"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"Failed assembling the chunks together":{msgid:"Failed assembling the chunks together",msgstr:["Mistókst að setja saman bútana"]},"Failed uploading the file":{msgid:"Failed uploading the file",msgstr:["Mistókst að senda inn skrána"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Skráaheiti mega ekki enda á "{segment}".']},"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:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti innkomandi skrárinnar."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ógilt skráarheiti"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New filename":{msgid:"New filename",msgstr:["Nýtt skráarheiti"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},Rename:{msgid:"Rename",msgstr:["Endurnefna"]},"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:{msgid:"Skip",msgstr:["Sleppa"]},"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:{msgid:"Upload",msgstr:["Senda inn"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Upload folders":{msgid:"Upload folders",msgstr:["Senda inn möppur"]},"Upload from device":{msgid:"Upload from device",msgstr:["Senda inn frá tæki"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Hætt hefur verið við innsendingu"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Innsendingu hefur verið sleppt"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Innsendingu á "{folder}" hefur verið sleppt']},"Upload progress":{msgid:"Upload progress",msgstr:["Framvinda innsendingar"]},"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:["Þegar valin er mappa fyrir skrár sem berast, verður einnig skrifað yfir allar skrár í henni sem valda árekstrum."]},"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:["Þegar valin er mappa fyrir skrár sem berast, verður efnið skrifað inn í fyrirliggjandi möppu og farið í að leysa úr árekstrum."]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Þú getur annaðhvort endurnefnt skrána, sleppt þessari skrá eða hætt við alla þessa aðgerð."]},"You need to select 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":"Roberto Resoli, 2025","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:\nJoas Schilling, 2024\nFrancesco Sercia, 2024\nalbanobattistella , 2024\nLorenzo Taiocchi, 2025\nesseti kappa, 2025\nRoberto Resoli, 2025\n"},msgstr:["Last-Translator: Roberto Resoli, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" è un nome di file o cartella proibito.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}"è un tipo di file proibito.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" non è consentito all\'interno di un nome di file o cartella.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} secondo rimanente ","{seconds} secondi rimanenti ","{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"]},assembling:{msgid:"assembling",msgstr:["assemblaggio"]},Cancel:{msgid:"Cancel",msgstr:["Annulla"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annulla l'intera operazione"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"Create new":{msgid:"Create new",msgstr:["Crea nuovo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Impossibile unire i pezzi"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Impossibile caricare il file"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['I nomi dei file non devono terminare con "{segment}".']},"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 selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome file non valido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New filename":{msgid:"New filename",msgstr:["Nuovo nome file"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},Rename:{msgid:"Rename",msgstr:["Rinomina"]},"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:{msgid:"Skip",msgstr:["Salta"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Sata {count} file","Salta {count} file","Salta {count} file"]},"Skip this file":{msgid:"Skip this file",msgstr:["Salta questo file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},Upload:{msgid:"Upload",msgstr:["Caricamento"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Upload folders":{msgid:"Upload folders",msgstr:["Carica cartelle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carica dal dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Caricamento annullato"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Il caricamento è stato saltato"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Il caricamento di "{folder}" è stato saltato']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso del caricamento"]},"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 si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti."]},"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:["Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["È possibile rinominare il file, ignorarlo o annullare l'intera operazione."]},"You need to select 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:"ja",json:{charset:"utf-8",headers:{"Last-Translator":"kojima.imamura, 2025","Language-Team":"Japanese (Japan) (https://app.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:\nJoas Schilling, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\n貴宝, 2025\nkshimohata, 2025\nkojima.imamura, 2025\n"},msgstr:["Last-Translator: kojima.imamura, 2025\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" は禁止されているファイルまたはフォルダ名です。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" は禁止されているファイルタイプです。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['ファイルまたはフォルダ名に "{segment}" を含めることはできません。']},"{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",msgid_plural:"{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:["残り数秒"]},assembling:{msgid:"assembling",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:["既存バージョン"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["チャンクの組み立てに失敗しました"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["ファイルのアップロードに失敗しました"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['ファイル名の末尾に "{segment}" を付けることはできません。']},"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 filename":{msgid:"Invalid filename",msgstr:["無効なファイル名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最終更新日不明"]},New:{msgid:"New",msgstr:["新規作成"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} 個のファイルをスキップする"]},"Skip this file":{msgid:"Skip this file",msgstr:["このファイルをスキップする"]},"Unknown size":{msgid:"Unknown size",msgstr:["サイズ不明"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["アップロードがスキップされました"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" のアップロードがスキップされました']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:["続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。"]}}}}},{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":"보헤민, 2025","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\nshin2012 , 2025\n이상오, 2025\n보헤민, 2025\n"},msgstr:["Last-Translator: 보헤민, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}"은(는) 금지된 파일 및 폴더 이름입니다.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}"은(는) 금지된 파일 형식입니다.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['파일이나 폴더 이름에 "{segment}"을(를) 사용할 수 없습니다.']},"{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",msgid_plural:"{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:["곧 완료"]},assembling:{msgid:"assembling",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:["현재 버전"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["조각을 취합하는 데 실패"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["파일을 업로드하는 데 실패"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['파일 이름은 "{segment}"(으)로 끝나야 합니다.']},"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 filename":{msgid:"Invalid filename",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count}개 파일 건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgstr:["이 파일 건너뛰기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["업로드를 건너뛰었습니다."]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" 업로드를 건너뛰었습니다.']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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":"bone NI, 2025","Language-Team":"Lao (https://app.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:\nbone NI, 2025\n"},msgstr:["Last-Translator: bone NI, 2025\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ແມ່ນຊື່ໄຟລ໌ ຫຼື ໂຟລເດີທີ່ບໍ່ອະນຸຍາດ.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ແມ່ນປະເພດໄຟລ໌ທີ່ບໍ່ອະນຸຍາດ.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['ບໍ່ອະນຸຍາດໃຫ້ມີ "{segment}" ຢູ່​ໃນຊື່ໄຟລ໌ ຫຼື ໂຟລເດີ.']},"{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:["ໄຟລ໌ຊ້ຳກັນ {count} ລາຍການ ໃນ {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{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:["ເຫຼືອເວລາອີກບໍ່ດົນ"]},assembling:{msgid:"assembling",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:["ສະບັບທີ່ມີຢູ່ແລ້ວ"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["ການຮວບຮວມສ່ວນຕ່າງໆເຂົ້າກັນບໍ່ສຳເລັດ"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["ອັບໂຫຼດໄຟລ໌ບໍ່ສຳເລັດ"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['ຊື່ໄຟລ໌ຕ້ອງບໍ່ລົງທ້າຍດ້ວຍ "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["ຊື່ໄຟລ໌ບໍ່ຖືກຕ້ອງ"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["ບໍ່ຊາບວັນທີແກ້ໄຂຫຼ້າສຸດ"]},New:{msgid:"New",msgstr:["ໃໝ່"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["ຂ້າມ {count} ໄຟລ໌"]},"Skip this file":{msgid:"Skip this file",msgstr:["ຂ້າມໄຟລ໌ນີ້"]},"Unknown size":{msgid:"Unknown size",msgstr:["ບໍ່ຊາບຂະໜາດ"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["ການອັບໂຫຼດໄດ້ຖືກຂ້າມໄປແລ້ວ"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['ການອັບໂຫຼດ "{folder}" ໄດ້ຖືກຂ້າມໄປແລ້ວ']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"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":"Edgars Andersons, 2025","Language-Team":"Latvian (https://app.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:\nPapuass , 2024\nArmīns Jeltajevs , 2024\nEdgars Andersons, 2025\n"},msgstr:["Last-Translator: Edgars Andersons, 2025\nLanguage-Team: Latvian (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ir aizliegts datnes vai mapes nosaukums.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ir aizliegts datnes veids.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ir nav ļauts datnes vai mapes nosaukumā.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} nesaderīgu datņu","{count} nesaderīga datne","{count} nesaderīgas datnes"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} nesaderīgu datņu {dirname}","{count} nesaderīga datne {dirname}","{count} nesaderīgas datnes {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["Atlikušas {seconds} sekundes","Atlikusi {seconds} sekunde","Atlikušas {seconds} sekundes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["atlicis {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["atlikušas dažas sekundes"]},assembling:{msgid:"assembling",msgstr:["sakopo"]},Cancel:{msgid:"Cancel",msgstr:["Atcelt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Atcelt visu darbību"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Atcelt augšupielādes"]},Continue:{msgid:"Continue",msgstr:["Turpināt"]},"Create new":{msgid:"Create new",msgstr:["Izveidot jaunu"]},"estimating time left":{msgid:"estimating time left",msgstr:["paredzamais atlikušais laiks"]},"Existing version":{msgid:"Existing version",msgstr:["Esošā versija"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Neizdevās apvienot gabalus"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Neizdevās augšupielādēt datni"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Datnes nosaukumi nedrīkst beigties ar "{segment}".']},"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:["Ja atlasa abas versijas, ienākošās datnes nosaukumam tiks pievienots skaitlis."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nederīgs datnes nosaukums"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Pēdējais izmainīšanas datums nav zināms"]},New:{msgid:"New",msgstr:["Jauns"]},"New filename":{msgid:"New filename",msgstr:["Jauns datnes nosaukums"]},"New version":{msgid:"New version",msgstr:["Jauna versija"]},paused:{msgid:"paused",msgstr:["apturēta"]},"Preview image":{msgid:"Preview image",msgstr:["Priekšskatīt attēlu"]},Rename:{msgid:"Rename",msgstr:["Pārdēvēt"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Atlasīt visas izvēles rūtiņas"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Atlasīt visas esošās datnes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Atlasīt visas jaunās datnes"]},Skip:{msgid:"Skip",msgstr:["Izlaist"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Izlaist {count} datņu","Izlaist {count} datni","Izlaist {count} datnes"]},"Skip this file":{msgid:"Skip this file",msgstr:["Izlaist šo datni"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nezināms izmērs"]},Upload:{msgid:"Upload",msgstr:["Augšupielādēt"]},"Upload files":{msgid:"Upload files",msgstr:["Augšupielādēt datnes"]},"Upload folders":{msgid:"Upload folders",msgstr:["Augšupielādēt mapes"]},"Upload from device":{msgid:"Upload from device",msgstr:["Augšupielādēt no ierīces"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Augšupielāde tika atcelta"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Augšupielāde tika izlaista"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" augšupielāde tika izlaista']},"Upload progress":{msgid:"Upload progress",msgstr:["Augšupielādes virzība"]},"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:["Kad ir atlasīta ienākošā mape, tiks pārrakstītas arī jebkuras tajā esošās nesaderīgās datnes."]},"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:["Kad ir atlasīta ienākošā mape, saturs tiks rakstīts esošajā mapē, un tiks veikta rekursīva nesaderību novēršana."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Kuras datnes paturēt?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Datni var vai nu pārdēvēt, vai izlaist vai atcelt visu darbību."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ir nepieciešams atlasīt vismaz vienu katras datnes versiju, lai turpinātu."]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров , 2025","Language-Team":"Macedonian (https://app.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:\nJoas Schilling, 2024\nСашко Тодоров , 2025\n"},msgstr:["Last-Translator: Сашко Тодоров , 2025\nLanguage-Team: Macedonian (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" е забрането име на датотека или име на папка.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" е забранет вид на датотека.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" не е дозволено во името датотека или папка.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{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}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["уште {seconds} секунда","уште {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:["уште неколку секунди"]},assembling:{msgid:"assembling",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:["Постоечка верзија"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Неуспешно составување на парчињата заедно"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Неуспешно прикачување на датотека"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Имињата на датотеките не смеат да завршуваат со "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["Невалидно име на датотека"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Непознат датумот на последната измена"]},New:{msgid:"New",msgstr:["Нова"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Прескокни {count} датотека","Прескокни {count} датотеки"]},"Skip this file":{msgid:"Skip this file",msgstr:["Прескокни ја оваа датотека"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната големина"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Прикачувањето е прескокнато"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Прикачувањето на "{folder}" е прескокнато']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"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":"DT Navy, 2024","Language-Team":"Malay (Malaysia) (https://app.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:\nDT Navy, 2024\n"},msgstr:["Last-Translator: DT Navy, 2024\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" adalah fail dan nama folder yang dilarang']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" adalah jenis fail yang dilarang']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" adalah tidak dibenarkan dalam nama fail atau folder']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} files bertindih"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fail bertindih dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saat tinggal"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tinggal"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["beberapa saat lagi"]},Cancel:{msgid:"Cancel",msgstr:["batal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Batal keseluruhan operasi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["batal muat naik"]},Continue:{msgid:"Continue",msgstr:["teruskan"]},"Create new":{msgid:"Create new",msgstr:["Buat baharu"]},"estimating time left":{msgid:"estimating time left",msgstr:["jangkaan masa tinggal"]},"Existing version":{msgid:"Existing version",msgstr:["versi sedia ada"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Nama fail tidak boleh berakhir dengan "{segment}".']},"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:["Jika dua versi dipilih, fail yang masuk akan ditambah bilangan pada namanya."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nama fail tidak sah"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tarikh terakhir diubah suai tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New filename":{msgid:"New filename",msgstr:["Nama fail baharu"]},"New version":{msgid:"New version",msgstr:["Versi baharu"]},paused:{msgid:"paused",msgstr:["Jeda"]},"Preview image":{msgid:"Preview image",msgstr:["Pratonton gambar"]},Rename:{msgid:"Rename",msgstr:["Menamakan semula"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak pilihan"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua fail yang wujud"]},"Select all new files":{msgid:"Select all new files",msgstr:["pilih semua fail baharu"]},Skip:{msgid:"Skip",msgstr:["Langkau"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Langkau fail {count}"]},"Unknown size":{msgid:"Unknown size",msgstr:["Saiz tidak diketahui"]},Upload:{msgid:"Upload",msgstr:["Muat naik"]},"Upload files":{msgid:"Upload files",msgstr:["Muat naik fail"]},"Upload folders":{msgid:"Upload folders",msgstr:["Muat naik folder"]},"Upload from device":{msgid:"Upload from device",msgstr:["Muat naik dari peranti"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Muat naik telah dibatalkan"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Muat naik telah dilangkau"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Muat naik "{folder}" telah dilangkau']},"Upload progress":{msgid:"Upload progress",msgstr:["Kemajuan muat naik"]},"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:["Apabila folder masuk dipilih, sebarang fail bertindih akan ditulis semula"]},"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:["Apabila folder masuk dipilih, kandungan ditulis ke dalam folder sedia ada dan penyelesaian konflik rekursif dilakukan."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Fail yang mana ingin disimpan?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["And boleh menamakan semula fail, langkau fail tersebut atau membatalkan keseluruhan operasi"]},"You need to select 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 perlu memilih sekurangnya satu versi setiap fail untuk teruskan"]}}}}},{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",json:{charset:"utf-8",headers:{"Last-Translator":"Roger Knutsen, 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:\nJoas Schilling, 2024\nRoger Knutsen, 2024\n"},msgstr:["Last-Translator: Roger Knutsen, 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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tillatt i et fil- eller mappenavn.']},"{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:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hele operasjonen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"Create new":{msgid:"Create new",msgstr:["Opprett ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavn må ikke slutte med "{segment}".']},"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:["Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldig filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},Rename:{msgid:"Rename",msgstr:["Omdøp"]},"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:{msgid:"Skip",msgstr:["Hopp over"]},"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 files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Last opp mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Last opp fra enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Opplastingen er kansellert"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Opplastingen er hoppet over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Opplasting av "{folder}" er hoppet over']},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"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 innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet."]},"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 innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen."]},"You need to select 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":"Stephan Paternotte , 2025","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:\nJoas Schilling, 2024\nJoris deLeeuw, 2025\nStephan Paternotte , 2025\n"},msgstr:["Last-Translator: Stephan Paternotte , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" is een verboden bestands- of mapnaam.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" is een verboden bestandstype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" is niet toegestaan in een bestand of mapnaam.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} bestandsconflict","{count} bestanden conflicteren"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} bestandsconflict in {dirname}","{count} bestandenconflicten in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} seconde resterend","{seconds} seconden resterend"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} resterend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden over"]},assembling:{msgid:"assembling",msgstr:["samenstellen"]},Cancel:{msgid:"Cancel",msgstr:["Annuleren"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["De hele bewerking annuleren"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploaden annuleren"]},Continue:{msgid:"Continue",msgstr:["Doorgaan"]},"Create new":{msgid:"Create new",msgstr:["Nieuw aanmaken"]},"estimating time left":{msgid:"estimating time left",msgstr:["resterende tijd schatten"]},"Existing version":{msgid:"Existing version",msgstr:["Bestaande versie"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Kon de stukken niet samenvoegen"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Het uploaden van het bestand is mislukt"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Bestandsnamen mogen niet eindigen met "{segment}".']},"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:["Als je beide versies selecteert, krijgt het binnenkomende bestand een nummer toegevoegd aan de naam."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ongeldige bestandsnaam"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Laatst gewijzigde datum onbekend"]},New:{msgid:"New",msgstr:["Nieuw"]},"New filename":{msgid:"New filename",msgstr:["Nieuwe bestandsnaam"]},"New version":{msgid:"New version",msgstr:["Nieuwe versie"]},paused:{msgid:"paused",msgstr:["gepauzeerd"]},"Preview image":{msgid:"Preview image",msgstr:["Voorbeeldweergave"]},Rename:{msgid:"Rename",msgstr:["Hernoemen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle opties selecteren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle bestanden selecteren"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle nieuwe bestanden selecteren"]},Skip:{msgid:"Skip",msgstr:["Overslaan"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} bestand overslaan","{count} bestanden overslaan"]},"Skip this file":{msgid:"Skip this file",msgstr:["Dit bestand overslaan"]},"Unknown size":{msgid:"Unknown size",msgstr:["Onbekende grootte"]},Upload:{msgid:"Upload",msgstr:["Uploaden"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]},"Upload folders":{msgid:"Upload folders",msgstr:["Mappen uploaden"]},"Upload from device":{msgid:"Upload from device",msgstr:["Uploaden vanaf apparaat"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload is geanulleerd"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload is overgeslagen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload van "{folder}" is overgeslagen']},"Upload progress":{msgid:"Upload progress",msgstr:["Uploadvoortgang"]},"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:["Wanneer een inkomende map is geselecteerd, worden alle conflicterende bestanden daarin ook overschreven."]},"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:["Wanneer een inkomende map is geselecteerd, wordt de inhoud in de bestaande map geschreven en wordt er een recursieve conflictoplossing uitgevoerd."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welke bestanden wil je behouden?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Je kunt het bestand ofwel hernoemen, dit bestand overslaan of de hele bewerking annuleren."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Je moet minstens één versie van elk bestand selecteren om door te gaan."]}}}}},{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":"Valdnet, 2025","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 Strebski , 2024\nValdnet, 2025\n"},msgstr:["Last-Translator: Valdnet, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" to zabroniona nazwa pliku lub katalogu.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" jest zabronionym typem pliku.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Znak "{segment}" nie jest dozwolony w nazwie pliku lub katalogu.']},"{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"]},"Create new":{msgid:"Create new",msgstr:["Utwórz nowe"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Nazwy plików nie mogą kończyć się na "{segment}".']},"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."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nieprawidłowa nazwa pliku"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New filename":{msgid:"New filename",msgstr:["Nowa nazwa pliku"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},Rename:{msgid:"Rename",msgstr:["Zmiana nazwy"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie pola wyboru"]},"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:{msgid:"Skip",msgstr:["Pomiń"]},"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:{msgid:"Upload",msgstr:["Wyślij"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload folders":{msgid:"Upload folders",msgstr:["Wyślij katalogi"]},"Upload from device":{msgid:"Upload from device",msgstr:["Wyślij z urządzenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Wysyłanie zostało anulowane"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Wysyłanie zostało pominięte"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Wysyłanie "{folder}" zostało pominięte']},"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 katalogu 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 katalogu przychodzącego zawartość jest zapisywana w istniejącym katalogu 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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację."]},"You need to select 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":"F Bausch, 2025","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes , 2024\nRodrigo Sottomaior Macedo , 2024\nF Bausch, 2025\n"},msgstr:["Last-Translator: F Bausch, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" é um nome de arquivo ou pasta proibido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" é um tipo de arquivo proibido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" não é permitido dentro de um nome de arquivo ou pasta.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} segundo restante","{seconds} segundos restantes","{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"]},assembling:{msgid:"assembling",msgstr:["montando"]},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"]},"Create new":{msgid:"Create new",msgstr:["Criar novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Falha ao montar os pedaços juntos"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Falha ao fazer o upload do arquivo"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Os nomes dos arquivos não devem terminar com "{segment}".']},"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 você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome de arquivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de arquivo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Selecionar todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecionar todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecionar todos os novos arquivos"]},Skip:{msgid:"Skip",msgstr:["Pular"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Pular {count} arquivo","Pular {count} de arquivos","Pular {count} arquivos"]},"Skip this file":{msgid:"Skip this file",msgstr:["Pular este arquivo"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},Upload:{msgid:"Upload",msgstr:["Fazer upload"]},"Upload files":{msgid:"Upload files",msgstr:["Fazer upload de arquivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Fazer upload de pastas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Fazer upload do dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O upload foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O upload foi pulado"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['O upload de "{folder}" foi pulado']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso de upload"]},"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 recebida é selecionada, todos os arquivos conflitantes dentro dela também serão sobrescritos."]},"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:["Quando uma pasta recebida é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operaçã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:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"artur25 , 2025","Language-Team":"Portuguese (Portugal) (https://app.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:\nJoas Schilling, 2024\nguilherme ferreira, 2025\nartur25 , 2025\n"},msgstr:["Last-Translator: artur25 , 2025\nLanguage-Team: Portuguese (Portugal) (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" é um Nome de arquivo ou pasta proibido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" é um tipo de ficheiro proibido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" não é permitido num nome de ficheiro ou pasta.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["Conflito em {count} ficheiro","Conflito em {count} ficheiros","Conflito em {count} ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiro em {dirname}","{count} conflitos de ficheiro em {dirname}","{count} conflitos de ficheiro em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["Falta {seconds} segundo","Faltam {seconds} segundos","Faltam {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},assembling:{msgid:"assembling",msgstr:["montagem"]},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 envios"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Criar novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Falha ao juntar os fragmentos"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Falha ao carregar o ficheiro"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Os nomes de ficheiro não podem terminar em "{segment}".']},"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 selecionar ambas as versões, será adicionado um número ao nome do ficheiro recebido."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome de ficheiro inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de ficheiro"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Pré-visualizar imagem"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Selecionar todas as caixas de verificação"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Ignorar"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} ficheiro","Ignorar {count} ficheiros","Ignorar {count} ficheiros"]},"Skip this file":{msgid:"Skip this file",msgstr:["Ignorar este ficheiro"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},Upload:{msgid:"Upload",msgstr:["Carregar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Carregar pastas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carregar a partir do dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O carregamento foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O carregamento foi ignorado"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['O carregamento da pasta "{folder}" foi ignorado']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso do carregamento"]},"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:["Ao selecionar uma pasta recebida, quaisquer ficheiros em conflito no seu interior também serão sobrescritos."]},"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:["Ao selecionar uma pasta recebida, o conteúdo é escrito na pasta existente e é efetuada uma resolução de conflitos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais ficheiros pretende manter?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Pode renomear o ficheiro, ignorá-lo ou cancelar toda a operaçã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:["Precisa de selecionar pelo menos uma versão de cada ficheiro para continuar."]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu , 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu , 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu , 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Igor Orlov, 2025","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\nВлад, 2024\nAlex , 2024\nRoman Stepanov, 2024\nMaksim Sukharev, 2024\nАлександр, 2025\nIgor Orlov, 2025\n"},msgstr:["Last-Translator: Igor Orlov, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» — это запрещенное имя файла или папки."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» — это запрещенный тип файла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» не допускается в имени файла или папки."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["осталась {seconds} секунда","осталось {seconds} секунды","осталось {seconds} секунд","осталось {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:["осталось несколько секунд"]},assembling:{msgid:"assembling",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:["Текущая версия"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Не удалось собрать части вместе"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Не удалось загрузить файл"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена файлов не должны заканчиваться на «{segment}»"]},"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 filename":{msgid:"Invalid filename",msgstr:["Неверное имя файла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Пропустить {count} файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Skip this file":{msgid:"Skip this file",msgstr:["Пропустить этот файл"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Загрузка была пропущена"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Загрузка «{folder}» была пропущена"]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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:"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:"sk",json:{charset:"utf-8",headers:{"Last-Translator":"Anton Krajcik , 2025","Language-Team":"Slovak (Slovakia) (https://app.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:\nJozef Gaal , 2024\nLinker Linker , 2024\nAnton Krajcik , 2025\n"},msgstr:["Last-Translator: Anton Krajcik , 2025\nLanguage-Team: Slovak (Slovakia) (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ je zakázaný názov súboru alebo priečinka."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je zákazaný typ súboru.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}“ je zakázané v názve súboru alebo adresára.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} súbor má konflikt","{count} súbory majú konflikt","{count} súborov má konflikt","{count} súborov má konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} súborový konflikt v {dirname}","{count} súborové konflikty v {dirname}","{count} súborových konfliktov v {dirname}","{count} súborových konfliktov v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} sekunda zostáva","{seconds} sekúnd zostáva","{seconds} sekúnd zostáva","{seconds} sekundy zostávajú"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} zostáva"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zostáva niekoľko sekúnd"]},assembling:{msgid:"assembling",msgstr:["zhromažďovanie"]},Cancel:{msgid:"Cancel",msgstr:["Zrušiť"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušiť celú operáciu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušiť nahrávanie"]},Continue:{msgid:"Continue",msgstr:["Pokračovať"]},"Create new":{msgid:"Create new",msgstr:["Vytvoriť nové"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovanie zostávajúceho času"]},"Existing version":{msgid:"Existing version",msgstr:["Existujúca verzia"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Nepodarilo sa dať časti dohromady."]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Nepodarilo sa nahrať súbor"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Názvy súborov nesmú končiť znakom "{segment}".']},"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:["Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný názov súboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dátum poslednej úpravy neznámy"]},New:{msgid:"New",msgstr:["Nový"]},"New filename":{msgid:"New filename",msgstr:["Nový názov súboru"]},"New version":{msgid:"New version",msgstr:["Nová verzia"]},paused:{msgid:"paused",msgstr:["pozastavené"]},"Preview image":{msgid:"Preview image",msgstr:["Náhľad obrázka"]},Rename:{msgid:"Rename",msgstr:["Premenovať"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označiť všetky výberové políčka"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrať všetky existujúce súbory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrať všetky nové súbory"]},Skip:{msgid:"Skip",msgstr:["Preskočiť"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Preskočiť {count} súbor","Preskočiť {count} súborov","Preskočiť {count} súborov","Preskočiť {count} súbory"]},"Skip this file":{msgid:"Skip this file",msgstr:["Preskočiť tento súbor"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznáma veľkosť"]},Upload:{msgid:"Upload",msgstr:["Nahrať"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrať súbory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrať priečinky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrať zo zariadenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávanie bolo zrušené"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrávanie bolo preskočené"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nahrávanie "{folder}" bolo preskočené']},"Upload progress":{msgid:"Upload progress",msgstr:["Priebeh nahrávania"]},"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:["Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom."]},"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 výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Ktoré súbory chcete ponechať?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru."]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.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:\nJoas Schilling, 2024\nJan Kraljič , 2024\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" je prepovedano ime datoteka ali mape.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je prepovedan tip datoteke.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ni dovoljeno v imenu datoteke ali mape.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["1{count} datoteka je v konfliktu","1{count} datoteki sta v konfiktu","1{count} datotek je v konfliktu","{count} datotek je v konfliktu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} datoteka je v konfiktu v {dirname}","{count} datoteki sta v konfiktu v {dirname}","{count} datotek je v konfiktu v {dirname}","{count} konfliktov datotek v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Cancel:{msgid:"Cancel",msgstr:["Prekliči"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Prekliči celotni postopek"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},Continue:{msgid:"Continue",msgstr:["Nadaljuj"]},"Create new":{msgid:"Create new",msgstr:["Ustvari nov"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjujem čas do konca"]},"Existing version":{msgid:"Existing version",msgstr:["Obstoječa različica"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Imena datotek se ne smejo končati s "{segment}".']},"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:["Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nepravilno ime datoteke"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum zadnje spremembe neznan"]},New:{msgid:"New",msgstr:["Nov"]},"New filename":{msgid:"New filename",msgstr:["Novo ime datoteke"]},"New version":{msgid:"New version",msgstr:["Nova različica"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Preview image":{msgid:"Preview image",msgstr:["Predogled slike"]},Rename:{msgid:"Rename",msgstr:["Preimenuj"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Izberi vsa potrditvena polja"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Označi vse obstoječe datoteke"]},"Select all new files":{msgid:"Select all new files",msgstr:["Označi vse nove datoteke"]},Skip:{msgid:"Skip",msgstr:["Preskoči"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskoči datoteko","Preskoči {count} datoteki","Preskoči {count} datotek","Preskoči {count} datotek"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznana velikost"]},Upload:{msgid:"Upload",msgstr:["Naloži"]},"Upload files":{msgid:"Upload files",msgstr:["Naloži datoteke"]},"Upload folders":{msgid:"Upload folders",msgstr:["Naloži mape"]},"Upload from device":{msgid:"Upload from device",msgstr:["Naloži iz naprave"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nalaganje je bilo preklicano"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nalaganje je bilo preskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nalaganje "{folder}" je bilo preskočeno']},"Upload progress":{msgid:"Upload progress",msgstr:["Napredek nalaganja"]},"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:["Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane."]},"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:["Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Katere datoteke želite obdržati?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Izbrati morate vsaj eno različico vsake datoteke da nadaljujete."]}}}}},{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":"Иван Пешић, 2025","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:\nJoas Schilling, 2024\nИван Пешић, 2025\n"},msgstr:["Last-Translator: Иван Пешић, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” је забрањено име фајла или фолдера."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” је забрањен тип фајла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}” није дозвољено унутар имена фајла или фолдера."]},"{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",msgid_plural:"{seconds} seconds left",msgstr:["преостало је {seconds} секунда","преостало је {seconds} секунде","преостало је {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:["преостало је неколико секунди"]},assembling:{msgid:"assembling",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:["Постојећа верзија"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Није успело састављање делова"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Није успело отпремање фајла"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена фајлова не смеју да се завршавају на „{segment}”."]},"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 filename":{msgid:"Invalid filename",msgstr:["Неисправно име фајла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Прескочи {count} фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Skip this file":{msgid:"Skip this file",msgstr:["Прескочи овај фајл"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Отпремање је прескочено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Отпремање „{folder}”је прескочено"]},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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, 2025","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, 2025\n"},msgstr:["Last-Translator: Magnus Höglund, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" är ett förbjudet fil- eller mappnamn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" är en förbjuden filtyp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" är inte tillåtet i ett fil- eller mappnamn.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} sekunder kvar","{seconds} sekunder kvar"]},"{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"]},assembling:{msgid:"assembling",msgstr:["Sammanställer"]},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"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Misslyckades med att sammanställa delarna"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Kunde inte ladda upp filen"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnamn får inte sluta med "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnamn"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över {count} fil","Hoppa över {count} filer"]},"Skip this file":{msgid:"Skip this file",msgstr:["Hoppa över denna fil"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},Upload:{msgid:"Upload",msgstr:["Ladda upp"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Uppladdningen har hoppats över"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Uppladdningen av "{folder}" har hoppats över']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen."]},"You need to select 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:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat , 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat , 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat , 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren , 2025","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 , 2025\n"},msgstr:["Last-Translator: Kaya Zeren , 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" dosya ya da klasör adına izin verilmiyor.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" dosya türüne izin verilmiyor.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Bir dosya ya da klasör adında "{segment}" ifadesine izin verilmiyor.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı","{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ı"]},assembling:{msgid:"assembling",msgstr:["birleştiriliyor"]},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"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Parçalar birleştirilemedi"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Dosya yüklenemedi"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dosya adları "{segment}" ile bitmemeli.']},"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 filename":{msgid:"Invalid filename",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 filename":{msgid:"New filename",msgstr:["Yeni dosya adı"]},"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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["{count} dosyayı atla","{count} dosyayı atla"]},"Skip this file":{msgid:"Skip this file",msgstr:["Bu dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},Upload:{msgid:"Upload",msgstr:["Yükle"]},"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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Yükleme atlandı"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" klasörünün yüklenmesi atlandı']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz."]},"You need to select 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, 2025","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, 2025\n"},msgstr:["Last-Translator: O St, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" недозволене ім\'я файлу або каталогу.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" недозволений тип файлу.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" недозволене сполучення символів в назві файлу або каталогу.']},"{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",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} секунда залишилася","{seconds} секунди залишилося","{seconds} секунд залишилося","{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:["залишилося кілька секунд"]},assembling:{msgid:"assembling",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:["Присутня версія"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Не вдалося зібрати частинки докупи"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Не вдалося завантажити файл"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Ім\'я файлів не можуть закінчуватися на "{segment}".']},"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 filename":{msgid:"Invalid filename",msgstr:["Недійсне ім'я файлу"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Пропустити {count} файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Skip this file":{msgid:"Skip this file",msgstr:["Пропустити цей файл"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["Завантаження пропущено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Завантаження "{folder}" пропущено']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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":"Khurshid Ibatov , 2025","Language-Team":"Uzbek (https://app.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:\nKhurshid Ibatov , 2025\n"},msgstr:["Last-Translator: Khurshid Ibatov , 2025\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" taqiqlangan fayl yoki papka nomidir.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" taqiqlangan fayl turi hisoblanadi.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" fayl yoki papka nomi ichida ruxsat berilmaydi.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fayllar ziddiyati"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count}fayl ziddiyatlari {dirname} da"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} soniya qoldi"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} qoldi"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir necha soniya qoldi"]},assembling:{msgid:"assembling",msgstr:["yig'ish"]},Cancel:{msgid:"Cancel",msgstr:["Bekor qilish"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Butun operatsiyani bekor qiling"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yuklashni bekor qilish"]},Continue:{msgid:"Continue",msgstr:["Davom eting"]},"Create new":{msgid:"Create new",msgstr:["Yangi yaratish"]},"estimating time left":{msgid:"estimating time left",msgstr:["qolgan vaqtni hisoblash"]},"Existing version":{msgid:"Existing version",msgstr:["Mavjud versiya"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Bo'laklarni birlashtirib bo'lmadi"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Fayl yuklanmadi"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Fayl nomlari bilan tugamasligi kerak "{segment}".']},"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:["Agar siz ikkala versiyani tanlasangiz, kiruvchi fayl nomiga qo'shilgan raqamga ega bo'ladi."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Fayl nomi noto‘g‘ri"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Oxirgi tahrirlangan sana noma'lum"]},New:{msgid:"New",msgstr:["Yangi"]},"New filename":{msgid:"New filename",msgstr:["Yangi nom faylga"]},"New version":{msgid:"New version",msgstr:["Yangi versiya"]},paused:{msgid:"paused",msgstr:["tanaffus"]},"Preview image":{msgid:"Preview image",msgstr:["Rasmni oldindan ko'rish"]},Rename:{msgid:"Rename",msgstr:["Qayta nomlash"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Barcha katakchalarni belgilang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Barcha mavjud fayllarni tanlang"]},"Select all new files":{msgid:"Select all new files",msgstr:["Barcha yangi fayllarni tanlang"]},Skip:{msgid:"Skip",msgstr:["Oʻtkazib yuborish"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Oʻtkazib yuborish {count} fayllarini"]},"Skip this file":{msgid:"Skip this file",msgstr:["Oʻtkazib yuborish ushbu faylni"]},"Unknown size":{msgid:"Unknown size",msgstr:["Noma'lum o'lcham"]},Upload:{msgid:"Upload",msgstr:["Yuklash"]},"Upload files":{msgid:"Upload files",msgstr:["Fayllarni yuklash"]},"Upload folders":{msgid:"Upload folders",msgstr:["Jildlarni yuklash"]},"Upload from device":{msgid:"Upload from device",msgstr:["Qurilmadan yuklash"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yuklash bekor qilindi"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Yuklash oʻtkazib yuborildi"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:[' "{folder}" ni yuklash bekor qilindi']},"Upload progress":{msgid:"Upload progress",msgstr:["Yuklash jarayoni"]},"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:["Kiruvchi jild tanlanganda, undagi har qanday ziddiyatli fayllar ham ustiga yoziladi."]},"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:["Kiruvchi jild tanlanganda, kontent mavjud jildga yoziladi va nizolarni rekursiv hal qilish amalga oshiriladi."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Qaysi fayllarni saqlamoqchisiz?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Siz fayl nomini o'zgartirishingiz, ushbu faylni o'tkazib yuborishingiz yoki butun operatsiyani bekor qilishingiz mumkin."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Davom etish uchun har bir faylning kamida bitta versiyasini tanlashingiz kerak."]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"nhatCreA, 2025","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:\nJoas Schilling, 2024\nnhatCreA, 2025\n"},msgstr:["Last-Translator: nhatCreA, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" là tên thư mục bị cấm đặt.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" là loại tệp bị cấm.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" không được phép đặt trong tên tệp hoặc thư mục.']},"{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 ở thư mục "{dirname}"']},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgid_plural:"{seconds} seconds left",msgstr:["{seconds} giây trước"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} trước"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["vài giây trước"]},assembling:{msgid:"assembling",msgstr:["đang cấu trúc"]},Cancel:{msgid:"Cancel",msgstr:["Huỷ"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Huỷ toàn bộ thao tác"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"Create new":{msgid:"Create new",msgstr:["Tạo mới"]},"estimating time left":{msgid:"estimating time left",msgstr:["ước tính thời gian còn lại"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên bản hiện tại"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["Không thể assemble các chunks lại với nhau"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["Tải lên tệp tin thất bại"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Tên tập tin không được kết thúc bằng "{segment}".']},"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:["Nếu bạn chọn cả hai, tệp tin đến sẽ có thêm một chữ số vào tên."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Tên tệp tin không hợp lệ"]},"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 filename":{msgid:"New filename",msgstr:["Tên tệp tin 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"]},Rename:{msgid:"Rename",msgstr:["Đổi tên"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin đang tồn tại"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},Skip:{msgid:"Skip",msgstr:["Bỏ qua"]},"Skip {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["Bỏ qua {count} tệp"]},"Skip this file":{msgid:"Skip this file",msgstr:["Bỏ qua tệp này"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},Upload:{msgid:"Upload",msgstr:["Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tải lên tệp tin"]},"Upload folders":{msgid:"Upload folders",msgstr:["Tải lên thư mục"]},"Upload from device":{msgid:"Upload from device",msgstr:["Tải lên từ thiết bị"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Tải lên đã bị huỷ"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Tải lên đã bỏ qua"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Tải lên "{folder}" đã bị bỏ qua']},"Upload progress":{msgid:"Upload progress",msgstr:["Tiến trình tải lê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:["Khi bạn chọn một thư mục để đưa vào, bất kỳ tệp nào trong đó gây xung đột cũng sẽ bị ghi đè."]},"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:["Khi chọn một thư mục để đưa vào, nội dung sẽ được ghi vào thư mục hiện có, và hệ thống sẽ tự động giải quyết các xung đột một cách chi tiết và cẩn thận."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tệp nào?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Bạn có thể đổi tên tệp, bỏ qua tệp này, hoặc hủy toàn bộ thao tác."]},"You need to select 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 cho mỗi tệp để tiếp tục."]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"DWXXX, 2025","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:\nJoas Schilling, 2024\ngloryandel, 2024\nDWXXX, 2025\n"},msgstr:["Last-Translator: DWXXX, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是被禁止的文件名或文件夹名。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是被禁止的文件类型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允许包含在文件名或文件夹名中。']},"{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",msgid_plural:"{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:["还剩几秒"]},assembling:{msgid:"assembling",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:["服务端版本"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["组合区块失败"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["上传文件失败"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['文件名不得以 "{segment}" 结尾。']},"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 filename":{msgid:"Invalid filename",msgstr:["无效文件名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},New:{msgid:"New",msgstr:["新建"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["跳过 {count} 文件"]},"Skip this file":{msgid:"Skip this file",msgstr:["跳过此文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["上传已跳过"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['已跳过上传"{folder}"']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",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, 2025","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, 2025\n"},msgstr:["Last-Translator: Café Tango, 2025\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"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是禁止使用的檔案或資料夾名稱。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是禁止使用的檔案類型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允許出現在檔案或資料夾名稱中。']},"{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",msgid_plural:"{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:["還剩幾秒"]},assembling:{msgid:"assembling",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:["既有版本"]},"Failed to assemble the chunks together":{msgid:"Failed to assemble the chunks together",msgstr:["無法組裝這些部分"]},"Failed to upload the file":{msgid:"Failed to upload the file",msgstr:["無法上傳檔案"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['檔案名不得以 "{segment}" 結尾。']},"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 filename":{msgid:"Invalid filename",msgstr:["無效的檔案名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New filename":{msgid:"New filename",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 {count} file":{msgid:"Skip {count} file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Skip this file":{msgid:"Skip this file",msgstr:["略過這個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},Upload:{msgid:"Upload",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 has been skipped":{msgid:"Upload has been skipped",msgstr:["上傳已被跳過"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" 的上傳已被跳過']},"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 can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以選擇重新命名檔案、跳過此檔案或取消整個操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 , 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 , 2024\n"},msgstr:["Last-Translator: 黃柏諺 , 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map(e=>F.addTranslation(e.locale,e.json));const _=F.build(),N=_.ngettext.bind(_),P=_.gettext.bind(_);class A extends Error{constructor(e){super(P("Upload has been cancelled"),{cause:e})}}const z=(0,p.YK)().setApp("@nextcloud/upload").detectUser().build();async function j(e,s,t){const n={headers:{},onUploadProgress:()=>{},onUploadRetry:()=>{},retries:5,...t};let i;return i=s instanceof Blob?s:await s(),n.destinationFile&&(n.headers.Destination=n.destinationFile),n.headers["Content-Type"]||(n.headers["Content-Type"]="application/octet-stream"),await m.Ay.request({method:"PUT",url:e,data:i,signal:n.signal,onUploadProgress:n.onUploadProgress,headers:n.headers,"axios-retry":{retries:n.retries,retryDelay:(e,s)=>(0,f.Nv)(e,s,1e3),retryCondition:e=>507!==e.status&&(423===e.status||(0,f.Gp)(e)),onRetry:n.onUploadRetry}})}(0,f.Ay)(m.Ay,{retries:0});const I=function(e,s,t){return 0===s&&e.size<=t?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(s,s+t)],{type:"application/octet-stream"}))},W=function(e=void 0){const s=window.OC?.appConfig?.files?.max_chunk_size;if(s<=0)return 0;if(!Number(s))return 10485760;const t=Math.max(Number(s),5242880);return void 0===e?t:Math.max(t,Math.ceil(e/1e4))};var B=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(B||{});class E{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,s=!1,t,n){const i=Math.min(W()>0?Math.ceil(t/W()):1,1e4);this._source=e,this._isChunked=s&&W()>0&&i>1,this._chunks=this._isChunked?i:1,this._size=t,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}const R=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry;class Y extends File{_originalName;_path;_children;constructor(e){super([],(0,o.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,o.P8)(e),this._path=e}get size(){return this.children.reduce((e,s)=>e+s.size,0)}get lastModified(){return this.children.reduce((e,s)=>Math.max(e,s.lastModified),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChildren(e){for(const s of e)await this.addChild(s)}async addChild(e){const s=this._path&&`${this._path}/`;if(R(e))e=await new Promise((s,t)=>e.file(s,t));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const t=e.createReader(),n=await new Promise((e,s)=>t.readEntries(e,s)),i=new Y(`${s}${e.name}`);return await i.addChildren(n),void this._children.set(e.name,i)}const t=e.webkitRelativePath??e.name;if(t.includes("/")){if(!t.startsWith(this._path))throw new Error(`File ${t} is not a child of ${this._path}`);const n=t.slice(s.length),i=(0,o.P8)(n);if(i===n)this._children.set(i,e);else{const t=n.slice(0,n.indexOf("/"));if(this._children.has(t))await this._children.get(t).addChild(e);else{const n=new Y(`${s}${t}`);await n.addChild(e),this._children.set(t,n)}}}else this._children.set(e.name,e)}}class D extends h.m{_done=0;_total=0;_progress=0;_status=0;_startTime=-1;_elapsedTime=0;_speed=-1;_eta=1/0;_cutoffTime=2.5;constructor(e={}){super(),e.start&&this.resume(),e.total&&this.update(0,e.total),this._cutoffTime=e.cutoffTime??2.5}add(e){this.update(this._done+e)}update(e,s){if(2!==this.status)return;s&&s>0&&(this._total=s);const t=e-this._done,n=(Date.now()-this._startTime)/1e3;this._startTime=Date.now(),this._elapsedTime+=n,this._done=e,this._progress=this._done/this._total;const i=this._cutoffTime+n;if(this._elapsedTime>i){const e=n/(n+1/this._cutoffTime),s=this._done-t+(1-e)*t;this._speed=Math.round(s/this._elapsedTime)}else if(-1===this._speed&&this._elapsedTime>n){const s=(this._total-e)/(e/this._elapsedTime);(this._eta!==1/0||s<=2*this._cutoffTime)&&(this._eta=s)}this._speed>0&&(this._eta=Math.round((this._total-this._done)/this._speed)),this.dispatchTypedEvent("update",new CustomEvent("update",{cancelable:!1}))}reset(){this._done=0,this._total=0,this._progress=0,this._elapsedTime=0,this._eta=1/0,this._speed=-1,this._startTime=-1,this._status=0,this.dispatchTypedEvent("reset",new CustomEvent("reset"))}pause(){2===this._status&&(this._status=1,this._elapsedTime+=(Date.now()-this._startTime)/1e3,this.dispatchTypedEvent("pause",new CustomEvent("pause")))}resume(){2!==this._status&&(this._startTime=Date.now(),this._status=2,this.dispatchTypedEvent("resume",new CustomEvent("resume")))}get status(){return this._status}get progress(){return Math.round(1e4*this._progress)/100}get time(){return this._eta}get timeReadable(){if(this._eta===1/0)return P("estimating time left");if(this._eta<10)return P("a few seconds left");if(this._eta<60)return N("{seconds} seconds left","{seconds} seconds left",this._eta,{seconds:this._eta});const e=String(Math.floor(this._eta/3600)).padStart(2,"0"),s=String(Math.floor(this._eta%3600/60)).padStart(2,"0"),t=String(this._eta%60).padStart(2,"0");return P("{time} left",{time:`${e}:${s}:${t}`})}get speed(){return this._speed}get speedReadable(){return this._speed>0?`${(0,a.v7)(this._speed,!0)}∕s`:""}}var O=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(O||{});class M{_destinationFolder;_isPublic;_customHeaders;_uploadQueue=[];_jobQueue=new g.A({concurrency:(0,r.F)().files?.chunked_upload?.max_parallel_count??5});_queueSize=0;_queueProgress=0;_queueStatus=0;_eta=new D;_notifiers=[];constructor(e=!1,s){if(this._isPublic=e,this._customHeaders={},!s){const t=`${a.PY}${a.lJ}`;let n;if(e)n="anonymous";else{const e=(0,i.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}s=new a.vd({id:0,owner:n,permissions:a.aX.ALL,root:a.lJ,source:t})}this.destination=s,z.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:W()})}get destination(){return this._destinationFolder}set destination(e){if(!e||e.type!==a.pt.Folder||!e.source)throw new Error("Invalid destination folder");z.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get customHeaders(){return structuredClone(this._customHeaders)}setCustomHeader(e,s=""){this._customHeaders[e]=s}deleteCustomerHeader(e){delete this._customHeaders[e]}get queue(){return this._uploadQueue}reset(){this._eta.reset(),0===this._uploadQueue.length&&0===this._jobQueue.size||(this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0,z.debug("Uploader state reset"))}pause(){this._eta.pause(),this._jobQueue.pause(),this._queueStatus=2,this.updateStats(),z.debug("Uploader paused")}start(){this._eta.resume(),this._jobQueue.start(),this._queueStatus=1,this.updateStats(),z.debug("Uploader resumed")}get eta(){return this._eta}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map(e=>e.size).reduce((e,s)=>e+s,0),s=this._uploadQueue.map(e=>e.uploaded).reduce((e,s)=>e+s,0);if(this._eta.update(s,e),this._queueSize=e,this._queueProgress=s,2!==this._queueStatus){const e=this._uploadQueue.find(({status:e})=>[B.INITIALIZED,B.UPLOADING,B.ASSEMBLING].includes(e));this._jobQueue.size>0||e?this._queueStatus=1:(this.eta.reset(),this._queueStatus=0)}}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const s of this._notifiers)try{s(e)}catch(s){z.warn("Error in upload notifier",{error:s,source:e.source})}}batchUpload(e,s,t){return t||(t=async e=>e),new d.A(async(n,i,o)=>{const l=new Y("");await l.addChildren(s);const r=`${this.root.replace(/\/$/,"")}/${e.replace(/^\//,"")}`,d=new E(r,!1,0,l);d.status=B.UPLOADING,this._uploadQueue.push(d),z.debug("Starting new batch upload",{target:r});try{const s=(0,a.H4)(this.root,this._customHeaders),i=this.uploadDirectory(e,l,t,s);o(()=>i.cancel());const r=await i;d.status=B.FINISHED,n(r)}catch(e){(0,m.FZ)(e)||e instanceof A?(z.info("Upload cancelled by user",{error:e}),d.status=B.CANCELLED,i(new A(e))):(z.error("Error in batch upload",{error:e}),d.status=B.FAILED,i(e))}finally{this._uploadQueue.splice(this._uploadQueue.indexOf(d),1),this._notifyAll(d),this.updateStats()}})}createDirectory(e,s,t){const n=(0,l.normalize)(`${e}/${s.name}`).replace(/\/$/,""),i=`${this.root.replace(/\/$/,"")}/${n.replace(/^\//,"")}`;if(!s.name)throw new Error("Can not create empty directory");const a=new E(i,!1,0,s);return this._uploadQueue.push(a),new d.A(async(e,i,o)=>{const l=new AbortController;o(()=>l.abort()),a.signal.addEventListener("abort",()=>i(P("Upload has been cancelled"))),await this._jobQueue.add(async()=>{a.status=B.UPLOADING;try{await t.createDirectory(n,{signal:l.signal}),e(a)}catch(t){(0,m.FZ)(t)||t instanceof A?(a.status=B.CANCELLED,i(new A(t))):t&&"object"==typeof t&&"status"in t&&405===t.status?(z.debug("Directory already exists, writing into it",{directory:s.name}),a.status=B.FINISHED,e(a)):(a.status=B.FAILED,i(t))}finally{this._notifyAll(a),this.updateStats()}})})}uploadDirectory(e,s,t,n){const i=(0,l.normalize)(`${e}/${s.name}`).replace(/\/$/,"");return new d.A(async(a,o,l)=>{const r=new AbortController;l(()=>r.abort());const m=await t(s.children,i);if(!1===m)return z.debug("Upload canceled by user",{directory:s}),void o(new A("Conflict resolution cancelled by user"));if(0===m.length&&s.children.length>0)return z.debug("Skipping directory, as all files were skipped by user",{directory:s}),void a([]);const d=[],g=[];r.signal.addEventListener("abort",()=>{d.forEach(e=>e.cancel()),g.forEach(e=>e.cancel())}),z.debug("Start directory upload",{directory:s});try{s.name&&(g.push(this.createDirectory(e,s,n)),await g.at(-1));for(const e of m)e instanceof Y?d.push(this.uploadDirectory(i,e,t,n)):g.push(this.upload(`${i}/${e.name}`,e));a([await Promise.all(g),...await Promise.all(d)].flat())}catch(e){r.abort(e),o(e)}})}upload(e,s,t,a=5){const l=`${(t=t||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:g}=new URL(l),c=g+(0,o.O0)(l.slice(g.length));return this.eta.resume(),z.debug(`Uploading ${s.name} to ${c}`),new d.A(async(e,t,o)=>{R(s)&&(s=await new Promise(e=>s.file(e,t)));const d=s,g=(0,r.F)().dav?.public_shares_chunking??!1,p=W("size"in d?d.size:void 0),h=this._isPublic&&!g||0===p||"size"in d&&d.size{try{w.response=await j(c,s,{signal:w.signal,onUploadProgress:({bytes:e})=>{w.uploaded+=.9*e,this.updateStats()},onUploadRetry:()=>{w.uploaded=0,this.updateStats()},headers:{...this._customHeaders,...this._mtimeHeader(d),"Content-Type":d.type}}),w.uploaded=w.size,this.updateStats(),z.debug(`Successfully uploaded ${d.name}`,{file:d,upload:w}),e(w)}catch(e){if((0,m.FZ)(e)||e instanceof A)return w.status=B.CANCELLED,void t(new A(e));e?.response&&(w.response=e.response),w.status=B.FAILED,z.error(`Failed uploading ${d.name}`,{error:e,file:d,upload:w}),t(P("Failed to upload the file"))}this._notifyAll(w)};this._jobQueue.add(n),this.updateStats()}else{z.debug("Initializing chunked upload",{file:d,upload:w});const s=await async function(e,s=5,t=!1,a={}){let o;o=t?`${(0,u.$_)()}/public.php/dav/uploads/${(0,n.G)()}`:(0,u.dC)(`dav/uploads/${(0,i.HW)()?.uid}`);const l=`${o}/web-file-upload-${[...Array(16)].map(()=>Math.floor(16*Math.random()).toString(16)).join("")}`,r=a;return e&&(r.Destination=e),await m.Ay.request({method:"MKCOL",url:l,headers:r,"axios-retry":{retries:s,retryDelay:(e,s)=>(0,f.Nv)(e,s,1e3)}}),z.debug("Created temporary upload workspace",{url:l}),l}(c,a,this._isPublic,this._customHeaders),o=[];for(let e=0;eI(d,t,p),l=()=>{let o=0;return j(`${s}/${e+1}`,i,{signal:w.signal,destinationFile:c,retries:a,onUploadProgress:({bytes:e})=>{const s=.9*e;o+=s,w.uploaded+=s,this.updateStats()},onUploadRetry:()=>{w.uploaded-=o,o=0,this.updateStats()},headers:{...this._customHeaders,...this._mtimeHeader(d),"OC-Total-Length":d.size,"Content-Type":"application/octet-stream"}}).then(()=>{w.uploaded+=n-t-o,this.updateStats()}).catch(s=>{if(507===s?.response?.status)throw z.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:s,upload:w}),w.cancel(),w.status=B.FAILED,s;throw(0,m.FZ)(s)||(z.error(`Chunk ${e+1} ${t} - ${n} uploading failed`,{error:s,upload:w}),w.cancel(),w.status=B.FAILED),s})};o.push(this._jobQueue.add(l))}const l=async()=>{try{await Promise.all(o),w.status=B.ASSEMBLING,this.updateStats(),w.response=await m.Ay.request({method:"MOVE",url:`${s}/.file`,headers:{...this._customHeaders,...this._mtimeHeader(d),"OC-Total-Length":d.size,Destination:c}}),w.status=B.FINISHED,this.updateStats(),z.debug(`Successfully uploaded ${d.name}`,{file:d,upload:w}),e(w)}catch(e){(0,m.FZ)(e)||e instanceof A?(w.status=B.CANCELLED,t(new A(e))):(w.status=B.FAILED,t(P("Failed to assemble the chunks together"))),m.Ay.request({method:"DELETE",url:`${s}`})}finally{this._notifyAll(w)}};this._jobQueue.add(l)}return this._jobQueue.onIdle().then(()=>this.reset()),w})}_mtimeHeader(e){const s=Math.floor(e.lastModified/1e3);return s>0?{"X-OC-Mtime":s}:{}}}function q(e=(0,n.f)(),s=!1){return(s||void 0===window._nc_uploader)&&(window._nc_uploader=new M(e)),window._nc_uploader}function H(e){const s=(0,w.$V)(()=>Promise.all([t.e(4208),t.e(1764)]).then(t.bind(t,21764))),{promise:n,reject:i,resolve:o}=Promise.withResolvers();return(0,v.S)(s,{error:e,validateFilename:a.KT},(...e)=>{const[{skip:s,rename:t}]=e;s?o(!1):t?o(t):i()}),n}function V(e,s,t,n,i,a,o,l){var r="function"==typeof e?e.options:e;return s&&(r.render=s,r.staticRenderFns=t,r._compiled=!0),a&&(r._scopeId="data-v-"+a),{exports:e,options:r}}const K=V({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])},[],0,0,null).exports,J=V({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])},[],0,0,null).exports,G=V({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])},[],0,0,null).exports,$=V({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])},[],0,0,null).exports,Q=V((0,w.pM)({name:"UploadPicker",components:{IconCancel:K,IconFolderUpload:J,IconPlus:G,IconUpload:$,NcActionButton:T.A,NcActionCaption:x.A,NcActionSeparator:y.A,NcActions:U.A,NcButton:C.A,NcIconSvgWrapper:S.A,NcProgressBar:L.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noMenu:{type:Boolean,default:!1},noLabel:{type:Boolean,default:!1},primary:{type:Boolean,default:!1},destination:{type:a.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:P,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({newFileMenuEntries:[],openedMenu:!1,uploadManager:q()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter(e=>e.category===a.a7.UploadFromDevice)},menuEntriesNew(){return this.newFileMenuEntries.filter(e=>e.category===a.a7.CreateNew)},menuEntriesOther(){return this.newFileMenuEntries.filter(e=>e.category===a.a7.Other)},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},queue(){return this.uploadManager.queue},hasFailure(){return this.queue.some(e=>e.status===B.FAILED)},isAssembling(){return this.queue.some(e=>e.status===B.ASSEMBLING)},isUploading(){return this.queue.some(e=>e.status!==B.CANCELLED)},isOnlyAssembling(){return this.isAssembling&&this.queue.every(e=>0===e.size||e.status===B.ASSEMBLING||e.status===B.FINISHED)},isPaused(){return this.uploadManager.info?.status===O.PAUSED},buttonLabel(){return this.noMenu?P("Upload"):P("New")},haveMenu(){return!((this.noMenu||0===this.newFileMenuEntries.length)&&!this.canUploadFolders)}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&z.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},destination(e){this.setDestination(e)},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),(0,b.C)("u",this.onKeyDown,{stop:!0,prevent:!0,shift:!0}),(0,b.C)("Escape",this.onKeyDown,{stop:!0,prevent:!0}),z.debug("UploadPicker initialised")},methods:{etaTimeAndSpeed(){const e=this.uploadManager.eta.speedReadable;return e?`${this.uploadManager.eta.timeReadable} (${e})`:this.uploadManager.eta.timeReadable},async onClick(e){e.handler(this.destination,await this.getContent().catch(()=>[]))},onTriggerPick(e=!1){const s=this.$refs.input;this.canUploadFolders&&(s.webkitdirectory=e),this.$nextTick(()=>s.click())},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},async onPick(){const e=this.$refs.input,s=e.files?Array.from(e.files):[];try{await this.uploadManager.batchUpload("",s,(n=this.getContent,async(e,s)=>{try{const i=await n(s).catch(()=>[]),l=function(e,s){const t=s.map(e=>e.basename);return e.filter(e=>{const s="basename"in e?e.basename:e.name;return-1!==t.indexOf(s)})}(e,i);if(l.length>0){const{selected:n,renamed:a}=await async function(e,s,n,i){const a=(0,w.$V)(()=>Promise.all([t.e(4208),t.e(2457)]).then(t.bind(t,32457)));return new Promise((t,o)=>{const l=new w.Ay({name:"ConflictPickerRoot",render:r=>r(a,{props:{dirname:e,conflicts:s,content:n,recursiveUpload:!0===i?.recursive},on:{submit(e){t(e),l.$destroy(),l.$el?.parentNode?.removeChild(l.$el)},cancel(e){o(e??new Error("Canceled")),l.$destroy(),l.$el?.parentNode?.removeChild(l.$el)}}})});l.$mount(),document.body.appendChild(l.$el)})}(s,l,i,{recursive:!0});e=[...e.filter(e=>!l.includes(e)),...n,...a]}const r=[];for(const s of e)try{(0,a.KT)(s.name),r.push(s)}catch(t){if(!(t instanceof a.di))throw z.error(`Unexpected error while validating ${s.name}`,{error:t}),t;let n=await H(t);!1!==n&&(n=(0,a.E6)(n,e.map(e=>e.name)),Object.defineProperty(s,"name",{value:n}),r.push(s))}if(0===r.length&&e.length>0){const e=(0,o.P8)(s);(0,k.cf)(e?P('Upload of "{folder}" has been skipped',{folder:e}):P("Upload has been skipped"))}return r}catch(e){return z.debug("Upload has been cancelled",{error:e}),(0,k.I9)(P("Upload has been cancelled")),!1}}))}catch(e){z.debug("Error while uploading",{error:e})}finally{this.resetForm()}var n},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach(e=>{e.cancel()}),this.resetForm()},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,a.m1)(e)):z.debug("Invalid destination")},onUploadCompletion(e){e.status===B.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)},onKeyDown(e){if("u"===e.key){if(this.haveMenu)return void(this.openedMenu=!0);this.onTriggerPick()}"Escape"===e.key&&this.openedMenu&&(this.openedMenu=!1)}}}),function(){var e=this,s=e._self._c;return e._self._setupProxy,e.destination?s("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[e.haveMenu?s("NcActions",{attrs:{"aria-label":e.buttonLabel,"menu-name":e.noLabel?void 0:e.buttonLabel,open:e.openedMenu,type:e.primary?"primary":"secondary"},on:{"update:open":function(s){e.openedMenu=s}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[s("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),s("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file","close-after-click":!0},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?s("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":"","data-cy-upload-picker-menu-entry":"upload-folder"},on:{click:function(s){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconFolderUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,931184598)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e.noMenu?e._e():e._l(e.menuEntriesUpload,function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}),!e.noMenu&&e.menuEntriesNew.length>0?[s("NcActionSeparator"),s("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])})]:e._e(),!e.noMenu&&e.menuEntriesOther.length>0?[s("NcActionSeparator"),e._l(e.menuEntriesOther,function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])})]:e._e()],2):s("NcButton",{attrs:{"aria-label":e.buttonLabel,disabled:e.disabled,"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file",type:e.primary?"primary":"secondary"},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0},e.isUploading?null:{key:"default",fn:function(){return[e._v(" "+e._s(e.buttonLabel)+" ")]},proxy:!0}],null,!0)}),s("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[s("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,"data-cy-upload-picker-progress":"",error:e.hasFailure,value:e.uploadManager.eta.progress,size:"medium"}}),s("p",{attrs:{id:e.progressTimeId,"data-cy-upload-picker-progress-label":""}},[e.isPaused?s("span",[e._v(" "+e._s(e.t("paused"))+" ")]):e.isOnlyAssembling?s("span",[e._v(" "+e._s(e.t("assembling"))+" ")]):s("span",{attrs:{title:e.etaTimeAndSpeed()}},[e._v(" "+e._s(e.uploadManager.eta.timeReadable)+" "),e.uploadManager.eta.speedReadable&&e.uploadManager.eta.time>=60?s("span",[e._v(" ("+e._s(e.uploadManager.eta.speedReadable)+") ")]):e._e()])])],1),e.isUploading&&!e.isOnlyAssembling?s("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),s("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()},[],0,0,"a66c1264").exports;t.d(s,["a",0,R,"b",0,N,"i",0,e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry,"j",0,Q,"l",0,z,"t",0,P])}}]); -//# sourceMappingURL=8192-8192.js.map?v=216cd289d3c98fec5bde \ No newline at end of file diff --git a/dist/8192-8192.js.map b/dist/8192-8192.js.map deleted file mode 100644 index ec27599f96409..0000000000000 --- a/dist/8192-8192.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"8192-8192.js?v=06d5ab2527947f2a0ebb","mappings":"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","sources":["webpack:///nextcloud/apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue?vue&type=style&index=0&id=994fb45e&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue","webpack:///nextcloud/apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue?0e5d","webpack://nextcloud/./apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue?1bbe","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-DPkUyJ8g.mjs"],"sourcesContent":["// 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, `.file-drop-empty-content[data-v-994fb45e]{margin:auto;max-width:max(50vw,300px)}.file-drop-empty-content .file-drop-empty-content__note-card[data-v-994fb45e]{width:fit-content;margin-inline:auto}.file-drop-empty-content #file-drop-empty-content__heading[data-v-994fb45e]{margin-block:0 10px;font-weight:bold;font-size:20px}.file-drop-empty-content .file-drop-empty-content__list[data-v-994fb45e]{list-style:inside;max-height:min(350px,33vh);overflow-y:scroll;padding-inline-end:calc(2*var(--default-grid-baseline))}.file-drop-empty-content[data-v-994fb45e] .terms-of-service-dialog{min-height:min(100px,20vh)}.file-drop-empty-content[data-v-994fb45e] .empty-content__action{display:flex;gap:var(--default-grid-baseline)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/views/FilesViewFileDropEmptyContent.vue\"],\"names\":[],\"mappings\":\"AACA,0CACC,WAAA,CACA,yBAAA,CAEA,8EACC,iBAAA,CACA,kBAAA,CAGD,4EACC,mBAAA,CACA,gBAAA,CACA,cAAA,CAGD,yEACC,iBAAA,CACA,0BAAA,CACA,iBAAA,CACA,uDAAA,CAGD,mEACC,0BAAA,CAID,iEACC,YAAA,CACA,gCAAA\",\"sourcesContent\":[\"\\n.file-drop-empty-content {\\n\\tmargin: auto;\\n\\tmax-width: max(50vw, 300px);\\n\\n\\t.file-drop-empty-content__note-card {\\n\\t\\twidth: fit-content;\\n\\t\\tmargin-inline: auto;\\n\\t}\\n\\n\\t#file-drop-empty-content__heading {\\n\\t\\tmargin-block: 0 10px;\\n\\t\\tfont-weight: bold;\\n\\t\\tfont-size: 20px;\\n\\t}\\n\\n\\t.file-drop-empty-content__list {\\n\\t\\tlist-style: inside;\\n\\t\\tmax-height: min(350px, 33vh);\\n\\t\\toverflow-y: scroll;\\n\\t\\tpadding-inline-end: calc(2 * var(--default-grid-baseline));\\n\\t}\\n\\n\\t:deep(.terms-of-service-dialog) {\\n\\t\\tmin-height: min(100px, 20vh);\\n\\t}\\n\\n\\t/* TODO fix in library */\\n\\t:deep(.empty-content__action) {\\n\\t\\tdisplay: flex;\\n\\t\\tgap: var(--default-grid-baseline);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcEmptyContent,{staticClass:\"file-drop-empty-content\",attrs:{\"data-cy-files-sharing-file-drop\":\"\",\"name\":_setup.name},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"svg\":_setup.svgCloudUpload}})]},proxy:true},{key:\"description\",fn:function(){return [_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.shareNote || _setup.t('files_sharing', 'Upload files to {foldername}.', { foldername: _vm.foldername }))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_setup.disclaimer)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('files_sharing', 'By uploading files, you agree to the terms of service.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_setup.getSortedUploads().length)?_c(_setup.NcNoteCard,{staticClass:\"file-drop-empty-content__note-card\",attrs:{\"type\":\"success\"}},[_c('h2',{attrs:{\"id\":\"file-drop-empty-content__heading\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('files_sharing', 'Successfully uploaded files'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('ul',{staticClass:\"file-drop-empty-content__list\",attrs:{\"aria-labelledby\":\"file-drop-empty-content__heading\"}},_vm._l((_setup.getSortedUploads()),function(file){return _c('li',{key:file},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(file)+\"\\n\\t\\t\\t\\t\")])}),0)]):_vm._e()]},proxy:true},{key:\"action\",fn:function(){return [(_setup.disclaimer)?[_c(_setup.NcButton,{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){_setup.showDialog = true}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('files_sharing', 'View terms of service'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c(_setup.NcDialog,{attrs:{\"close-on-click-outside\":\"\",\"content-classes\":\"terms-of-service-dialog\",\"open\":_setup.showDialog,\"name\":_setup.t('files_sharing', 'Terms of service'),\"message\":_setup.disclaimer},on:{\"update:open\":function($event){_setup.showDialog=$event}}})]:_vm._e(),_vm._v(\" \"),_c(_setup.UploadPicker,{attrs:{\"allow-folders\":\"\",\"content\":() => [],\"no-menu\":\"\",\"destination\":_setup.uploadDestination,\"multiple\":\"\"}})]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&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!./FilesViewFileDropEmptyContent.vue?vue&type=style&index=0&id=994fb45e&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./FilesViewFileDropEmptyContent.vue?vue&type=style&index=0&id=994fb45e&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesViewFileDropEmptyContent.vue?vue&type=template&id=994fb45e&scoped=true\"\nimport script from \"./FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FilesViewFileDropEmptyContent.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./FilesViewFileDropEmptyContent.vue?vue&type=style&index=0&id=994fb45e&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 \"994fb45e\",\n null\n \n)\n\nexport default component.exports","import '../assets/index-BGmULkk-.css';\nimport { getSharingToken, isPublicShare } from \"@nextcloud/sharing/public\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { formatFileSize, Folder, davRemoteURL, davRootPath, Permission, FileType, davGetClient, validateFilename, InvalidFilenameError, getUniqueName, getNewFileMenuEntries, NewMenuEntryCategory } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { normalize } from \"path\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getBaseUrl, generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry, { exponentialDelay, isNetworkOrIdempotentRequestError } from \"axios-retry\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { TypedEventTarget } from \"typescript-event-target\";\nimport Vue, { defineAsyncComponent, defineComponent } from \"vue\";\nimport { showInfo, showWarning } from \"@nextcloud/dialogs\";\nimport { spawnDialog } from \"@nextcloud/vue/functions/dialog\";\nimport { useHotKey } from \"@nextcloud/vue/dist/Composables/useHotKey.js\";\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 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 , 2025\", \"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\\nabu.s3ud, 2024\\nAli , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Ali , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" هو اسم ممنوع لملف أو مجلد.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" هو نوع ممنوع أن يكون لملف.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" هو غير مسموح به في اسم ملف أو مجلد.'] }, \"{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} ملف متعارض في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفان متعارضان في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفات متعارضة في {dirname}\", \"{count} ملفات متعارضة في {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"مازال {seconds} ثوانٍ\", \"مازال {seconds} ثوانٍ\", \"مازال {seconds} ثوانٍ\", \"مازال {seconds} ثوانٍ\", \"مازال {seconds} ثوانٍ\", \"مازال {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\": [\"بضع ثوانٍ متبقية\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"الإصدار الحالي\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"تعذّرت إعادة تجميع الكتل معاً \"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"تعذّر رفع الملف\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['غير مسموح ان ينتهي اسم الملف بـ \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"اسم ملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معروف\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"تمّ تجاوز الرفع\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['رفع \"{folder}\" تمّ تجاوزه'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp , 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp , 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp , 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev , 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev , 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg\", \"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\": \"Leandro Navarro , 2025\", \"Language-Team\": \"Catalan (https://app.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:\\nJoas Schilling, 2024\\nv v , 2025\\nLeandro Navarro , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Leandro Navarro , 2025\\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" és un nom de fitxer o carpeta prohibit.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" és un tipus de fitxer prohibit.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" no és permès dins del nom de fitxer o carpeta.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}fitxer en conflicte\", \"{count} fitxer en conflicte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicte de fitxers a {dirname}\", \"{count} conflictes de fitxers a {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segon restant\", \"{seconds} segons restants\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden uns segons\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"assemblatge\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel·lar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel·lar l'operació sencera\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crea nou\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"s’està estimant el temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"No s'han pogut acoblar els trossos\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"No s'ha pogut pujar el fitxer\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [`Els noms de fitxer no han d'acabar en \"{segment}\".`] }, \"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 seleccioneu les dues versions, el fitxer entrant tindrà un número afegit al seu nom.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nom de fitxer no vàlid\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data de la darrera modificació desconeguda\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nou\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nou nom de fitxer\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versió\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Imatge de vista prèvia\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Canviar el nom\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccioneu totes les caselles de selecció\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccioneu tots els fitxers existents\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccioneu tots el fitxers nous\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omet {count} fitxer\", \"Omet {count} fitxers\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Omet aquest fitxer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Mida desconeguda\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Pujar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Pujar les carpetes\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Pujada des del dispositiu\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La pujada s'ha cancel·lat\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"S'ha omès la pujada\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [`S'ha omès la pujada de \"{folder}\"`] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Procés de pujada\"] }, \"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\": [\"Quan es selecciona una carpeta d'entrada, també es sobreescriuran els fitxers en conflicte dins d'ella.\"] }, \"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\": [\"Quan es selecciona una carpeta d'entrada, el contingut s'escriu a la carpeta existent i es realitza una resolució recursiva de conflictes.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quins fitxers vols conservar?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Podeu canviar el nom del fitxer, saltar aquest fitxer o cancel·lar tota l'operació.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Heu de seleccionar almenys una versió de cada fitxer per continuar.\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki , 2025\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel , 2024\\nMartin Hankovec, 2024\\nAppukonrad , 2024\\nPavel Borecki , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít jako název souboru či složky.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}“ není povoleného typu souboru.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít v rámci názvu souboru či složky.\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\", \"zbývají {seconds}\", \"zbývá {seconds}\", \"zbývají {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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"sestavování\"] }, \"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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvořit nový\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Shluky se nepodařilo dát dohromady\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Soubor se nepodařilo nahrát\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Názvy souborů nemohou končit na „{segment}“.\"] }, \"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\": [\"Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný název souboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový název souboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Přejmenovat\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Přeskočit\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit {count} soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Přeskočit tento soubor\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrát\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrát složky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrát ze zařízení\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávání bylo zrušeno\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrání bylo přeskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Nahrání „{folder}“ bylo přeskočeno\"] }, \"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\"] }, \"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\": [\"Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit.\"] }, \"You need to select 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\": \"Finn Sommer , 2025\", \"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\\nRasmus Rosendahl-Kaa, 2024\\nMartin Bonde , 2025\\nFinn Sommer , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Finn Sommer , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tilladt i et fil- eller mappenavn.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\", \"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"samling\"] }, \"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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opret ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Mislykkedes at samle stumperne sammen\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Kunne ikke uploade filen\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavne må ikke slutte med \"{segment}\".'] }, \"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\": [\"Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldigt filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nyt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøb\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Spring over\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring {count} fil over\", \"Spring {count} fil over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Spring denne fil over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload fra enhed\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload er blevet annulleret\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload er blevet sprunget over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload af \"{folder}\" er blevet sprunget over'] }, \"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.\"] }, \"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 indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen.\"] }, \"You need to select 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\": \"Martin Wilichowski, 2025\", \"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\\nAndy Scherzinger , 2024\\nMark Ziegler , 2025\\nMario Siegmann , 2025\\nMartin Wilichowski, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Martin Wilichowski, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunde verbleibt\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"zusammenfügen\"] }, \"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\": [\"Berechne verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Die Teile konnten nicht zusammengefügt werden\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Die Datei konnte nicht hochgeladen werden\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"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 du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Diese Datei überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"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öchtest du behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select 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\": \"Martin Wilichowski, 2025\", \"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\\nMark Ziegler , 2025\\nMario Siegmann , 2025\\nMartin Wilichowski, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Martin Wilichowski, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunde verbleibt\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"zusammenfügen\"] }, \"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\": [\"Berechne verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Die Teile konnten nicht zusammengefügt werden\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Die Datei konnte nicht hochgeladen werden\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Diese Datei überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select 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\": \"Γιάννος, 2025\", \"Language-Team\": \"Greek (https://app.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:\\nJoas Schilling, 2024\\nEfstathios Iosifidis , 2025\\nΓιάννος, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Γιάννος, 2025\\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" είναι απαγορευμένο όνομα αρχείου ή φακέλου.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Το \"{segment}\" είναι απαγορευμένος τύπος αρχείου.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Το \"{segment}\" δεν επιτρέπεται μέσα στο όνομα ενός αρχείου ή φακέλου.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{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}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"Απομένει {seconds} δευτερόλεπτο\", \"Απομένουν {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\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Υπάρχουσα έκδοση\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Αποτυχία συναρμολόγησης των κομματιών\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Αποτυχία μεταφόρτωσης του αρχείου\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Τα ονόματα αρχείων δεν πρέπει να τελειώνουν με \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Μη έγκυρο όνομα αρχείου\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Άγνωστη ημερομηνία τελευταίας τροποποίησης\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Νέο\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Παράλειψη {count} αρχείου\", \"Παράλειψη {count} αρχείων\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Παραλείψτε αυτό το αρχείο\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Άγνωστο μέγεθος\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Η μεταφόρτωση παραλείφθηκε\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Η μεταφόρτωση του \"{folder}\" παραλείφθηκε'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler , 2025\", \"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 , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" is a forbidden file or folder name.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" is a forbidden file type.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" is not allowed inside a file or folder name.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"assembling\"] }, \"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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Create new\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Failed to assemble the chunks together\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Failed to upload the file\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filenames must not end with \"{segment}\".'] }, \"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.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Invalid filename\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"New filename\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rename\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Skip\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip {count} file\", \"Skip {count} files\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Skip this file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload folders\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload from device\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload has been cancelled\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload has been skipped\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload of \"{folder}\" has been skipped'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"You can either rename the file, skip this file or cancel the whole operation.\"] }, \"You need to select 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, 2025\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ , 2024\\nJulio C. Ortega, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" es un nombre de archivo o carpeta no permitido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" es un tipo de archivo no permitido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" no está permitido dentro del nombre de un archivo o carpeta.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"queda {seconds} segundo\", \"quedan {seconds} segundos\", \"quedan {seconds} segundos\"] }, \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"ensamblando\"] }, \"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\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Fallo al ensamblar todas las partes juntas\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Fallo al cargar el archivo\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Los nombres de archivo no deben terminar en \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nuevo nombre de archivo\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir {count} archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Omitir este archivo\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Cargar\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"La carga fue omitida\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['La carga de \"{folder}\" ha sido omitida'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Puede o bien, renombrar el archivo, omitirlo, o, cancelar toda la operación.\"] }, \"You need to select 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\": \"Matías Campo Hoet , 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.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:\\nJoas Schilling, 2024\\nMatías Campo Hoet , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet , 2024\\nLanguage-Team: Spanish (Argentina) (https://app.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\"] }, '\"{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, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última 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\": [\"Vista previa de 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\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Cargar archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Cargar carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Cargar desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Carga cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la carga\"] }, \"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 archivo en conflicto dentro de la misma también serán sobreescritos.\"] }, \"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 se escribe en la carpeta existente y se realiza 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_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\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.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:\\nJoas Schilling, 2024\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.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\"] }, '\"{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} archivos en conflicto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} archivo en conflicto en {dirname}\", \"{count} archivos en conflicto en {dirname}\", \"{count} archivo en conflicto en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos 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, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"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\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {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 archivo en conflicto dentro de la misma también será sobrescrito.\"] }, \"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 se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Cuáles 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_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\": \"Priit Jõerüüt , 2025\", \"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:\\nJoas Schilling, 2024\\nPriit Jõerüüt , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Priit Jõerüüt , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ on keelatud faili- või kausta nimi.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}“ on keelatud failitüüp.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}“ pole faili- või kausta nimes lubatud.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fail on vastuolus\", \"{count} faili on vastuolus\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fail on vastuolus „{dirname}“ kaustas\", \"{count} faili on vastuolus „{dirname}“ kaustas\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"jäänud {seconds} sekund\", \"jäänud {seconds} sekundit\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"aega jäänud {time} \"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"koostamisel\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Katkesta\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Katkesta kogu tegevus\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Katkesta üleslaadimine\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Jätka\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Loo uus\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Olemasolev versioon\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Tükkide koostamine üheks tervikuks ei õnnestunud\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Faili üleslaadimine ei õnnestunud\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Failinime lõpus ei tohi olla „{segment}“.\"] }, \"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\": [\"Kui sa valid mõlemad versioonid, lisatakse kopeeritud faili nimele number.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Vigane failinimi\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Viimase muutmise kuupäev pole teada\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uus\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Uus failinimi\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Uus versioon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vaata pildi eelvaadet\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Muuda nime\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vali kõik märkeruudud\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vali kõik olemasolevad failid\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vali kõik uued failid\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Jäta vahele\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Jäta vahele {count} fail\", \"Jäta vahele {count} faili\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Jäta vahele see fail\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tundmatu suurus\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Laadi üles\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Laadi failid üles\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Laadi kaustad üles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Laadi üles seadmest\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Üleslaadimine on katkestatud\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Üleslaadimine on vahele jäetud\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"„{folder}“ kausta üleslaadimine on vahele jäetud\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Üleslaadimise edenemine\"] }, \"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\": [\"Kui saabuvate failide kaust on valitud, siis seal asuvad vastuoluliste nimedega failid kirjutatakse samuti üle.\"] }, \"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\": [\"Kui saabuvate failide kaust on valitud, siis sisu kirjutatakse olemasolevasse kausta ja käivitatakse rekursiivne vastuolude haldus.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Milliseid faile soovid säilitada?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Sa võid kas faili nime muuta, ta vahele jätta või kogu tegevuse katkestada.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Jätkamiseks pead valima vähemalt ühe versiooni igast failist.\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta , 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta , 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Alireza Rashidi, 2025\", \"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:\\nJoas Schilling, 2024\\nreza reza , 2024\\nAlireza Rashidi, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Alireza Rashidi, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"{segment} یک نام فایل یا پوشه ممنوعه است.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"{segment} یک نوع فایل ممنوعه است.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"{segment} داخل نام فایل یا پوشه مجاز نیست.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{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} ناسازگاری داشت\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانیه مانده\", \"{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\": [\"چند ثانیه مانده\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"نگارش موجود\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"نتوانست تکه‌های را به سرهم کند\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"نتوانست پرونده را بارگذاری کند\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"نام پرونده نباید با {segment} پایان یابد.\"] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"نام پرونده نامعتبر\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"آخرین تاریخ تغییر نامشخص\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جدید\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"بارگذاری نادیده گرفته شده است\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"بارگذاری {folder} نادیده گرفته شده است\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"fi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jiri Grönroos , 2025\", \"Language-Team\": \"Finnish (Finland) (https://app.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:\\nJoas Schilling, 2024\\nthingumy, 2024\\nteemue, 2024\\nJiri Grönroos , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Jiri Grönroos , 2025\\nLanguage-Team: Finnish (Finland) (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" on kielletty tiedoston tai hakemiston nimi.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" on kielletty tiedostotyyppi.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ei ole sallittu tiedoston tai hakemiston nimessä.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} tiedoston ristiriita\", \"{count} tiedoston ristiriita\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tiedoston ristiriita kansiossa {dirname}\", \"{count} tiedoston ristiriita kansiossa {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunti jäljellä\", \"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS 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ä\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"kootaan\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Peruuta\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Peruuta koko toimenpide\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Jatka\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Luo uusi\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Olemassa oleva versio\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Palojen kokoaminen yhteen epäonnistui\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Tiedoston lähetys epäonnistui\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Tiedoston nimi ei saa päättyä \"{segment}\"'] }, \"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\": [\"Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Kielletty/väärä tiedoston nimi\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Viimeisin muokkauspäivä on tuntematon\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Uusi tiedostonimi\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Uusi versio\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Esikatsele kuva\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Nimeä uudelleen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Valitse kaikki valintaruudut\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Valitse kaikki olemassa olevat tiedostot\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Valitse kaikki uudet tiedostot\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ohita\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ohita tämä tiedosto\", \"Ohita {count} tiedostoa\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tuntematon koko\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Lähetä\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Lähetä kansioita\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Lähetä laitteelta\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Lähetys on peruttu\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Lähetys on ohitettu\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Hakemiston \"{folder}\" lähetys on ohitettu'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Lähetyksen edistyminen\"] }, \"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\": [\"Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan.\"] }, \"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\": [\"Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mitkä tiedostot haluat säilyttää?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi.\"] } } } } }, { \"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\": \"Caro Leviia, 2025\", \"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\\nJEEEEEEEEEEEEEEEEEEEEEED, 2024\\nJérôme HERBINET, 2024\\nacazenave, 2024\\nLisa Cintosh, 2025\\nLdm Public , 2025\\nCaro Leviia, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Caro Leviia, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" est un nom de fichier ou de dossier interdit.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" est un type de fichier interdit.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier.`] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconde restante\", \"{seconds} secondes restantes\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"assemblage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler toute l'opération\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les téléversements\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Créer un nouveau\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Échec de l'assemblage des morceaux\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Échec de téléversement du fichier\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Les noms des fichiers ne doivent pas terminer par \"{segment}\".'] }, \"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 vous sélectionnez les deux versions, un numéro sera ajouté au nom du fichier entrant.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nom de fichier invalide\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nouveau nom de fichier\"] }, \"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\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renommer\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ignorer\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} fichier ignoré\", \"{count} fichiers ignorés\", \"{count} fichiers ignorés\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Ignorer ce fichier\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Téléverser\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléverser des fichiers\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Téléverser des dossiers\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Téléverser depuis l'appareil\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Le téléversement a été annulé\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Le téléversement a été ignoré\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Le téléversement de \"{folder}\" a été ignoré'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléversement\"] }, \"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.\"] }, \"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\": [\"Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Vous pouvez soit renommer le fichier, soit ignorer le fichier, soit annuler toute l'opération.\"] }, \"You need to select 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, 2025\", \"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, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Is ainm toirmiscthe comhaid nó fillteáin é \"{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Is cineál comhaid toirmiscthe é \"{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`Ní cheadaítear \"{segment}\" taobh istigh d'ainm comhaid nó fillteáin.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} soicind fágtha\", \"{seconds} soicind fágtha\", \"{seconds} soicind fágtha\", \"{seconds} soicind fágtha\", \"{seconds} soicind fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"ag cur le chéile\"] }, \"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 \"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Theip ar na smután a chur le chéile le chéile\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Theip ar uaslódáil an chomhaid\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Níor cheart go gcríochnaíonn comhaid chomhad le \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ainm comhaid 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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad {count}\", \"Léim thar {count} comhad\", \"Léim thar {count} comhad\", \"Léim thar {count} comhad\", \"Léim thar {count} comhad\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Seachain an comhad seo\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Uaslódáil\"] }, \"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 ó ghléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Léiríodh an uaslódáil\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Léiríodh an uaslódáil \"{folder}\".'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú.\"] }, \"You need to select 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 , 2025\", \"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 , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» é un nome vedado para un ficheiro ou cartafol.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» é un tipo de ficheiro vedado.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol.\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"falta {seconds} segundo\", \"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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"ensamblando\"] }, \"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\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Produciuse un fallo ao ensamblar os anacos\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Produciuse un fallo ao enviar o ficheiro\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Os nomes de ficheiros non deben rematar con «{segment}».\"] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de ficheiro\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir {count} ficheiro\", \"Omitir {count} ficheiros\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Omitir este ficheiro\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O envío foi omitido\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"O envío de «{folder}» foi omitido\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación.\"] }, \"You need to select 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\": \"Gyuris Gellért , 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.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:\\nJoas Schilling, 2024\\nGyuris Gellért , 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért , 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Tiltott fájl- vagy mappanév: „{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Tiltott fájltípus: „{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Nem megengedett egy fájl- vagy mappanévben: „{segment}\".'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}fájlt érintő konfliktus\", \"{count} fájlt érintő konfliktus\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fájlt érintő konfliktus a mappában: {dirname}\", \"{count}fájlt érintő konfliktus a mappában: {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS 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\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Mégse\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Teljes művelet megszakítása\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tovább\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Új létrehozása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Jelenlegi változat\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Fájlnevek nem végződhetnek erre: „{segment}”.\"] }, \"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\": [\"Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Érvénytelen fájlnév\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Utolsó módosítás dátuma ismeretlen\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Új fájlnév\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Új verzió\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Kép előnézete\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Átnevezés\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Minden jelölőnégyzet kijelölése\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Minden jelenlegi fájl kijelölése\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Minden új fájl kijelölése\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Kihagyás\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ezen fájl kihagyása\", \"{count}fájl kihagyása\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ismeretlen méret\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Feltöltés\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Mappák feltöltése\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Feltöltés eszközről\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Feltöltés meg lett szakítva\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Feltöltés át lett ugorva\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"„{folder}” feltöltése át lett ugorva\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Feltöltési folyamat\"] }, \"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\": [\"Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek.\"] }, \"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\": [\"Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mely fájlokat kívánja megtartani?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"A folytatáshoz minden fájlból legalább egy verziót ki kell választani.\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly , 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ , 2023\\nEmpty Slot Filler, 2023\\nLinerly , 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly , 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli , 2025\", \"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:\\nJoas Schilling, 2024\\nSveinn í Felli , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er bannað sem heiti á skrá eða möppu.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er bönnuð skráartegund.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ekki leyfilegt innan í heiti á skrá eða möppu.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúnda eftir\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"set saman\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Hætta við\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Hætta við alla aðgerðina\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Búa til nýtt\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"Failed assembling the chunks together\": { \"msgid\": \"Failed assembling the chunks together\", \"msgstr\": [\"Mistókst að setja saman bútana\"] }, \"Failed uploading the file\": { \"msgid\": \"Failed uploading the file\", \"msgstr\": [\"Mistókst að senda inn skrána\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Skráaheiti mega ekki enda á \"{segment}\".'] }, \"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\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti innkomandi skrárinnar.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ógilt skráarheiti\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nýtt skráarheiti\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Endurnefna\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Sleppa\"] }, \"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\": { \"msgid\": \"Upload\", \"msgstr\": [\"Senda inn\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Senda inn möppur\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Senda inn frá tæki\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Hætt hefur verið við innsendingu\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Innsendingu hefur verið sleppt\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Innsendingu á \"{folder}\" hefur verið sleppt'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Framvinda innsendingar\"] }, \"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\": [\"Þegar valin er mappa fyrir skrár sem berast, verður einnig skrifað yfir allar skrár í henni sem valda árekstrum.\"] }, \"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\": [\"Þegar valin er mappa fyrir skrár sem berast, verður efnið skrifað inn í fyrirliggjandi möppu og farið í að leysa úr árekstrum.\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Þú getur annaðhvort endurnefnt skrána, sleppt þessari skrá eða hætt við alla þessa aðgerð.\"] }, \"You need to select 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\": \"Roberto Resoli, 2025\", \"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:\\nJoas Schilling, 2024\\nFrancesco Sercia, 2024\\nalbanobattistella , 2024\\nLorenzo Taiocchi, 2025\\nesseti kappa, 2025\\nRoberto Resoli, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Roberto Resoli, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" è un nome di file o cartella proibito.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\"è un tipo di file proibito.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" non è consentito all'interno di un nome di file o cartella.`] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondo rimanente \", \"{seconds} secondi rimanenti \", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"assemblaggio\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annulla\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annulla l'intera operazione\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crea nuovo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Impossibile unire i pezzi\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Impossibile caricare il file\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['I nomi dei file non devono terminare con \"{segment}\".'] }, \"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 selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome file non valido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nuovo nome file\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rinomina\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Salta\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sata {count} file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Salta questo file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Caricamento\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Carica cartelle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carica dal dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Caricamento annullato\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Il caricamento è stato saltato\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Il caricamento di \"{folder}\" è stato saltato'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso del caricamento\"] }, \"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 si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti.\"] }, \"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\": [\"Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"È possibile rinominare il file, ignorarlo o annullare l'intera operazione.\"] }, \"You need to select 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\": \"ja\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"kojima.imamura, 2025\", \"Language-Team\": \"Japanese (Japan) (https://app.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:\\nJoas Schilling, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\n貴宝, 2025\\nkshimohata, 2025\\nkojima.imamura, 2025\\n\" }, \"msgstr\": [\"Last-Translator: kojima.imamura, 2025\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" は禁止されているファイルまたはフォルダ名です。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" は禁止されているファイルタイプです。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['ファイルまたはフォルダ名に \"{segment}\" を含めることはできません。'] }, \"{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\", \"msgid_plural\": \"{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\": [\"残り数秒\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"既存バージョン\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"チャンクの組み立てに失敗しました\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"ファイルのアップロードに失敗しました\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['ファイル名の末尾に \"{segment}\" を付けることはできません。'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無効なファイル名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最終更新日不明\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} 個のファイルをスキップする\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"このファイルをスキップする\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"サイズ不明\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"アップロードがスキップされました\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" のアップロードがスキップされました'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": [\"続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。\"] } } } } }, { \"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\": \"보헤민, 2025\", \"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\\nshin2012 , 2025\\n이상오, 2025\\n보헤민, 2025\\n\" }, \"msgstr\": [\"Last-Translator: 보헤민, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\"은(는) 금지된 파일 및 폴더 이름입니다.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\"은(는) 금지된 파일 형식입니다.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['파일이나 폴더 이름에 \"{segment}\"을(를) 사용할 수 없습니다.'] }, \"{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\", \"msgid_plural\": \"{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\": [\"곧 완료\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"현재 버전\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"조각을 취합하는 데 실패\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"파일을 업로드하는 데 실패\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['파일 이름은 \"{segment}\"(으)로 끝나야 합니다.'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개 파일 건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"이 파일 건너뛰기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"업로드를 건너뛰었습니다.\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" 업로드를 건너뛰었습니다.'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"bone NI, 2025\", \"Language-Team\": \"Lao (https://app.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:\\nbone NI, 2025\\n\" }, \"msgstr\": [\"Last-Translator: bone NI, 2025\\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ແມ່ນຊື່ໄຟລ໌ ຫຼື ໂຟລເດີທີ່ບໍ່ອະນຸຍາດ.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ແມ່ນປະເພດໄຟລ໌ທີ່ບໍ່ອະນຸຍາດ.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['ບໍ່ອະນຸຍາດໃຫ້ມີ \"{segment}\" ຢູ່​ໃນຊື່ໄຟລ໌ ຫຼື ໂຟລເດີ.'] }, \"{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\": [\"ໄຟລ໌ຊ້ຳກັນ {count} ລາຍການ ໃນ {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{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\": [\"ເຫຼືອເວລາອີກບໍ່ດົນ\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"ສະບັບທີ່ມີຢູ່ແລ້ວ\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"ການຮວບຮວມສ່ວນຕ່າງໆເຂົ້າກັນບໍ່ສຳເລັດ\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"ອັບໂຫຼດໄຟລ໌ບໍ່ສຳເລັດ\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['ຊື່ໄຟລ໌ຕ້ອງບໍ່ລົງທ້າຍດ້ວຍ \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"ຊື່ໄຟລ໌ບໍ່ຖືກຕ້ອງ\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"ບໍ່ຊາບວັນທີແກ້ໄຂຫຼ້າສຸດ\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"ໃໝ່\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"ຂ້າມ {count} ໄຟລ໌\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"ຂ້າມໄຟລ໌ນີ້\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"ບໍ່ຊາບຂະໜາດ\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"ການອັບໂຫຼດໄດ້ຖືກຂ້າມໄປແລ້ວ\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['ການອັບໂຫຼດ \"{folder}\" ໄດ້ຖືກຂ້າມໄປແລ້ວ'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"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\": \"Edgars Andersons, 2025\", \"Language-Team\": \"Latvian (https://app.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:\\nPapuass , 2024\\nArmīns Jeltajevs , 2024\\nEdgars Andersons, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Edgars Andersons, 2025\\nLanguage-Team: Latvian (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ir aizliegts datnes vai mapes nosaukums.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ir aizliegts datnes veids.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ir nav ļauts datnes vai mapes nosaukumā.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} nesaderīgu datņu\", \"{count} nesaderīga datne\", \"{count} nesaderīgas datnes\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} nesaderīgu datņu {dirname}\", \"{count} nesaderīga datne {dirname}\", \"{count} nesaderīgas datnes {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"Atlikušas {seconds} sekundes\", \"Atlikusi {seconds} sekunde\", \"Atlikušas {seconds} sekundes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"atlicis {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"atlikušas dažas sekundes\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"sakopo\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Atcelt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Atcelt visu darbību\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Atcelt augšupielādes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Turpināt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Izveidot jaunu\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"paredzamais atlikušais laiks\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Esošā versija\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Neizdevās apvienot gabalus\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Neizdevās augšupielādēt datni\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Datnes nosaukumi nedrīkst beigties ar \"{segment}\".'] }, \"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\": [\"Ja atlasa abas versijas, ienākošās datnes nosaukumam tiks pievienots skaitlis.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nederīgs datnes nosaukums\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Pēdējais izmainīšanas datums nav zināms\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Jauns\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Jauns datnes nosaukums\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Jauna versija\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"apturēta\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Priekšskatīt attēlu\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Pārdēvēt\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Atlasīt visas izvēles rūtiņas\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Atlasīt visas esošās datnes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Atlasīt visas jaunās datnes\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Izlaist\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Izlaist {count} datņu\", \"Izlaist {count} datni\", \"Izlaist {count} datnes\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Izlaist šo datni\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nezināms izmērs\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Augšupielādēt\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Augšupielādēt datnes\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Augšupielādēt mapes\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Augšupielādēt no ierīces\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Augšupielāde tika atcelta\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Augšupielāde tika izlaista\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" augšupielāde tika izlaista'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Augšupielādes virzība\"] }, \"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\": [\"Kad ir atlasīta ienākošā mape, tiks pārrakstītas arī jebkuras tajā esošās nesaderīgās datnes.\"] }, \"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\": [\"Kad ir atlasīta ienākošā mape, saturs tiks rakstīts esošajā mapē, un tiks veikta rekursīva nesaderību novēršana.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Kuras datnes paturēt?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Datni var vai nu pārdēvēt, vai izlaist vai atcelt visu darbību.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ir nepieciešams atlasīt vismaz vienu katras datnes versiju, lai turpinātu.\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров , 2025\", \"Language-Team\": \"Macedonian (https://app.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:\\nJoas Schilling, 2024\\nСашко Тодоров , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров , 2025\\nLanguage-Team: Macedonian (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" е забрането име на датотека или име на папка.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" е забранет вид на датотека.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" не е дозволено во името датотека или папка.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{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}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"уште {seconds} секунда\", \"уште {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\": [\"уште неколку секунди\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Постоечка верзија\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Неуспешно составување на парчињата заедно\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Неуспешно прикачување на датотека\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Имињата на датотеките не смеат да завршуваат со \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Невалидно име на датотека\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Непознат датумот на последната измена\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нова\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескокни {count} датотека\", \"Прескокни {count} датотеки\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Прескокни ја оваа датотека\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната големина\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Прикачувањето е прескокнато\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Прикачувањето на \"{folder}\" е прескокнато'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"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\": \"DT Navy, 2024\", \"Language-Team\": \"Malay (Malaysia) (https://app.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:\\nDT Navy, 2024\\n\" }, \"msgstr\": [\"Last-Translator: DT Navy, 2024\\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" adalah fail dan nama folder yang dilarang'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" adalah jenis fail yang dilarang'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" adalah tidak dibenarkan dalam nama fail atau folder'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} files bertindih\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fail bertindih dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saat tinggal\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tinggal\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"beberapa saat lagi\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"batal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Batal keseluruhan operasi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"batal muat naik\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"teruskan\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Buat baharu\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"jangkaan masa tinggal\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"versi sedia ada\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Nama fail tidak boleh berakhir dengan \"{segment}\".'] }, \"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\": [\"Jika dua versi dipilih, fail yang masuk akan ditambah bilangan pada namanya.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nama fail tidak sah\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tarikh terakhir diubah suai tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nama fail baharu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baharu\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Jeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Pratonton gambar\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Menamakan semula\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak pilihan\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua fail yang wujud\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"pilih semua fail baharu\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Langkau\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Langkau fail {count}\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Saiz tidak diketahui\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Muat naik\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Muat naik fail\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Muat naik folder\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Muat naik dari peranti\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Muat naik telah dibatalkan\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Muat naik telah dilangkau\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Muat naik \"{folder}\" telah dilangkau'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Kemajuan muat naik\"] }, \"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\": [\"Apabila folder masuk dipilih, sebarang fail bertindih akan ditulis semula\"] }, \"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\": [\"Apabila folder masuk dipilih, kandungan ditulis ke dalam folder sedia ada dan penyelesaian konflik rekursif dilakukan.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Fail yang mana ingin disimpan?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"And boleh menamakan semula fail, langkau fail tersebut atau membatalkan keseluruhan operasi\"] }, \"You need to select 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 perlu memilih sekurangnya satu versi setiap fail untuk teruskan\"] } } } } }, { \"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\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Roger Knutsen, 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:\\nJoas Schilling, 2024\\nRoger Knutsen, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Roger Knutsen, 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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tillatt i et fil- eller mappenavn.'] }, \"{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\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hele operasjonen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opprett ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavn må ikke slutte med \"{segment}\".'] }, \"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\": [\"Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldig filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøp\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hopp over\"] }, \"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 files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Last opp mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Last opp fra enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Opplastingen er kansellert\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Opplastingen er hoppet over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Opplasting av \"{folder}\" er hoppet over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"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 innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet.\"] }, \"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 innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen.\"] }, \"You need to select 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\": \"Stephan Paternotte , 2025\", \"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:\\nJoas Schilling, 2024\\nJoris deLeeuw, 2025\\nStephan Paternotte , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Stephan Paternotte , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" is een verboden bestands- of mapnaam.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" is een verboden bestandstype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" is niet toegestaan in een bestand of mapnaam.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} bestandsconflict\", \"{count} bestanden conflicteren\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} bestandsconflict in {dirname}\", \"{count} bestandenconflicten in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconde resterend\", \"{seconds} seconden resterend\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} resterend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden over\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"samenstellen\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuleren\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"De hele bewerking annuleren\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploaden annuleren\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Doorgaan\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Nieuw aanmaken\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"resterende tijd schatten\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Bestaande versie\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Kon de stukken niet samenvoegen\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Het uploaden van het bestand is mislukt\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Bestandsnamen mogen niet eindigen met \"{segment}\".'] }, \"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\": [\"Als je beide versies selecteert, krijgt het binnenkomende bestand een nummer toegevoegd aan de naam.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ongeldige bestandsnaam\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Laatst gewijzigde datum onbekend\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nieuw\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nieuwe bestandsnaam\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nieuwe versie\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"gepauzeerd\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Voorbeeldweergave\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Hernoemen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle opties selecteren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle bestanden selecteren\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle nieuwe bestanden selecteren\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Overslaan\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} bestand overslaan\", \"{count} bestanden overslaan\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Dit bestand overslaan\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Onbekende grootte\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Uploaden\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Mappen uploaden\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Uploaden vanaf apparaat\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload is geanulleerd\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload is overgeslagen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload van \"{folder}\" is overgeslagen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uploadvoortgang\"] }, \"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\": [\"Wanneer een inkomende map is geselecteerd, worden alle conflicterende bestanden daarin ook overschreven.\"] }, \"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\": [\"Wanneer een inkomende map is geselecteerd, wordt de inhoud in de bestaande map geschreven en wordt er een recursieve conflictoplossing uitgevoerd.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welke bestanden wil je behouden?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Je kunt het bestand ofwel hernoemen, dit bestand overslaan of de hele bewerking annuleren.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Je moet minstens één versie van elk bestand selecteren om door te gaan.\"] } } } } }, { \"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\": \"Valdnet, 2025\", \"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 Strebski , 2024\\nValdnet, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Valdnet, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" to zabroniona nazwa pliku lub katalogu.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" jest zabronionym typem pliku.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Znak \"{segment}\" nie jest dozwolony w nazwie pliku lub katalogu.'] }, \"{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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Utwórz nowe\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Nazwy plików nie mogą kończyć się na \"{segment}\".'] }, \"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.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nieprawidłowa nazwa pliku\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nowa nazwa pliku\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Zmiana nazwy\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie pola wyboru\"] }, \"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\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pomiń\"] }, \"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\": { \"msgid\": \"Upload\", \"msgstr\": [\"Wyślij\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Wyślij katalogi\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Wyślij z urządzenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Wysyłanie zostało anulowane\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Wysyłanie zostało pominięte\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Wysyłanie \"{folder}\" zostało pominięte'] }, \"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 katalogu 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 katalogu przychodzącego zawartość jest zapisywana w istniejącym katalogu 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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację.\"] }, \"You need to select 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\": \"F Bausch, 2025\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes , 2024\\nRodrigo Sottomaior Macedo , 2024\\nF Bausch, 2025\\n\" }, \"msgstr\": [\"Last-Translator: F Bausch, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" é um nome de arquivo ou pasta proibido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" é um tipo de arquivo proibido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" não é permitido dentro de um nome de arquivo ou pasta.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo restante\", \"{seconds} segundos restantes\", \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"montando\"] }, \"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\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Criar novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Falha ao montar os pedaços juntos\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Falha ao fazer o upload do arquivo\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Os nomes dos arquivos não devem terminar com \"{segment}\".'] }, \"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 você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome de arquivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de arquivo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Selecionar todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecionar todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecionar todos os novos arquivos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pular\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pular {count} arquivo\", \"Pular {count} de arquivos\", \"Pular {count} arquivos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Pular este arquivo\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Fazer upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fazer upload de arquivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Fazer upload de pastas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Fazer upload do dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O upload foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O upload foi pulado\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['O upload de \"{folder}\" foi pulado'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso de upload\"] }, \"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 recebida é selecionada, todos os arquivos conflitantes dentro dela também serão sobrescritos.\"] }, \"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\": [\"Quando uma pasta recebida é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operaçã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\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"artur25 , 2025\", \"Language-Team\": \"Portuguese (Portugal) (https://app.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:\\nJoas Schilling, 2024\\nguilherme ferreira, 2025\\nartur25 , 2025\\n\" }, \"msgstr\": [\"Last-Translator: artur25 , 2025\\nLanguage-Team: Portuguese (Portugal) (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" é um Nome de arquivo ou pasta proibido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" é um tipo de ficheiro proibido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" não é permitido num nome de ficheiro ou pasta.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"Conflito em {count} ficheiro\", \"Conflito em {count} ficheiros\", \"Conflito em {count} ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiro em {dirname}\", \"{count} conflitos de ficheiro em {dirname}\", \"{count} conflitos de ficheiro em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"Falta {seconds} segundo\", \"Faltam {seconds} segundos\", \"Faltam {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"montagem\"] }, \"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 envios\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Criar novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Falha ao juntar os fragmentos\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Falha ao carregar o ficheiro\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Os nomes de ficheiro não podem terminar em \"{segment}\".'] }, \"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 selecionar ambas as versões, será adicionado um número ao nome do ficheiro recebido.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome de ficheiro inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de ficheiro\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Pré-visualizar imagem\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Selecionar todas as caixas de verificação\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ignorar\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} ficheiro\", \"Ignorar {count} ficheiros\", \"Ignorar {count} ficheiros\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Ignorar este ficheiro\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Carregar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Carregar pastas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carregar a partir do dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O carregamento foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O carregamento foi ignorado\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['O carregamento da pasta \"{folder}\" foi ignorado'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso do carregamento\"] }, \"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\": [\"Ao selecionar uma pasta recebida, quaisquer ficheiros em conflito no seu interior também serão sobrescritos.\"] }, \"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\": [\"Ao selecionar uma pasta recebida, o conteúdo é escrito na pasta existente e é efetuada uma resolução de conflitos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais ficheiros pretende manter?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Pode renomear o ficheiro, ignorá-lo ou cancelar toda a operaçã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\": [\"Precisa de selecionar pelo menos uma versão de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu , 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu , 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Igor Orlov, 2025\", \"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\\nВлад, 2024\\nAlex , 2024\\nRoman Stepanov, 2024\\nMaksim Sukharev, 2024\\nАлександр, 2025\\nIgor Orlov, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Igor Orlov, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» — это запрещенное имя файла или папки.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» — это запрещенный тип файла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» не допускается в имени файла или папки.\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"осталась {seconds} секунда\", \"осталось {seconds} секунды\", \"осталось {seconds} секунд\", \"осталось {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\": [\"осталось несколько секунд\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Текущая версия\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Не удалось собрать части вместе\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Не удалось загрузить файл\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена файлов не должны заканчиваться на «{segment}»\"] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неверное имя файла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить {count} файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Пропустить этот файл\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Загрузка была пропущена\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Загрузка «{folder}» была пропущена\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"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\": \"sk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Anton Krajcik , 2025\", \"Language-Team\": \"Slovak (Slovakia) (https://app.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:\\nJozef Gaal , 2024\\nLinker Linker , 2024\\nAnton Krajcik , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Anton Krajcik , 2025\\nLanguage-Team: Slovak (Slovakia) (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ je zakázaný názov súboru alebo priečinka.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je zákazaný typ súboru.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}“ je zakázané v názve súboru alebo adresára.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} súbor má konflikt\", \"{count} súbory majú konflikt\", \"{count} súborov má konflikt\", \"{count} súborov má konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} súborový konflikt v {dirname}\", \"{count} súborové konflikty v {dirname}\", \"{count} súborových konfliktov v {dirname}\", \"{count} súborových konfliktov v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunda zostáva\", \"{seconds} sekúnd zostáva\", \"{seconds} sekúnd zostáva\", \"{seconds} sekundy zostávajú\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} zostáva\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zostáva niekoľko sekúnd\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"zhromažďovanie\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušiť\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušiť celú operáciu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušiť nahrávanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovať\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvoriť nové\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovanie zostávajúceho času\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existujúca verzia\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Nepodarilo sa dať časti dohromady.\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Nepodarilo sa nahrať súbor\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Názvy súborov nesmú končiť znakom \"{segment}\".'] }, \"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\": [\"Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný názov súboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dátum poslednej úpravy neznámy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nový\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový názov súboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verzia\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastavené\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhľad obrázka\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Premenovať\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označiť všetky výberové políčka\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrať všetky existujúce súbory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrať všetky nové súbory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskočiť\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskočiť {count} súbor\", \"Preskočiť {count} súborov\", \"Preskočiť {count} súborov\", \"Preskočiť {count} súbory\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Preskočiť tento súbor\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznáma veľkosť\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrať\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrať súbory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrať priečinky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrať zo zariadenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávanie bolo zrušené\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrávanie bolo preskočené\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nahrávanie \"{folder}\" bolo preskočené'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Priebeh nahrávania\"] }, \"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\": [\"Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom.\"] }, \"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 výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Ktoré súbory chcete ponechať?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru.\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.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:\\nJoas Schilling, 2024\\nJan Kraljič , 2024\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" je prepovedano ime datoteka ali mape.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je prepovedan tip datoteke.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ni dovoljeno v imenu datoteke ali mape.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"1{count} datoteka je v konfliktu\", \"1{count} datoteki sta v konfiktu\", \"1{count} datotek je v konfliktu\", \"{count} datotek je v konfliktu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} datoteka je v konfiktu v {dirname}\", \"{count} datoteki sta v konfiktu v {dirname}\", \"{count} datotek je v konfiktu v {dirname}\", \"{count} konfliktov datotek v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Prekliči\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Prekliči celotni postopek\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Nadaljuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Ustvari nov\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjujem čas do konca\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Obstoječa različica\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Imena datotek se ne smejo končati s \"{segment}\".'] }, \"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\": [\"Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nepravilno ime datoteke\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum zadnje spremembe neznan\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo ime datoteke\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova različica\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Predogled slike\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Preimenuj\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Izberi vsa potrditvena polja\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Označi vse obstoječe datoteke\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Označi vse nove datoteke\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskoči\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskoči datoteko\", \"Preskoči {count} datoteki\", \"Preskoči {count} datotek\", \"Preskoči {count} datotek\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznana velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Naloži\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Naloži datoteke\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Naloži mape\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Naloži iz naprave\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nalaganje je bilo preklicano\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nalaganje je bilo preskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nalaganje \"{folder}\" je bilo preskočeno'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Napredek nalaganja\"] }, \"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\": [\"Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane.\"] }, \"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\": [\"Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Katere datoteke želite obdržati?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Izbrati morate vsaj eno različico vsake datoteke da nadaljujete.\"] } } } } }, { \"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\": \"Иван Пешић, 2025\", \"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:\\nJoas Schilling, 2024\\nИван Пешић, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” је забрањено име фајла или фолдера.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” је забрањен тип фајла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}” није дозвољено унутар имена фајла или фолдера.\"] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунда\", \"преостало је {seconds} секунде\", \"преостало је {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\": [\"преостало је неколико секунди\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Постојећа верзија\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Није успело састављање делова\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Није успело отпремање фајла\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена фајлова не смеју да се завршавају на „{segment}”.\"] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неисправно име фајла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи {count} фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Прескочи овај фајл\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Отпремање је прескочено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Отпремање „{folder}”је прескочено\"] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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, 2025\", \"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, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" är ett förbjudet fil- eller mappnamn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" är en förbjuden filtyp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" är inte tillåtet i ett fil- eller mappnamn.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvar\", \"{seconds} sekunder kvar\"] }, \"{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\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"Sammanställer\"] }, \"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\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Misslyckades med att sammanställa delarna\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Kunde inte ladda upp filen\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnamn får inte sluta med \"{segment}\".'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnamn\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över {count} fil\", \"Hoppa över {count} filer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Hoppa över denna fil\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Ladda upp\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Uppladdningen har hoppats över\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Uppladdningen av \"{folder}\" har hoppats över'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen.\"] }, \"You need to select 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\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat , 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat , 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat , 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren , 2025\", \"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 , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren , 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" dosya ya da klasör adına izin verilmiyor.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" dosya türüne izin verilmiyor.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Bir dosya ya da klasör adında \"{segment}\" ifadesine izin verilmiyor.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\", \"{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ı\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"birleştiriliyor\"] }, \"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\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Parçalar birleştirilemedi\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Dosya yüklenemedi\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dosya adları \"{segment}\" ile bitmemeli.'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Yeni dosya adı\"] }, \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} dosyayı atla\", \"{count} dosyayı atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Bu dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Yükle\"] }, \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Yükleme atlandı\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" klasörünün yüklenmesi atlandı'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz.\"] }, \"You need to select 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, 2025\", \"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, 2025\\n\" }, \"msgstr\": [\"Last-Translator: O St, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [`\"{segment}\" недозволене ім'я файлу або каталогу.`] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" недозволений тип файлу.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" недозволене сполучення символів в назві файлу або каталогу.'] }, \"{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\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунда залишилася\", \"{seconds} секунди залишилося\", \"{seconds} секунд залишилося\", \"{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\": [\"залишилося кілька секунд\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"Присутня версія\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Не вдалося зібрати частинки докупи\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Не вдалося завантажити файл\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [`Ім'я файлів не можуть закінчуватися на \"{segment}\".`] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Недійсне ім'я файлу\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити {count} файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Пропустити цей файл\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Завантаження пропущено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Завантаження \"{folder}\" пропущено'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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\": \"Khurshid Ibatov , 2025\", \"Language-Team\": \"Uzbek (https://app.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:\\nKhurshid Ibatov , 2025\\n\" }, \"msgstr\": [\"Last-Translator: Khurshid Ibatov , 2025\\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" taqiqlangan fayl yoki papka nomidir.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" taqiqlangan fayl turi hisoblanadi.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" fayl yoki papka nomi ichida ruxsat berilmaydi.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fayllar ziddiyati\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count}fayl ziddiyatlari {dirname} da\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} soniya qoldi\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} qoldi\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir necha soniya qoldi\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"yig'ish\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Bekor qilish\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Butun operatsiyani bekor qiling\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yuklashni bekor qilish\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Davom eting\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yangi yaratish\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"qolgan vaqtni hisoblash\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Mavjud versiya\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Bo'laklarni birlashtirib bo'lmadi\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Fayl yuklanmadi\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Fayl nomlari bilan tugamasligi kerak \"{segment}\".'] }, \"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\": [\"Agar siz ikkala versiyani tanlasangiz, kiruvchi fayl nomiga qo'shilgan raqamga ega bo'ladi.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Fayl nomi noto‘g‘ri\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Oxirgi tahrirlangan sana noma'lum\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yangi\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Yangi nom faylga\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yangi versiya\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"tanaffus\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Rasmni oldindan ko'rish\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Qayta nomlash\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Barcha katakchalarni belgilang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Barcha mavjud fayllarni tanlang\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Barcha yangi fayllarni tanlang\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Oʻtkazib yuborish\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Oʻtkazib yuborish {count} fayllarini\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Oʻtkazib yuborish ushbu faylni\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Noma'lum o'lcham\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Yuklash\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fayllarni yuklash\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Jildlarni yuklash\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Qurilmadan yuklash\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yuklash bekor qilindi\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Yuklash oʻtkazib yuborildi\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [' \"{folder}\" ni yuklash bekor qilindi'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yuklash jarayoni\"] }, \"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\": [\"Kiruvchi jild tanlanganda, undagi har qanday ziddiyatli fayllar ham ustiga yoziladi.\"] }, \"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\": [\"Kiruvchi jild tanlanganda, kontent mavjud jildga yoziladi va nizolarni rekursiv hal qilish amalga oshiriladi.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Qaysi fayllarni saqlamoqchisiz?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Siz fayl nomini o'zgartirishingiz, ushbu faylni o'tkazib yuborishingiz yoki butun operatsiyani bekor qilishingiz mumkin.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Davom etish uchun har bir faylning kamida bitta versiyasini tanlashingiz kerak.\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"nhatCreA, 2025\", \"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:\\nJoas Schilling, 2024\\nnhatCreA, 2025\\n\" }, \"msgstr\": [\"Last-Translator: nhatCreA, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" là tên thư mục bị cấm đặt.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" là loại tệp bị cấm.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" không được phép đặt trong tên tệp hoặc thư mục.'] }, \"{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 ở thư mục \"{dirname}\"'] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgid_plural\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} giây trước\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} trước\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"vài giây trước\"] }, \"assembling\": { \"msgid\": \"assembling\", \"msgstr\": [\"đang cấu trúc\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Huỷ\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Huỷ toàn bộ thao tác\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Tạo mới\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ước tính thời gian còn lại\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên bản hiện tại\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"Không thể assemble các chunks lại với nhau\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"Tải lên tệp tin thất bại\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Tên tập tin không được kết thúc bằng \"{segment}\".'] }, \"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\": [\"Nếu bạn chọn cả hai, tệp tin đến sẽ có thêm một chữ số vào tên.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Tên tệp tin không hợp lệ\"] }, \"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 filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Tên tệp tin 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\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Đổi tên\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin đang tồn tại\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Bỏ qua\"] }, \"Skip {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ qua {count} tệp\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"Bỏ qua tệp này\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tải lên tệp tin\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Tải lên thư mục\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Tải lên từ thiết bị\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Tải lên đã bị huỷ\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Tải lên đã bỏ qua\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Tải lên \"{folder}\" đã bị bỏ qua'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Tiến trình tải lê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\": [\"Khi bạn chọn một thư mục để đưa vào, bất kỳ tệp nào trong đó gây xung đột cũng sẽ bị ghi đè.\"] }, \"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\": [\"Khi chọn một thư mục để đưa vào, nội dung sẽ được ghi vào thư mục hiện có, và hệ thống sẽ tự động giải quyết các xung đột một cách chi tiết và cẩn thận.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tệp nào?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Bạn có thể đổi tên tệp, bỏ qua tệp này, hoặc hủy toàn bộ thao tác.\"] }, \"You need to select 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 cho mỗi tệp để tiếp tục.\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"DWXXX, 2025\", \"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:\\nJoas Schilling, 2024\\ngloryandel, 2024\\nDWXXX, 2025\\n\" }, \"msgstr\": [\"Last-Translator: DWXXX, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是被禁止的文件名或文件夹名。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是被禁止的文件类型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允许包含在文件名或文件夹名中。'] }, \"{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\", \"msgid_plural\": \"{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\": [\"还剩几秒\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"服务端版本\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"组合区块失败\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"上传文件失败\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['文件名不得以 \"{segment}\" 结尾。'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"无效文件名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过 {count} 文件\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"跳过此文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上传已跳过\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['已跳过上传\"{folder}\"'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"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, 2025\", \"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, 2025\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2025\\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\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案或資料夾名稱。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案類型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允許出現在檔案或資料夾名稱中。'] }, \"{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\", \"msgid_plural\": \"{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\": [\"還剩幾秒\"] }, \"assembling\": { \"msgid\": \"assembling\", \"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\": [\"既有版本\"] }, \"Failed to assemble the chunks together\": { \"msgid\": \"Failed to assemble the chunks together\", \"msgstr\": [\"無法組裝這些部分\"] }, \"Failed to upload the file\": { \"msgid\": \"Failed to upload the file\", \"msgstr\": [\"無法上傳檔案\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['檔案名不得以 \"{segment}\" 結尾。'] }, \"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 filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無效的檔案名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New filename\": { \"msgid\": \"New filename\", \"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 {count} file\": { \"msgid\": \"Skip {count} file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgstr\": [\"略過這個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload\": { \"msgid\": \"Upload\", \"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 has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上傳已被跳過\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" 的上傳已被跳過'] }, \"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 can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以選擇重新命名檔案、跳過此檔案或取消整個操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 , 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 , 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 , 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nclass UploadCancelledError extends Error {\n constructor(cause) {\n super(t(\"Upload has been cancelled\"), { cause });\n }\n}\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\naxiosRetry(axios, { retries: 0 });\nasync function uploadData(url, uploadData2, uploadOptions) {\n const options = {\n headers: {},\n onUploadProgress: () => {\n },\n onUploadRetry: () => {\n },\n retries: 5,\n ...uploadOptions\n };\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (options.destinationFile) {\n options.headers.Destination = options.destinationFile;\n }\n if (!options.headers[\"Content-Type\"]) {\n options.headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal: options.signal,\n onUploadProgress: options.onUploadProgress,\n headers: options.headers,\n \"axios-retry\": {\n retries: options.retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3),\n retryCondition(error) {\n if (error.status === 507) {\n return false;\n }\n if (error.status === 423) {\n return true;\n }\n return isNetworkOrIdempotentRequestError(error);\n },\n onRetry: options.onUploadRetry\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, isPublic = false, customHeaders = {}) {\n let chunksWorkspace;\n if (isPublic) {\n chunksWorkspace = `${getBaseUrl()}/public.php/dav/uploads/${getSharingToken()}`;\n } else {\n chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n }\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 = customHeaders;\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n logger.debug(\"Created temporary upload workspace\", { url });\n return url;\n};\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\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 = /* @__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 || {});\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}\n/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\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;\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path) {\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 }\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 /**\n * Add multiple children at once\n * @param files The files to add\n */\n async addChildren(files) {\n for (const file of files) {\n await this.addChild(file);\n }\n }\n /**\n * Add a child to the directory.\n * If it is a nested child the parents will be created if not already exist.\n * @param file The child to add\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 const child = new Directory(`${rootPath}${file.name}`);\n await child.addChildren(entries);\n this._children.set(file.name, child);\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 await this._children.get(base).addChild(file);\n } else {\n const child = new Directory(`${rootPath}${base}`);\n await child.addChild(file);\n this._children.set(base, child);\n }\n }\n }\n }\n}\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nvar EtaStatus = /* @__PURE__ */ ((EtaStatus2) => {\n EtaStatus2[EtaStatus2[\"Idle\"] = 0] = \"Idle\";\n EtaStatus2[EtaStatus2[\"Paused\"] = 1] = \"Paused\";\n EtaStatus2[EtaStatus2[\"Running\"] = 2] = \"Running\";\n return EtaStatus2;\n})(EtaStatus || {});\nclass Eta extends TypedEventTarget {\n /** Bytes done */\n _done = 0;\n /** Total bytes to do */\n _total = 0;\n /** Current progress (cached) as interval [0,1] */\n _progress = 0;\n /** Status of the ETA */\n _status = 0;\n /** Time of the last update */\n _startTime = -1;\n /** Total elapsed time for current ETA */\n _elapsedTime = 0;\n /** Current speed in bytes per second */\n _speed = -1;\n /** Expected duration to finish in seconds */\n _eta = Infinity;\n /**\n * Cutoff time for the low pass filter of the ETA.\n * A higher value will consider more history information for calculation,\n * and thus suppress spikes of the speed,\n * but will make the overall resposiveness slower.\n */\n _cutoffTime = 2.5;\n constructor(options = {}) {\n super();\n if (options.start) {\n this.resume();\n }\n if (options.total) {\n this.update(0, options.total);\n }\n this._cutoffTime = options.cutoffTime ?? 2.5;\n }\n /**\n * Add more transferred bytes.\n * @param done Additional bytes done.\n */\n add(done) {\n this.update(this._done + done);\n }\n /**\n * Update the transmission state.\n *\n * @param done The new value of transferred bytes.\n * @param total Optionally also update the total bytes we expect.\n */\n update(done, total) {\n if (this.status !== 2) {\n return;\n }\n if (total && total > 0) {\n this._total = total;\n }\n const deltaDone = done - this._done;\n const deltaTime = (Date.now() - this._startTime) / 1e3;\n this._startTime = Date.now();\n this._elapsedTime += deltaTime;\n this._done = done;\n this._progress = this._done / this._total;\n const historyNeeded = this._cutoffTime + deltaTime;\n if (this._elapsedTime > historyNeeded) {\n const alpha = deltaTime / (deltaTime + 1 / this._cutoffTime);\n const filtered = this._done - deltaDone + (1 - alpha) * deltaDone;\n this._speed = Math.round(filtered / this._elapsedTime);\n } else if (this._speed === -1 && this._elapsedTime > deltaTime) {\n const remaining = this._total - done;\n const eta = remaining / (done / this._elapsedTime);\n if (this._eta !== Infinity || eta <= 2 * this._cutoffTime) {\n this._eta = eta;\n }\n }\n if (this._speed > 0) {\n this._eta = Math.round((this._total - this._done) / this._speed);\n }\n this.dispatchTypedEvent(\"update\", new CustomEvent(\"update\", { cancelable: false }));\n }\n reset() {\n this._done = 0;\n this._total = 0;\n this._progress = 0;\n this._elapsedTime = 0;\n this._eta = Infinity;\n this._speed = -1;\n this._startTime = -1;\n this._status = 0;\n this.dispatchTypedEvent(\"reset\", new CustomEvent(\"reset\"));\n }\n /**\n * Pause the ETA calculation.\n */\n pause() {\n if (this._status === 2) {\n this._status = 1;\n this._elapsedTime += (Date.now() - this._startTime) / 1e3;\n this.dispatchTypedEvent(\"pause\", new CustomEvent(\"pause\"));\n }\n }\n /**\n * Resume the ETA calculation.\n */\n resume() {\n if (this._status !== 2) {\n this._startTime = Date.now();\n this._status = 2;\n this.dispatchTypedEvent(\"resume\", new CustomEvent(\"resume\"));\n }\n }\n /**\n * Status of the Eta (paused, active, idle).\n */\n get status() {\n return this._status;\n }\n /**\n * Progress (percent done)\n */\n get progress() {\n return Math.round(this._progress * 1e4) / 100;\n }\n /**\n * Estimated time in seconds.\n */\n get time() {\n return this._eta;\n }\n /**\n * Human readable version of the estimated time.\n */\n get timeReadable() {\n if (this._eta === Infinity) {\n return t(\"estimating time left\");\n } else if (this._eta < 10) {\n return t(\"a few seconds left\");\n } else if (this._eta < 60) {\n return n(\"{seconds} seconds left\", \"{seconds} seconds left\", this._eta, { seconds: this._eta });\n }\n const hours = String(Math.floor(this._eta / 3600)).padStart(2, \"0\");\n const minutes = String(Math.floor(this._eta % 3600 / 60)).padStart(2, \"0\");\n const seconds = String(this._eta % 60).padStart(2, \"0\");\n return t(\"{time} left\", { time: `${hours}:${minutes}:${seconds}` });\n }\n /**\n * Transfer speed in bytes per second.\n * Returns `-1` if not yet estimated.\n */\n get speed() {\n return this._speed;\n }\n /**\n * Get the speed in human readable format using file sizes like 10KB/s.\n * Returns the empty string if not yet estimated.\n */\n get speedReadable() {\n return this._speed > 0 ? `${formatFileSize(this._speed, true)}∕s` : \"\";\n }\n}\nvar UploaderStatus = /* @__PURE__ */ ((UploaderStatus2) => {\n UploaderStatus2[UploaderStatus2[\"IDLE\"] = 0] = \"IDLE\";\n UploaderStatus2[UploaderStatus2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n UploaderStatus2[UploaderStatus2[\"PAUSED\"] = 2] = \"PAUSED\";\n return UploaderStatus2;\n})(UploaderStatus || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n _customHeaders;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({\n // Maximum number of concurrent uploads\n // @ts-expect-error TS2339 Object has no defined properties\n concurrency: getCapabilities().files?.chunked_upload?.max_parallel_count ?? 5\n });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _eta = new Eta();\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 this._customHeaders = {};\n if (!destinationFolder) {\n const source = `${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 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 || folder.type !== FileType.Folder || !folder.source) {\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 registered custom headers for uploads\n */\n get customHeaders() {\n return structuredClone(this._customHeaders);\n }\n /**\n * Set a custom header\n * @param name The header to set\n * @param value The string value\n */\n setCustomHeader(name, value = \"\") {\n this._customHeaders[name] = value;\n }\n /**\n * Unset a custom header\n * @param name The header to unset\n */\n deleteCustomerHeader(name) {\n delete this._customHeaders[name];\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n this._eta.reset();\n if (this._uploadQueue.length === 0 && this._jobQueue.size === 0) {\n return;\n }\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 logger.debug(\"Uploader state reset\");\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._eta.pause();\n this._jobQueue.pause();\n this._queueStatus = 2;\n this.updateStats();\n logger.debug(\"Uploader paused\");\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._eta.resume();\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n logger.debug(\"Uploader resumed\");\n }\n /**\n * Get the estimation for the uploading time.\n */\n get eta() {\n return this._eta;\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._eta.update(uploaded, size);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus !== 2) {\n const pending = this._uploadQueue.find(({ status }) => [Status.INITIALIZED, Status.UPLOADING, Status.ASSEMBLING].includes(status));\n if (this._jobQueue.size > 0 || pending) {\n this._queueStatus = 1;\n } else {\n this.eta.reset();\n this._queueStatus = 0;\n }\n }\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conflicts.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 if (!callback) {\n callback = async (files2) => files2;\n }\n return new PCancelable(async (resolve, reject, onCancel) => {\n const rootFolder = new Directory(\"\");\n await rootFolder.addChildren(files);\n const target = `${this.root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const upload2 = new Upload(target, false, 0, rootFolder);\n upload2.status = Status.UPLOADING;\n this._uploadQueue.push(upload2);\n logger.debug(\"Starting new batch upload\", { target });\n try {\n const client = davGetClient(this.root, this._customHeaders);\n const promise = this.uploadDirectory(destination, rootFolder, callback, client);\n onCancel(() => promise.cancel());\n const uploads = await promise;\n upload2.status = Status.FINISHED;\n resolve(uploads);\n } catch (error) {\n if (isCancel(error) || error instanceof UploadCancelledError) {\n logger.info(\"Upload cancelled by user\", { error });\n upload2.status = Status.CANCELLED;\n reject(new UploadCancelledError(error));\n } else {\n logger.error(\"Error in batch upload\", { error });\n upload2.status = Status.FAILED;\n reject(error);\n }\n } finally {\n this._uploadQueue.splice(this._uploadQueue.indexOf(upload2), 1);\n this._notifyAll(upload2);\n this.updateStats();\n }\n });\n }\n /**\n * Helper to create a directory wrapped inside an Upload class\n * @param destination Destination where to create the directory\n * @param directory The directory to create\n * @param client The cached WebDAV client\n */\n createDirectory(destination, directory, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n if (!directory.name) {\n throw new Error(\"Can not create empty directory\");\n }\n const currentUpload = new Upload(rootPath, false, 0, directory);\n this._uploadQueue.push(currentUpload);\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n await this._jobQueue.add(async () => {\n currentUpload.status = Status.UPLOADING;\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n resolve(currentUpload);\n } catch (error) {\n if (isCancel(error) || error instanceof UploadCancelledError) {\n currentUpload.status = Status.CANCELLED;\n reject(new UploadCancelledError(error));\n } else if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n currentUpload.status = Status.FINISHED;\n resolve(currentUpload);\n } else {\n currentUpload.status = Status.FAILED;\n reject(error);\n }\n } finally {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n });\n });\n }\n // Helper for uploading directories (recursively)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).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 logger.debug(\"Upload canceled by user\", { directory });\n reject(new UploadCancelledError(\"Conflict resolution cancelled by user\"));\n return;\n } else if (selectedForUpload.length === 0 && directory.children.length > 0) {\n logger.debug(\"Skipping directory, as all files were skipped by user\", { directory });\n resolve([]);\n return;\n }\n const directories = [];\n const uploads = [];\n abort.signal.addEventListener(\"abort\", () => {\n directories.forEach((upload2) => upload2.cancel());\n uploads.forEach((upload2) => upload2.cancel());\n });\n logger.debug(\"Start directory upload\", { directory });\n try {\n if (directory.name) {\n uploads.push(this.createDirectory(destination, directory, client));\n await uploads.at(-1);\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 const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n reject(e);\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 this.eta.resume();\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 supportsPublicChunking = getCapabilities().dav?.public_shares_chunking ?? false;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic && !supportsPublicChunking || 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, this._isPublic, this._customHeaders);\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 request2 = () => {\n let chunkBytes = 0;\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n {\n signal: upload2.signal,\n destinationFile: encodedDestinationFile,\n retries,\n onUploadProgress: ({ bytes }) => {\n const progressBytes = bytes * 0.9;\n chunkBytes += progressBytes;\n upload2.uploaded += progressBytes;\n this.updateStats();\n },\n onUploadRetry: () => {\n upload2.uploaded -= chunkBytes;\n chunkBytes = 0;\n this.updateStats();\n },\n headers: {\n ...this._customHeaders,\n ...this._mtimeHeader(file),\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n }\n }\n ).then(() => {\n upload2.uploaded += bufferEnd - bufferStart - chunkBytes;\n this.updateStats();\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.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.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request2));\n }\n const request = async () => {\n try {\n await Promise.all(chunksQueue);\n upload2.status = Status.ASSEMBLING;\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n ...this._customHeaders,\n ...this._mtimeHeader(file),\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n upload2.status = Status.FINISHED;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error) || error instanceof UploadCancelledError) {\n upload2.status = Status.CANCELLED;\n reject(new UploadCancelledError(error));\n } else {\n upload2.status = Status.FAILED;\n reject(t(\"Failed to assemble the chunks together\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n } finally {\n this._notifyAll(upload2);\n }\n };\n this._jobQueue.add(request);\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 {\n signal: upload2.signal,\n onUploadProgress: ({ bytes }) => {\n upload2.uploaded += bytes * 0.9;\n this.updateStats();\n },\n onUploadRetry: () => {\n upload2.uploaded = 0;\n this.updateStats();\n },\n headers: {\n ...this._customHeaders,\n ...this._mtimeHeader(file),\n \"Content-Type\": file.type\n }\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) || error instanceof UploadCancelledError) {\n upload2.status = Status.CANCELLED;\n reject(new UploadCancelledError(error));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(t(\"Failed to upload the file\"));\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n this._jobQueue.onIdle().then(() => this.reset());\n return upload2;\n });\n return promise;\n }\n /**\n * Create modification time headers if valid value is available.\n * It can be invalid on Android devices if SD cards with NTFS / FAT are used,\n * as those files might use the NT epoch for time so the value will be negative.\n *\n * @param file The file to upload\n */\n _mtimeHeader(file) {\n const mtime = Math.floor(file.lastModified / 1e3);\n if (mtime > 0) {\n return { \"X-OC-Mtime\": mtime };\n }\n return {};\n }\n}\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (forceRecreate || window._nc_uploader === void 0) {\n window._nc_uploader = new Uploader(isPublic);\n }\n return window._nc_uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\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}\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-DuPiUBHl.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 showInvalidFilenameDialog(error) {\n const InvalidFilenameDialog = defineAsyncComponent(() => import(\"./InvalidFilenameDialog-BM2VDeLo.mjs\"));\n const { promise, reject, resolve } = Promise.withResolvers();\n spawnDialog(\n InvalidFilenameDialog,\n {\n error,\n validateFilename\n },\n (...rest) => {\n const [{ skip, rename }] = rest;\n if (skip) {\n resolve(false);\n } else if (rename) {\n resolve(rename);\n } else {\n reject();\n }\n }\n );\n return promise;\n}\n/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nfunction uploadConflictHandler(contentsCallback) {\n return async (nodes, path) => {\n try {\n const content = await contentsCallback(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 = [\n ...nodes.filter((node) => !conflicts.includes(node)),\n ...selected,\n ...renamed\n ];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n try {\n validateFilename(file.name);\n filesToUpload.push(file);\n } catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n logger.error(`Unexpected error while validating ${file.name}`, { error });\n throw error;\n }\n let newName = await showInvalidFilenameDialog(error);\n if (newName !== false) {\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n }\n if (filesToUpload.length === 0 && nodes.length > 0) {\n const folder = basename(path);\n showInfo(\n folder ? t('Upload of \"{folder}\" has been skipped', { folder }) : t(\"Upload has been skipped\")\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}\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 (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\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);\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);\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);\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);\nconst IconUpload = __component__$1.exports;\nconst _sfc_main = defineComponent({\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 /**\n * Allow to disable the \"new\"-menu for this UploadPicker instance\n */\n noMenu: {\n type: Boolean,\n default: false\n },\n /**\n * Allow to disable the button label\n */\n noLabel: {\n type: Boolean,\n default: false\n },\n /**\n * Make the \"New\"-button primary color.\n */\n primary: {\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 /**\n * Overwrite forbidden characters (by default the capabilities of the server are used)\n * @deprecated Deprecated and will be removed in the next major version\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 newFileMenuEntries: [],\n openedMenu: false,\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 queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue.some((upload2) => upload2.status === Status.FAILED);\n },\n isAssembling() {\n return this.queue.some((upload2) => upload2.status === Status.ASSEMBLING);\n },\n isUploading() {\n return this.queue.some((upload2) => upload2.status !== Status.CANCELLED);\n },\n isOnlyAssembling() {\n return this.isAssembling && this.queue.every((upload2) => (\n // ignore empty uploads or meta uploads\n upload2.size === 0 || upload2.status === Status.ASSEMBLING || upload2.status === Status.FINISHED\n ));\n },\n isPaused() {\n return this.uploadManager.info?.status === UploaderStatus.PAUSED;\n },\n buttonLabel() {\n return this.noMenu ? t(\"Upload\") : t(\"New\");\n },\n haveMenu() {\n return !((this.noMenu || this.newFileMenuEntries.length === 0) && !this.canUploadFolders);\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 destination(destination) {\n this.setDestination(destination);\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 useHotKey(\"u\", this.onKeyDown, {\n stop: true,\n prevent: true,\n shift: true\n });\n useHotKey(\"Escape\", this.onKeyDown, {\n stop: true,\n prevent: true\n });\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n etaTimeAndSpeed() {\n const speed = this.uploadManager.eta.speedReadable;\n if (speed) {\n return `${this.uploadManager.eta.timeReadable} (${speed})`;\n }\n return this.uploadManager.eta.timeReadable;\n },\n /**\n * Handle clicking a new-menu entry\n * @param entry The entry that was clicked\n */\n async onClick(entry) {\n entry.handler(\n this.destination,\n await this.getContent().catch(() => [])\n );\n },\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 * Start uploading\n */\n async onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n try {\n await this.uploadManager.batchUpload(\"\", files, uploadConflictHandler(this.getContent));\n } catch (error) {\n logger.debug(\"Error while uploading\", { error });\n } finally {\n this.resetForm();\n }\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 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.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n },\n onKeyDown(event) {\n if (event.key === \"u\") {\n if (this.haveMenu) {\n this.openedMenu = true;\n return;\n }\n this.onTriggerPick();\n }\n if (event.key === \"Escape\" && this.openedMenu) {\n this.openedMenu = false;\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.haveMenu ? _c(\"NcButton\", { attrs: { \"aria-label\": _vm.buttonLabel, \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"type\": _vm.primary ? \"primary\" : \"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 }, !_vm.isUploading ? { key: \"default\", fn: function() {\n return [_vm._v(\" \" + _vm._s(_vm.buttonLabel) + \" \")];\n }, proxy: true } : null], null, true) }) : _c(\"NcActions\", { attrs: { \"aria-label\": _vm.buttonLabel, \"menu-name\": _vm.noLabel ? void 0 : _vm.buttonLabel, \"open\": _vm.openedMenu, \"type\": _vm.primary ? \"primary\" : \"secondary\" }, on: { \"update:open\": function($event) {\n _vm.openedMenu = $event;\n } }, 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\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"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\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-folder\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 931184598) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), !_vm.noMenu ? _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, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\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.noMenu && _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, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\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.noMenu && _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesOther, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\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, \"data-cy-upload-picker-progress\": \"\", \"error\": _vm.hasFailure, \"value\": _vm.uploadManager.eta.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId, \"data-cy-upload-picker-progress-label\": \"\" } }, [_vm.isPaused ? _c(\"span\", [_vm._v(\" \" + _vm._s(_vm.t(\"paused\")) + \" \")]) : _vm.isOnlyAssembling ? _c(\"span\", [_vm._v(\" \" + _vm._s(_vm.t(\"assembling\")) + \" \")]) : _c(\"span\", { attrs: { \"title\": _vm.etaTimeAndSpeed() } }, [_vm._v(\" \" + _vm._s(_vm.uploadManager.eta.timeReadable) + \" \"), _vm.uploadManager.eta.speedReadable && _vm.uploadManager.eta.time >= 60 ? _c(\"span\", [_vm._v(\" (\" + _vm._s(_vm.uploadManager.eta.speedReadable) + \") \")]) : _vm._e()])])], 1), _vm.isUploading && !_vm.isOnlyAssembling ? _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 \"a66c1264\"\n);\nconst UploadPicker = __component__.exports;\nexport {\n EtaStatus as E,\n Status as S,\n Upload as U,\n isFileSystemFileEntry as a,\n n as b,\n Uploader as c,\n UploaderStatus as d,\n getConflicts as e,\n uploadConflictHandler as f,\n getUploader as g,\n hasConflict as h,\n isFileSystemEntry as i,\n UploadPicker as j,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n//# sourceMappingURL=index-DPkUyJ8g.mjs.map\n"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","uploads","Set","views_FilesViewFileDropEmptyContentvue_type_script_setup_true_lang_ts","_defineComponent","__name","props","foldername","setup","__props","disclaimer","loadState","shareLabel","shareNote","name","t","showDialog","ref","uploadDestination","getUploader","destination","addNotifier","upload","status","UploadStatus","FINISHED","file","add","__sfc","getSortedUploads","sort","a","b","localeCompare","svgCloudUpload","l10n_dist","Tl","UploadPicker","index_DPkUyJ8g","j","NcButton","A","NcDialog","NcEmptyContent","NcIconSvgWrapper","NcNoteCard","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","FilesViewFileDropEmptyContentvue_type_style_index_0_id_994fb45e_prod_scoped_true_lang_scss","locals","FilesViewFileDropEmptyContent","_vm","this","_c","_self","_setup","_setupProxy","staticClass","attrs","scopedSlots","_u","key","fn","svg","proxy","_v","_s","_e","length","type","_l","variant","on","click","$event","open","message","content","multiple","gtBuilder","_nextcloud_l10n_gettext__WEBPACK_IMPORTED_MODULE_10__","$","detectLocale","locale","json","charset","headers","Language","translations","msgid","comments","translator","msgstr","Add","paused","msgid_plural","extracted","assembling","Cancel","Continue","New","Rename","Skip","Upload","map","data","addTranslation","gt","build","n","ngettext","gettext","UploadCancelledError","Error","constructor","cause","super","logger","_nextcloud_logger__WEBPACK_IMPORTED_MODULE_13__","YK","setApp","detectUser","async","uploadData","url","uploadData2","uploadOptions","onUploadProgress","onUploadRetry","retries","Blob","destinationFile","Destination","_nextcloud_axios__WEBPACK_IMPORTED_MODULE_7__","Ay","request","method","signal","retryDelay","retryCount","error","axios_retry__WEBPACK_IMPORTED_MODULE_12__","Nv","retryCondition","Gp","onRetry","getChunk","start","size","Promise","resolve","slice","getMaxChunksSize","fileSize","maxChunkSize","window","OC","appConfig","files","max_chunk_size","Number","minimumChunkSize","Math","max","ceil","Status","Status2","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","source","chunked","chunks","min","AbortController","isChunked","startTime","response","uploaded","Date","getTime","cancel","abort","isFileSystemFileEntry","o","FileSystemFileEntry","Directory","File","_originalName","_path","_children","path","_nextcloud_paths__WEBPACK_IMPORTED_MODULE_4__","P8","lastModified","Map","children","reduce","sum","latest","originalName","Array","from","values","webkitRelativePath","getChild","get","addChildren","addChild","rootPath","reject","FileSystemDirectoryEntry","reader","createReader","entries","readEntries","child","set","filePath","includes","startsWith","relPath","base","indexOf","has","Eta","typescript_event_target__WEBPACK_IMPORTED_MODULE_14__","m","_done","_total","_progress","_elapsedTime","_speed","_eta","Infinity","_cutoffTime","resume","total","update","cutoffTime","done","deltaDone","deltaTime","now","historyNeeded","alpha","filtered","round","eta","dispatchTypedEvent","CustomEvent","cancelable","reset","pause","progress","time","timeReadable","seconds","hours","String","floor","padStart","minutes","speed","speedReadable","_nextcloud_files__WEBPACK_IMPORTED_MODULE_3__","v7","UploaderStatus","UploaderStatus2","Uploader","_destinationFolder","_isPublic","_customHeaders","_uploadQueue","_jobQueue","p_queue__WEBPACK_IMPORTED_MODULE_9__","concurrency","_nextcloud_capabilities__WEBPACK_IMPORTED_MODULE_6__","F","chunked_upload","max_parallel_count","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","PY","lJ","owner","user","_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__","HW","uid","vd","permissions","aX","ALL","root","debug","maxChunksSize","folder","pt","Folder","customHeaders","structuredClone","setCustomHeader","value","deleteCustomerHeader","queue","splice","clear","updateStats","info","upload2","partialSum","pending","find","INITIALIZED","UPLOADING","ASSEMBLING","notifier","_notifyAll","warn","batchUpload","callback","files2","p_cancelable__WEBPACK_IMPORTED_MODULE_8__","onCancel","rootFolder","target","replace","client","H4","promise","uploadDirectory","FZ","CANCELLED","FAILED","createDirectory","directory","folderPath","path__WEBPACK_IMPORTED_MODULE_5__","normalize","currentUpload","addEventListener","selectedForUpload","directories","forEach","at","node","all","flat","e","fileHandle","destinationPath","origin","URL","encodedDestinationFile","O0","resolve2","supportsPublicChunking","dav","public_shares_chunking","disabledChunkUpload","blob","bytes","_mtimeHeader","tempUrl","chunksWorkspace","_nextcloud_router__WEBPACK_IMPORTED_MODULE_11__","$_","_nextcloud_sharing_public__WEBPACK_IMPORTED_MODULE_1__","G","dC","random","toString","join","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","request2","chunkBytes","progressBytes","then","catch","onIdle","mtime","f","forceRecreate","_nc_uploader","showInvalidFilenameDialog","InvalidFilenameDialog","vue__WEBPACK_IMPORTED_MODULE_15__","$V","__webpack_require__","withResolvers","_nextcloud_vue_functions_dialog__WEBPACK_IMPORTED_MODULE_17__","S","validateFilename","KT","rest","skip","rename","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","render","_compiled","_scopeId","exports","IconCancel","emits","title","fillColor","default","_b","role","$emit","$attrs","fill","width","height","viewBox","d","IconFolderUpload","IconPlus","IconUpload","pM","components","NcActionButton","_nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_19__","NcActionCaption","_nextcloud_vue_dist_Components_NcActionCaption_js__WEBPACK_IMPORTED_MODULE_20__","NcActionSeparator","_nextcloud_vue_dist_Components_NcActionSeparator_js__WEBPACK_IMPORTED_MODULE_21__","NcActions","_nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_22__","_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_23__","_nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_24__","NcProgressBar","_nextcloud_vue_dist_Components_NcProgressBar_js__WEBPACK_IMPORTED_MODULE_25__","accept","disabled","Boolean","noMenu","noLabel","primary","allowFolders","Function","forbiddenCharacters","progressTimeId","newFileMenuEntries","openedMenu","uploadManager","computed","menuEntriesUpload","filter","entry","category","a7","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","document","createElement","hasFailure","some","isAssembling","isUploading","isOnlyAssembling","every","isPaused","PAUSED","buttonLabel","haveMenu","watch","immediate","handler","setDestination","beforeMount","onUploadCompletion","_nextcloud_vue_dist_Composables_useHotKey_js__WEBPACK_IMPORTED_MODULE_18__","C","onKeyDown","stop","prevent","shift","methods","etaTimeAndSpeed","onClick","getContent","onTriggerPick","uploadFolders","input","$refs","webkitdirectory","$nextTick","isArray","onPick","contentsCallback","nodes","conflicts","contentNames","basename","getConflicts","selected","renamed","dirname","ConflictPicker","picker","h","recursiveUpload","recursive","submit","results","$destroy","$el","parentNode","removeChild","$mount","body","appendChild","openConflictPicker","filesToUpload","di","newName","E6","Object","defineProperty","_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_16__","cf","I9","resetForm","form","m1","event","class","icon","iconClass","iconSvgInline","displayName","directives","rawName","expression","change","FileSystemEntry"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/8192-8192.js.map.license b/dist/8192-8192.js.map.license deleted file mode 120000 index 03e9b3433275b..0000000000000 --- a/dist/8192-8192.js.map.license +++ /dev/null @@ -1 +0,0 @@ -8192-8192.js.license \ No newline at end of file diff --git a/dist/8625-8625.js b/dist/8625-8625.js new file mode 100644 index 0000000000000..763fec3cc691c --- /dev/null +++ b/dist/8625-8625.js @@ -0,0 +1,2 @@ +"use strict";(globalThis.webpackChunknextcloud_ui_legacy||=[]).push([[8625],{22785(e,t,n){var a=n(71354),s=n.n(a),r=n(76314),p=n.n(r)()(s());p.push([e.id,".search-empty-view__input[data-v-4e4bf1e2]{flex:0 1;min-width:min(400px,50vw)}.search-empty-view__wrapper[data-v-4e4bf1e2]{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline}","",{version:3,sources:["webpack://./apps/files/src/views/SearchEmptyView.vue"],names:[],mappings:"AAEC,2CACC,QAAA,CACA,yBAAA,CAGD,6CACC,YAAA,CACA,cAAA,CACA,QAAA,CACA,oBAAA",sourcesContent:["\n.search-empty-view {\n\t&__input {\n\t\tflex: 0 1;\n\t\tmin-width: min(400px, 50vw);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tgap: 10px;\n\t\talign-items: baseline;\n\t}\n}\n"],sourceRoot:""}]);const i=p;n.d(t,["A",0,i])},8625(e,t,n){n.r(t),n.d(t,{default:()=>E});var a=n(85471),s=n(9165),r=n(53334),p=n(46855),i=n(48943),l=n(6695),c=n(16879),o=n(88140),A=n(78246);const u=(0,a.pM)({__name:"SearchEmptyView",setup(e){const t=(0,A.j)((0,o.u)()),n=(0,p.A)(e=>{t.query=e},500);return{__sfc:!0,searchStore:t,debouncedUpdate:n,mdiMagnifyClose:s.WBH,t:r.t,NcEmptyContent:i.A,NcIconSvgWrapper:l.A,NcInputField:c.A}}});var d=n(85072),y=n.n(d),f=n(97825),m=n.n(f),C=n(77659),_=n.n(C),h=n(55056),v=n.n(h),w=n(10540),x=n.n(w),b=n(41113),g=n.n(b),S=n(22785),N={};N.styleTagTransform=g(),N.setAttributes=v(),N.insert=_().bind(null,"head"),N.domAPI=m(),N.insertStyleElement=x(),y()(S.A,N),S.A&&S.A.locals&&S.A.locals;const E=(0,n(14486).A)(u,function(){var e=this,t=e._self._c,n=e._self._setupProxy;return t(n.NcEmptyContent,{attrs:{name:n.t("files","No search results for “{query}”",{query:n.searchStore.query})},scopedSlots:e._u([{key:"icon",fn:function(){return[t(n.NcIconSvgWrapper,{attrs:{path:n.mdiMagnifyClose}})]},proxy:!0},{key:"action",fn:function(){return[t("div",{staticClass:"search-empty-view__wrapper"},[t(n.NcInputField,{staticClass:"search-empty-view__input",attrs:{label:n.t("files","Search for files"),"model-value":n.searchStore.query,type:"search"},on:{"update:model-value":n.debouncedUpdate}})],1)]},proxy:!0}])})},[],!1,null,"4e4bf1e2",null).exports}}]); +//# sourceMappingURL=8625-8625.js.map?v=b132cc15f4fdaae0422b \ No newline at end of file diff --git a/dist/1035-1035.js.license b/dist/8625-8625.js.license similarity index 100% rename from dist/1035-1035.js.license rename to dist/8625-8625.js.license diff --git a/dist/1035-1035.js.map b/dist/8625-8625.js.map similarity index 62% rename from dist/1035-1035.js.map rename to dist/8625-8625.js.map index 132991aba1311..4358206a51ff6 100644 --- a/dist/1035-1035.js.map +++ b/dist/8625-8625.js.map @@ -1 +1 @@ -{"version":3,"file":"1035-1035.js?v=9b213aa43a77d7abf171","mappings":"6HAGAA,QAA8BC,GAA4BC,KAE1DF,EAAAG,KAAA,CAAAC,EAAAC,GAAA,wLAA+N,IAAOC,QAAA,EAAAC,QAAA,yDAAAC,MAAA,GAAAC,SAAA,4EAAAC,eAAA,kNAA+YC,WAAA,MAErnB,MAAAC,EAAA,+DCPA,qGASA,MCT0QC,GDS7OC,EAAAA,EAAAA,IAAiB,CAC1CC,OAAQ,kBACRC,KAAAA,CAAMC,GACF,MAAMC,GAAcC,EAAAA,EAAAA,IAAeC,EAAAA,EAAAA,MAC7BC,GAAkBC,EAAAA,EAAAA,GAAUC,IAC9BL,EAAYM,MAAQD,GACrB,KACH,MAAO,CAAEE,OAAO,EAAMP,cAAaG,kBAAiBK,gBAAeC,EAAAC,IAAEC,EAACC,EAAAD,EAAEE,eAAcA,EAAAC,EAAEC,iBAAgBA,EAAAD,EAAEE,aAAYA,EAAAA,EAC1H,2IENJC,EAAA,GAEAA,EAAAC,kBAA4BC,IAC5BF,EAAAG,cAAwBC,IACxBJ,EAAAK,OAAiBC,IAAAC,KAAa,aAC9BP,EAAAQ,OAAiBC,IACjBT,EAAAU,mBAA6BC,IAEhBC,IAAIC,EAAAhB,EAAOG,GAKFa,EAAAhB,GAAWgB,EAAAhB,EAAOiB,QAAUD,EAAAhB,EAAOiB,OCLzD,MAAAC,GAXgB,WAAAlB,GACdnB,EHTW,WAAkB,IAAIsC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAGE,EAAOJ,EAAIG,MAAME,YAAY,OAAOH,EAAGE,EAAOxB,eAAe,CAAC0B,MAAM,CAACC,KAAOH,EAAO1B,EAAE,QAAS,kCAAmC,CAAEL,MAAO+B,EAAOrC,YAAYM,SAAUmC,YAAYR,EAAIS,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACT,EAAGE,EAAOtB,iBAAiB,CAACwB,MAAM,CAACM,KAAOR,EAAO7B,mBAAmB,EAAEsC,OAAM,GAAM,CAACH,IAAI,SAASC,GAAG,WAAW,MAAO,CAACT,EAAG,MAAM,CAACY,YAAY,8BAA8B,CAACZ,EAAGE,EAAOrB,aAAa,CAAC+B,YAAY,2BAA2BR,MAAM,CAACS,MAAQX,EAAO1B,EAAE,QAAS,oBAAoB,cAAc0B,EAAOrC,YAAYM,MAAM2C,KAAO,UAAUC,GAAG,CAAC,qBAAqBb,EAAOlC,oBAAoB,GAAG,EAAE2C,OAAM,MAC/qB,EACsB,IGUtB,EACA,KACA,WACA","sources":["webpack:///nextcloud/apps/files/src/views/SearchEmptyView.vue?vue&type=style&index=0&id=4e4bf1e2&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/SearchEmptyView.vue","webpack:///nextcloud/apps/files/src/views/SearchEmptyView.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/files/src/views/SearchEmptyView.vue?cc34","webpack://nextcloud/./apps/files/src/views/SearchEmptyView.vue?f9fe"],"sourcesContent":["// 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, `.search-empty-view__input[data-v-4e4bf1e2]{flex:0 1;min-width:min(400px,50vw)}.search-empty-view__wrapper[data-v-4e4bf1e2]{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/SearchEmptyView.vue\"],\"names\":[],\"mappings\":\"AAEC,2CACC,QAAA,CACA,yBAAA,CAGD,6CACC,YAAA,CACA,cAAA,CACA,QAAA,CACA,oBAAA\",\"sourcesContent\":[\"\\n.search-empty-view {\\n\\t&__input {\\n\\t\\tflex: 0 1;\\n\\t\\tmin-width: min(400px, 50vw);\\n\\t}\\n\\n\\t&__wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 10px;\\n\\t\\talign-items: baseline;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcEmptyContent,{attrs:{\"name\":_setup.t('files', 'No search results for “{query}”', { query: _setup.searchStore.query })},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiMagnifyClose}})]},proxy:true},{key:\"action\",fn:function(){return [_c('div',{staticClass:\"search-empty-view__wrapper\"},[_c(_setup.NcInputField,{staticClass:\"search-empty-view__input\",attrs:{\"label\":_setup.t('files', 'Search for files'),\"model-value\":_setup.searchStore.query,\"type\":\"search\"},on:{\"update:model-value\":_setup.debouncedUpdate}})],1)]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchEmptyView.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchEmptyView.vue?vue&type=script&setup=true&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!./SearchEmptyView.vue?vue&type=style&index=0&id=4e4bf1e2&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SearchEmptyView.vue?vue&type=style&index=0&id=4e4bf1e2&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchEmptyView.vue?vue&type=template&id=4e4bf1e2&scoped=true\"\nimport script from \"./SearchEmptyView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SearchEmptyView.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./SearchEmptyView.vue?vue&type=style&index=0&id=4e4bf1e2&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 \"4e4bf1e2\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","views_SearchEmptyViewvue_type_script_setup_true_lang_ts","_defineComponent","__name","setup","__props","searchStore","useSearchStore","getPinia","debouncedUpdate","debounce","value","query","__sfc","mdiMagnifyClose","mdi","WBH","t","dist","NcEmptyContent","A","NcIconSvgWrapper","NcInputField","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","SearchEmptyViewvue_type_style_index_0_id_4e4bf1e2_prod_scoped_true_lang_scss","locals","SearchEmptyView","_vm","this","_c","_self","_setup","_setupProxy","attrs","name","scopedSlots","_u","key","fn","path","proxy","staticClass","label","type","on"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"8625-8625.js?v=1ca7e8dc52ad4dd57a46","mappings":"6HAGAA,QAA8BC,GAA4BC,KAE1DF,EAAAG,KAAA,CAAAC,EAAAC,GAAA,wLAA+N,IAAOC,QAAA,EAAAC,QAAA,yDAAAC,MAAA,GAAAC,SAAA,4EAAAC,eAAA,kNAA+YC,WAAA,MAErnB,MAAAC,EAAA,8DCPA,qGASA,MCT0QC,GDS7OC,EAAAA,EAAAA,IAAiB,CAC1CC,OAAQ,kBACRC,KAAAA,CAAMC,GACF,MAAMC,GAAcC,EAAAA,EAAAA,IAAeC,EAAAA,EAAAA,MAC7BC,GAAkBC,EAAAA,EAAAA,GAAUC,IAC9BL,EAAYM,MAAQD,GACrB,KACH,MAAO,CAAEE,OAAO,EAAMP,cAAaG,kBAAiBK,gBAAeC,EAAAC,IAAEC,EAACC,EAAAD,EAAEE,eAAcA,EAAAC,EAAEC,iBAAgBA,EAAAD,EAAEE,aAAYA,EAAAA,EAC1H,2IENJC,EAAA,GAEAA,EAAAC,kBAA4BC,IAC5BF,EAAAG,cAAwBC,IACxBJ,EAAAK,OAAiBC,IAAAC,KAAa,aAC9BP,EAAAQ,OAAiBC,IACjBT,EAAAU,mBAA6BC,IAEhBC,IAAIC,EAAAhB,EAAOG,GAKFa,EAAAhB,GAAWgB,EAAAhB,EAAOiB,QAAUD,EAAAhB,EAAOiB,OCLzD,MAAAC,GAXgB,WAAAlB,GACdnB,EHTW,WAAkB,IAAIsC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAGE,EAAOJ,EAAIG,MAAME,YAAY,OAAOH,EAAGE,EAAOxB,eAAe,CAAC0B,MAAM,CAACC,KAAOH,EAAO1B,EAAE,QAAS,kCAAmC,CAAEL,MAAO+B,EAAOrC,YAAYM,SAAUmC,YAAYR,EAAIS,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACT,EAAGE,EAAOtB,iBAAiB,CAACwB,MAAM,CAACM,KAAOR,EAAO7B,mBAAmB,EAAEsC,OAAM,GAAM,CAACH,IAAI,SAASC,GAAG,WAAW,MAAO,CAACT,EAAG,MAAM,CAACY,YAAY,8BAA8B,CAACZ,EAAGE,EAAOrB,aAAa,CAAC+B,YAAY,2BAA2BR,MAAM,CAACS,MAAQX,EAAO1B,EAAE,QAAS,oBAAoB,cAAc0B,EAAOrC,YAAYM,MAAM2C,KAAO,UAAUC,GAAG,CAAC,qBAAqBb,EAAOlC,oBAAoB,GAAG,EAAE2C,OAAM,MAC/qB,EACsB,IGUtB,EACA,KACA,WACA","sources":["webpack:///nextcloud/apps/files/src/views/SearchEmptyView.vue?vue&type=style&index=0&id=4e4bf1e2&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/SearchEmptyView.vue","webpack:///nextcloud/apps/files/src/views/SearchEmptyView.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/files/src/views/SearchEmptyView.vue?553f","webpack://nextcloud/./apps/files/src/views/SearchEmptyView.vue?f9fe"],"sourcesContent":["// 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, `.search-empty-view__input[data-v-4e4bf1e2]{flex:0 1;min-width:min(400px,50vw)}.search-empty-view__wrapper[data-v-4e4bf1e2]{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/SearchEmptyView.vue\"],\"names\":[],\"mappings\":\"AAEC,2CACC,QAAA,CACA,yBAAA,CAGD,6CACC,YAAA,CACA,cAAA,CACA,QAAA,CACA,oBAAA\",\"sourcesContent\":[\"\\n.search-empty-view {\\n\\t&__input {\\n\\t\\tflex: 0 1;\\n\\t\\tmin-width: min(400px, 50vw);\\n\\t}\\n\\n\\t&__wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 10px;\\n\\t\\talign-items: baseline;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcEmptyContent,{attrs:{\"name\":_setup.t('files', 'No search results for “{query}”', { query: _setup.searchStore.query })},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiMagnifyClose}})]},proxy:true},{key:\"action\",fn:function(){return [_c('div',{staticClass:\"search-empty-view__wrapper\"},[_c(_setup.NcInputField,{staticClass:\"search-empty-view__input\",attrs:{\"label\":_setup.t('files', 'Search for files'),\"model-value\":_setup.searchStore.query,\"type\":\"search\"},on:{\"update:model-value\":_setup.debouncedUpdate}})],1)]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchEmptyView.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchEmptyView.vue?vue&type=script&setup=true&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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchEmptyView.vue?vue&type=style&index=0&id=4e4bf1e2&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchEmptyView.vue?vue&type=style&index=0&id=4e4bf1e2&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchEmptyView.vue?vue&type=template&id=4e4bf1e2&scoped=true\"\nimport script from \"./SearchEmptyView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SearchEmptyView.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./SearchEmptyView.vue?vue&type=style&index=0&id=4e4bf1e2&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 \"4e4bf1e2\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","views_SearchEmptyViewvue_type_script_setup_true_lang_ts","_defineComponent","__name","setup","__props","searchStore","useSearchStore","getPinia","debouncedUpdate","debounce","value","query","__sfc","mdiMagnifyClose","mdi","WBH","t","dist","NcEmptyContent","A","NcIconSvgWrapper","NcInputField","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","SearchEmptyViewvue_type_style_index_0_id_4e4bf1e2_prod_scoped_true_lang_scss","locals","SearchEmptyView","_vm","this","_c","_self","_setup","_setupProxy","attrs","name","scopedSlots","_u","key","fn","path","proxy","staticClass","label","type","on"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/8625-8625.js.map.license b/dist/8625-8625.js.map.license new file mode 120000 index 0000000000000..c314b721c1b17 --- /dev/null +++ b/dist/8625-8625.js.map.license @@ -0,0 +1 @@ +8625-8625.js.license \ No newline at end of file diff --git a/dist/9553-9553.js.map.license b/dist/9553-9553.js.map.license deleted file mode 120000 index e532e52802fca..0000000000000 --- a/dist/9553-9553.js.map.license +++ /dev/null @@ -1 +0,0 @@ -9553-9553.js.license \ No newline at end of file diff --git a/dist/core-install.js b/dist/core-install.js index 306ace6714a64..207d1449aafea 100644 --- a/dist/core-install.js +++ b/dist/core-install.js @@ -1,2 +1,2 @@ -(()=>{"use strict";var e={85973(e,t,a){var n,o=a(85471),r=a(81222),s=a(53334),i=a(99418),c=a(74095),l=a(32073),d=a(88289),u=a(48240),f=a(16044),p=a(82182),m=a(71164);function b(e=""){const t=new Set(e),a=parseInt(Math.log2(Math.pow(parseInt(t.size.toString()),e.length)).toFixed(2));return a<16?n.VeryWeak:a<31?n.Weak:a<46?n.Moderate:a<61?n.Strong:a<76?n.VeryStrong:n.ExtremelyStrong}!function(e){e[e.VeryWeak=0]="VeryWeak",e[e.Weak=1]="Weak",e[e.Moderate=2]="Moderate",e[e.Strong=3]="Strong",e[e.VeryStrong=4]="VeryStrong",e[e.ExtremelyStrong=5]="ExtremelyStrong"}(n||(n={}));const g=(0,o.pM)({name:"Setup",components:{IconArrowRight:m.A,NcButton:c.A,NcCheckboxRadioSwitch:l.A,NcLoadingIcon:d.A,NcNoteCard:u.A,NcPasswordField:f.A,NcTextField:p.A},setup:()=>({t:s.t}),data:()=>({config:{},links:{},isValidAutoconfig:!1,loading:!1}),computed:{passwordHelperText(){if(""===this.config?.adminpass)return"";switch(b(this.config?.adminpass)){case n.VeryWeak:return(0,s.t)("core","Password is too weak");case n.Weak:return(0,s.t)("core","Password is weak");case n.Moderate:return(0,s.t)("core","Password is average");case n.Strong:return(0,s.t)("core","Password is strong");case n.VeryStrong:return(0,s.t)("core","Password is very strong");case n.ExtremelyStrong:return(0,s.t)("core","Password is extremely strong")}return(0,s.t)("core","Unknown password strength")},passwordHelperType(){return b(this.config?.adminpass)3?"vertical":"horizontal"},htaccessWarning(){const e=[(0,s.t)("core","Your data directory and files are probably accessible from the internet because the .htaccess file does not work."),(0,s.t)("core","For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}",{linkStart:'',linkEnd:""},{escape:!1})].join("
    ");return i.A.sanitize(e)},errors(){return(this.config?.errors||[]).map(e=>"string"==typeof e?{heading:"",message:e}:""===e.hint?{heading:"",message:e.error}:{heading:e.error,message:e.hint})}},beforeMount(){this.config=(0,r.C)("core","config"),this.links=(0,r.C)("core","links")},mounted(){if(""===this.config.dbtype&&(this.config.dbtype=Object.keys(this.config.databases).at(0)),this.config.hasAutoconfig){const e=this.$refs.form;e.querySelectorAll('input[name="adminlogin"], input[name="adminpass"]').forEach(e=>{e.removeAttribute("required")}),e.checkValidity()&&0===this.config.errors.length?this.isValidAutoconfig=!0:this.isValidAutoconfig=!1,e.querySelectorAll('input[name="adminlogin"], input[name="adminpass"]').forEach(e=>{e.setAttribute("required","true")})}},methods:{async onSubmit(){this.loading=!0}}});var A=a(85072),h=a.n(A),v=a(97825),y=a.n(v),_=a(77659),C=a.n(_),k=a(55056),x=a.n(k),w=a(10540),S=a.n(w),N=a(41113),D=a.n(N),O=a(85325),P={};P.styleTagTransform=D(),P.setAttributes=x(),P.insert=C().bind(null,"head"),P.domAPI=y(),P.insertStyleElement=S(),h()(O.A,P),O.A&&O.A.locals&&O.A.locals;const T=(0,a(14486).A)(g,function(){var e=this,t=e._self._c;return e._self._setupProxy,t("form",{ref:"form",staticClass:"setup-form",class:{"setup-form--loading":e.loading},attrs:{action:"","data-cy-setup-form":"",method:"POST"},on:{submit:e.onSubmit}},[e.config.hasAutoconfig?t("NcNoteCard",{attrs:{heading:e.t("core","Autoconfig file detected"),"data-cy-setup-form-note":"autoconfig",type:"success"}},[e._v("\n\t\t"+e._s(e.t("core","The setup form below is pre-filled with the values from the config file."))+"\n\t")]):e._e(),e._v(" "),!1===e.config.htaccessWorking?t("NcNoteCard",{attrs:{heading:e.t("core","Security warning"),"data-cy-setup-form-note":"htaccess",type:"warning"}},[t("p",{domProps:{innerHTML:e._s(e.htaccessWarning)}})]):e._e(),e._v(" "),e._l(e.errors,function(a,n){return t("NcNoteCard",{key:n,attrs:{heading:a.heading,"data-cy-setup-form-note":"error",type:"error"}},[e._v("\n\t\t"+e._s(a.message)+"\n\t")])}),e._v(" "),t("fieldset",{staticClass:"setup-form__administration"},[t("legend",[e._v(e._s(e.t("core","Create administration account")))]),e._v(" "),t("NcTextField",{attrs:{label:e.t("core","Administration account name"),"data-cy-setup-form-field":"adminlogin",name:"adminlogin",required:""},model:{value:e.config.adminlogin,callback:function(t){e.$set(e.config,"adminlogin",t)},expression:"config.adminlogin"}}),e._v(" "),t("NcPasswordField",{attrs:{label:e.t("core","Administration account password"),"data-cy-setup-form-field":"adminpass",name:"adminpass",required:""},model:{value:e.config.adminpass,callback:function(t){e.$set(e.config,"adminpass",t)},expression:"config.adminpass"}}),e._v(" "),t("NcNoteCard",{directives:[{name:"show",rawName:"v-show",value:""!==e.config.adminpass,expression:"config.adminpass !== ''"}],attrs:{type:e.passwordHelperType}},[e._v("\n\t\t\t"+e._s(e.passwordHelperText)+"\n\t\t")])],1),e._v(" "),t("details",{attrs:{open:!e.isValidAutoconfig,"data-cy-setup-form-advanced-config":""}},[t("summary",[e._v(e._s(e.t("core","Storage & database")))]),e._v(" "),t("fieldset",{staticClass:"setup-form__data-folder"},[t("NcTextField",{attrs:{label:e.t("core","Data folder"),placeholder:e.config.serverRoot+"/data",required:"",autocomplete:"off",autocapitalize:"none","data-cy-setup-form-field":"directory",name:"directory",spellcheck:"false"},model:{value:e.config.directory,callback:function(t){e.$set(e.config,"directory",t)},expression:"config.directory"}})],1),e._v(" "),t("fieldset",{staticClass:"setup-form__database"},[t("legend",[e._v(e._s(e.t("core","Database configuration")))]),e._v(" "),t("fieldset",{staticClass:"setup-form__database-type"},[t("legend",{staticClass:"hidden-visually"},[e._v("\n\t\t\t\t\t"+e._s(e.t("core","Database type"))+"\n\t\t\t\t")]),e._v(" "),t("p",{directives:[{name:"show",rawName:"v-show",value:!e.firstAndOnlyDatabase,expression:"!firstAndOnlyDatabase"}],staticClass:"setup-form__database-type-select",class:`setup-form__database-type-select--${e.DBTypeGroupDirection}`},e._l(e.config.databases,function(a,n){return t("NcCheckboxRadioSwitch",{key:n,attrs:{"button-variant":!0,"data-cy-setup-form-field":`dbtype-${n}`,value:n,"button-variant-grouped":e.DBTypeGroupDirection,name:"dbtype",type:"radio"},model:{value:e.config.dbtype,callback:function(t){e.$set(e.config,"dbtype",t)},expression:"config.dbtype"}},[e._v("\n\t\t\t\t\t\t"+e._s(a)+"\n\t\t\t\t\t")])}),1),e._v(" "),e.firstAndOnlyDatabase?t("NcNoteCard",{attrs:{"data-cy-setup-form-db-note":"single-db",type:"warning"}},[e._v("\n\t\t\t\t\t"+e._s(e.t("core","Only {firstAndOnlyDatabase} is available.",{firstAndOnlyDatabase:e.firstAndOnlyDatabase}))),t("br"),e._v("\n\t\t\t\t\t"+e._s(e.t("core","Install and activate additional PHP modules to choose other database types."))),t("br"),e._v(" "),t("a",{attrs:{href:e.links.adminSourceInstall,target:"_blank",rel:"noreferrer noopener"}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("core","For more details check out the documentation."))+" ↗\n\t\t\t\t\t")])]):e._e(),e._v(" "),"sqlite"===e.config.dbtype?t("NcNoteCard",{attrs:{heading:e.t("core","Performance warning"),"data-cy-setup-form-db-note":"sqlite",type:"warning"}},[e._v("\n\t\t\t\t\t"+e._s(e.t("core","You chose SQLite as database."))),t("br"),e._v("\n\t\t\t\t\t"+e._s(e.t("core","SQLite should only be used for minimal and development instances. For production we recommend a different database backend."))),t("br"),e._v("\n\t\t\t\t\t"+e._s(e.t("core","If you use clients for file syncing, the use of SQLite is highly discouraged."))+"\n\t\t\t\t")]):e._e()],1),e._v(" "),"sqlite"!==e.config.dbtype?t("fieldset",[t("legend",{staticClass:"hidden-visually"},[e._v("\n\t\t\t\t\t"+e._s(e.t("core","Database connection"))+"\n\t\t\t\t")]),e._v(" "),t("NcTextField",{attrs:{label:e.t("core","Database user"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbuser",name:"dbuser",spellcheck:"false",required:""},model:{value:e.config.dbuser,callback:function(t){e.$set(e.config,"dbuser",t)},expression:"config.dbuser"}}),e._v(" "),t("NcPasswordField",{attrs:{label:e.t("core","Database password"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbpass",name:"dbpass",spellcheck:"false",required:""},model:{value:e.config.dbpass,callback:function(t){e.$set(e.config,"dbpass",t)},expression:"config.dbpass"}}),e._v(" "),t("NcTextField",{attrs:{label:e.t("core","Database name"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbname",name:"dbname",pattern:"[0-9a-zA-Z\\$_\\-]+",spellcheck:"false",required:""},model:{value:e.config.dbname,callback:function(t){e.$set(e.config,"dbname",t)},expression:"config.dbname"}}),e._v(" "),"oci"===e.config.dbtype?t("NcTextField",{attrs:{label:e.t("core","Database tablespace"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbtablespace",name:"dbtablespace",spellcheck:"false"},model:{value:e.config.dbtablespace,callback:function(t){e.$set(e.config,"dbtablespace",t)},expression:"config.dbtablespace"}}):e._e(),e._v(" "),t("NcTextField",{attrs:{"helper-text":e.t("core","Please specify the port number along with the host name (e.g., localhost:5432)."),label:e.t("core","Database host"),placeholder:e.t("core","localhost"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbhost",name:"dbhost",spellcheck:"false"},model:{value:e.config.dbhost,callback:function(t){e.$set(e.config,"dbhost",t)},expression:"config.dbhost"}})],1):e._e()])]),e._v(" "),t("NcButton",{staticClass:"setup-form__button",class:{"setup-form__button--loading":e.loading},attrs:{disabled:e.loading,loading:e.loading,wide:!0,alignment:"center-reverse","data-cy-setup-form-submit":"",type:"submit",variant:"primary"},scopedSlots:e._u([{key:"icon",fn:function(){return[e.loading?t("NcLoadingIcon"):t("IconArrowRight")]},proxy:!0}])},[e._v("\n\t\t"+e._s(e.loading?e.t("core","Installing …"):e.t("core","Install"))+"\n\t")]),e._v(" "),t("NcNoteCard",{attrs:{"data-cy-setup-form-note":"help",type:"info"}},[e._v("\n\t\t"+e._s(e.t("core","Need help?"))+"\n\t\t"),t("a",{attrs:{target:"_blank",rel:"noreferrer noopener",href:e.links.adminInstall}},[e._v(e._s(e.t("core","See the documentation"))+" ↗")])])],2)},[],!1,null,null,null).exports;(new(o.Ay.extend(T))).$mount("#content")},85325(e,t,a){var n=a(71354),o=a.n(n),r=a(76314),s=a.n(r)()(o());s.push([e.id,"form{padding:calc(3*var(--default-grid-baseline));color:var(--color-main-text);border-radius:var(--border-radius-container);background-color:var(--color-main-background-blur);box-shadow:0 0 10px var(--color-box-shadow);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);max-width:300px;margin-bottom:30px}form>fieldset:first-child,form>.notecard:first-child{margin-top:0}form>.notecard:last-child{margin-bottom:0}form fieldset,form details{margin-block:1rem}form .setup-form__button:not(.setup-form__button--loading) .material-design-icon{transition:all linear var(--animation-quick)}form .setup-form__button:not(.setup-form__button--loading):hover .material-design-icon{transform:translateX(0.2em)}form .setup-form__database-type-select{display:flex}form .setup-form__database-type-select--vertical{flex-direction:column}code{background-color:var(--color-background-dark);margin-top:1rem;padding:0 .3em;border-radius:var(--border-radius)}.input-field{margin-block-start:1rem !important}.notecard__heading{font-size:inherit !important}","",{version:3,sources:["webpack://./core/src/views/Setup.vue"],names:[],mappings:"AACA,KACC,4CAAA,CACA,4BAAA,CACA,4CAAA,CACA,kDAAA,CACA,2CAAA,CACA,qDAAA,CACA,6CAAA,CAEA,eAAA,CACA,kBAAA,CAEA,qDAEC,YAAA,CAGD,0BACC,eAAA,CAGD,2BAEC,iBAAA,CAIA,iFACC,4CAAA,CAGD,uFACC,2BAAA,CAKF,uCACC,YAAA,CACA,iDACC,qBAAA,CAMH,KACC,6CAAA,CACA,eAAA,CACA,cAAA,CACA,kCAAA,CAID,aACC,kCAAA,CAGD,mBACC,4BAAA",sourcesContent:["\nform {\n\tpadding: calc(3 * var(--default-grid-baseline));\n\tcolor: var(--color-main-text);\n\tborder-radius: var(--border-radius-container);\n\tbackground-color: var(--color-main-background-blur);\n\tbox-shadow: 0 0 10px var(--color-box-shadow);\n\t-webkit-backdrop-filter: var(--filter-background-blur);\n\tbackdrop-filter: var(--filter-background-blur);\n\n\tmax-width: 300px;\n\tmargin-bottom: 30px;\n\n\t> fieldset:first-child,\n\t> .notecard:first-child {\n\t\tmargin-top: 0;\n\t}\n\n\t> .notecard:last-child {\n\t\tmargin-bottom: 0;\n\t}\n\n\tfieldset,\n\tdetails {\n\t\tmargin-block: 1rem;\n\t}\n\n\t.setup-form__button:not(.setup-form__button--loading) {\n\t\t.material-design-icon {\n\t\t\ttransition: all linear var(--animation-quick);\n\t\t}\n\n\t\t&:hover .material-design-icon {\n\t\t\ttransform: translateX(0.2em);\n\t\t}\n\t}\n\n\t// Db select required styling\n\t.setup-form__database-type-select {\n\t\tdisplay: flex;\n\t\t&--vertical {\n\t\t\tflex-direction: column;\n\t\t}\n\t}\n\n}\n\ncode {\n\tbackground-color: var(--color-background-dark);\n\tmargin-top: 1rem;\n\tpadding: 0 0.3em;\n\tborder-radius: var(--border-radius);\n}\n\n// Various overrides\n.input-field {\n\tmargin-block-start: 1rem !important;\n}\n\n.notecard__heading {\n\tfont-size: inherit !important;\n}\n"],sourceRoot:""}]);const i=s;a.d(t,["A",0,i])}};const t={};function a(n){const o=t[n];if(void 0!==o)return o.exports;const r=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(r.exports,r,r.exports,a),r.loaded=!0,r.exports}a.m=e,(()=>{const e=[];a.O=(t,n,o,r)=>{if(n){r=r||0;for(var s=e.length;s>0&&e[s-1][2]>r;s--)e[s]=e[s-1];return void(e[s]=[n,o,r])}let i=1/0;for(s=0;s=r)&&Object.keys(a.O).every(e=>a.O[e](n[c]))?n.splice(c--,1):(l=!1,r{const t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{if(Array.isArray(t))for(var n=0;nPromise.resolve(),a.o=(e,t)=>Object.hasOwn(e,t),a.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),a.j=820,a.dn=e=>{var t=Object.getOwnPropertyDescriptor(e,"name");(!t||!t.writable&&t.configurable)&&Object.defineProperty(e,"name",{value:"default",configurable:!0})},a.cjs=e=>{const t={exports:{}};return e.call(t.exports,t,t.exports),t.exports},(()=>{a.b="undefined"!=typeof document&&document.baseURI||self.location.href;const e={820:0};a.O.j=t=>0===e[t];const t=(t,n)=>{let[o,r,s]=n;var i,c,l=0;if(o.some(t=>0!==e[t])){for(i in r)a.o(r,i)&&(a.m[i]=r[i]);if(s)var d=s(a)}for(t&&t(n);la(85973));n=a.O(n)})(); -//# sourceMappingURL=core-install.js.map?v=7390047fee1f54946ae1 \ No newline at end of file +(()=>{"use strict";var e={2469(e,t,a){var n,o=a(85471),r=a(81222),s=a(53334),i=a(99418),c=a(74095),l=a(32073),d=a(88289),u=a(48240),f=a(16044),p=a(82182),m=a(71164);function b(e=""){const t=new Set(e),a=parseInt(Math.log2(Math.pow(parseInt(t.size.toString()),e.length)).toFixed(2));return a<16?n.VeryWeak:a<31?n.Weak:a<46?n.Moderate:a<61?n.Strong:a<76?n.VeryStrong:n.ExtremelyStrong}!function(e){e[e.VeryWeak=0]="VeryWeak",e[e.Weak=1]="Weak",e[e.Moderate=2]="Moderate",e[e.Strong=3]="Strong",e[e.VeryStrong=4]="VeryStrong",e[e.ExtremelyStrong=5]="ExtremelyStrong"}(n||(n={}));const g=(0,o.pM)({name:"Setup",components:{IconArrowRight:m.A,NcButton:c.A,NcCheckboxRadioSwitch:l.A,NcLoadingIcon:d.A,NcNoteCard:u.A,NcPasswordField:f.A,NcTextField:p.A},setup:()=>({t:s.t}),data:()=>({config:{},links:{},isValidAutoconfig:!1,loading:!1}),computed:{passwordHelperText(){if(""===this.config?.adminpass)return"";switch(b(this.config?.adminpass)){case n.VeryWeak:return(0,s.t)("core","Password is too weak");case n.Weak:return(0,s.t)("core","Password is weak");case n.Moderate:return(0,s.t)("core","Password is average");case n.Strong:return(0,s.t)("core","Password is strong");case n.VeryStrong:return(0,s.t)("core","Password is very strong");case n.ExtremelyStrong:return(0,s.t)("core","Password is extremely strong")}return(0,s.t)("core","Unknown password strength")},passwordHelperType(){return b(this.config?.adminpass)3?"vertical":"horizontal"},htaccessWarning(){const e=[(0,s.t)("core","Your data directory and files are probably accessible from the internet because the .htaccess file does not work."),(0,s.t)("core","For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}",{linkStart:'',linkEnd:""},{escape:!1})].join("
    ");return i.A.sanitize(e)},errors(){return(this.config?.errors||[]).map(e=>"string"==typeof e?{heading:"",message:e}:""===e.hint?{heading:"",message:e.error}:{heading:e.error,message:e.hint})}},beforeMount(){this.config=(0,r.C)("core","config"),this.links=(0,r.C)("core","links")},mounted(){if(""===this.config.dbtype&&(this.config.dbtype=Object.keys(this.config.databases).at(0)),this.config.hasAutoconfig){const e=this.$refs.form;e.querySelectorAll('input[name="adminlogin"], input[name="adminpass"]').forEach(e=>{e.removeAttribute("required")}),e.checkValidity()&&0===this.config.errors.length?this.isValidAutoconfig=!0:this.isValidAutoconfig=!1,e.querySelectorAll('input[name="adminlogin"], input[name="adminpass"]').forEach(e=>{e.setAttribute("required","true")})}},methods:{async onSubmit(){this.loading=!0}}});var A=a(85072),h=a.n(A),v=a(97825),y=a.n(v),_=a(77659),C=a.n(_),k=a(55056),x=a.n(k),w=a(10540),S=a.n(w),N=a(41113),D=a.n(N),O=a(31838),P={};P.styleTagTransform=D(),P.setAttributes=x(),P.insert=C().bind(null,"head"),P.domAPI=y(),P.insertStyleElement=S(),h()(O.A,P),O.A&&O.A.locals&&O.A.locals;const T=(0,a(14486).A)(g,function(){var e=this,t=e._self._c;return e._self._setupProxy,t("form",{ref:"form",staticClass:"setup-form",class:{"setup-form--loading":e.loading},attrs:{action:"","data-cy-setup-form":"",method:"POST"},on:{submit:e.onSubmit}},[e.config.hasAutoconfig?t("NcNoteCard",{attrs:{heading:e.t("core","Autoconfig file detected"),"data-cy-setup-form-note":"autoconfig",type:"success"}},[e._v("\n\t\t"+e._s(e.t("core","The setup form below is pre-filled with the values from the config file."))+"\n\t")]):e._e(),e._v(" "),!1===e.config.htaccessWorking?t("NcNoteCard",{attrs:{heading:e.t("core","Security warning"),"data-cy-setup-form-note":"htaccess",type:"warning"}},[t("p",{domProps:{innerHTML:e._s(e.htaccessWarning)}})]):e._e(),e._v(" "),e._l(e.errors,function(a,n){return t("NcNoteCard",{key:n,attrs:{heading:a.heading,"data-cy-setup-form-note":"error",type:"error"}},[e._v("\n\t\t"+e._s(a.message)+"\n\t")])}),e._v(" "),t("fieldset",{staticClass:"setup-form__administration"},[t("legend",[e._v(e._s(e.t("core","Create administration account")))]),e._v(" "),t("NcTextField",{attrs:{label:e.t("core","Administration account name"),"data-cy-setup-form-field":"adminlogin",name:"adminlogin",required:""},model:{value:e.config.adminlogin,callback:function(t){e.$set(e.config,"adminlogin",t)},expression:"config.adminlogin"}}),e._v(" "),t("NcPasswordField",{attrs:{label:e.t("core","Administration account password"),"data-cy-setup-form-field":"adminpass",name:"adminpass",required:""},model:{value:e.config.adminpass,callback:function(t){e.$set(e.config,"adminpass",t)},expression:"config.adminpass"}}),e._v(" "),t("NcNoteCard",{directives:[{name:"show",rawName:"v-show",value:""!==e.config.adminpass,expression:"config.adminpass !== ''"}],attrs:{type:e.passwordHelperType}},[e._v("\n\t\t\t"+e._s(e.passwordHelperText)+"\n\t\t")])],1),e._v(" "),t("details",{attrs:{open:!e.isValidAutoconfig,"data-cy-setup-form-advanced-config":""}},[t("summary",[e._v(e._s(e.t("core","Storage & database")))]),e._v(" "),t("fieldset",{staticClass:"setup-form__data-folder"},[t("NcTextField",{attrs:{label:e.t("core","Data folder"),placeholder:e.config.serverRoot+"/data",required:"",autocomplete:"off",autocapitalize:"none","data-cy-setup-form-field":"directory",name:"directory",spellcheck:"false"},model:{value:e.config.directory,callback:function(t){e.$set(e.config,"directory",t)},expression:"config.directory"}})],1),e._v(" "),t("fieldset",{staticClass:"setup-form__database"},[t("legend",[e._v(e._s(e.t("core","Database configuration")))]),e._v(" "),t("fieldset",{staticClass:"setup-form__database-type"},[t("legend",{staticClass:"hidden-visually"},[e._v("\n\t\t\t\t\t"+e._s(e.t("core","Database type"))+"\n\t\t\t\t")]),e._v(" "),t("p",{directives:[{name:"show",rawName:"v-show",value:!e.firstAndOnlyDatabase,expression:"!firstAndOnlyDatabase"}],staticClass:"setup-form__database-type-select",class:`setup-form__database-type-select--${e.DBTypeGroupDirection}`},e._l(e.config.databases,function(a,n){return t("NcCheckboxRadioSwitch",{key:n,attrs:{"button-variant":!0,"data-cy-setup-form-field":`dbtype-${n}`,value:n,"button-variant-grouped":e.DBTypeGroupDirection,name:"dbtype",type:"radio"},model:{value:e.config.dbtype,callback:function(t){e.$set(e.config,"dbtype",t)},expression:"config.dbtype"}},[e._v("\n\t\t\t\t\t\t"+e._s(a)+"\n\t\t\t\t\t")])}),1),e._v(" "),e.firstAndOnlyDatabase?t("NcNoteCard",{attrs:{"data-cy-setup-form-db-note":"single-db",type:"warning"}},[e._v("\n\t\t\t\t\t"+e._s(e.t("core","Only {firstAndOnlyDatabase} is available.",{firstAndOnlyDatabase:e.firstAndOnlyDatabase}))),t("br"),e._v("\n\t\t\t\t\t"+e._s(e.t("core","Install and activate additional PHP modules to choose other database types."))),t("br"),e._v(" "),t("a",{attrs:{href:e.links.adminSourceInstall,target:"_blank",rel:"noreferrer noopener"}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("core","For more details check out the documentation."))+" ↗\n\t\t\t\t\t")])]):e._e(),e._v(" "),"sqlite"===e.config.dbtype?t("NcNoteCard",{attrs:{heading:e.t("core","Performance warning"),"data-cy-setup-form-db-note":"sqlite",type:"warning"}},[e._v("\n\t\t\t\t\t"+e._s(e.t("core","You chose SQLite as database."))),t("br"),e._v("\n\t\t\t\t\t"+e._s(e.t("core","SQLite should only be used for minimal and development instances. For production we recommend a different database backend."))),t("br"),e._v("\n\t\t\t\t\t"+e._s(e.t("core","If you use clients for file syncing, the use of SQLite is highly discouraged."))+"\n\t\t\t\t")]):e._e()],1),e._v(" "),"sqlite"!==e.config.dbtype?t("fieldset",[t("legend",{staticClass:"hidden-visually"},[e._v("\n\t\t\t\t\t"+e._s(e.t("core","Database connection"))+"\n\t\t\t\t")]),e._v(" "),t("NcTextField",{attrs:{label:e.t("core","Database user"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbuser",name:"dbuser",spellcheck:"false",required:""},model:{value:e.config.dbuser,callback:function(t){e.$set(e.config,"dbuser",t)},expression:"config.dbuser"}}),e._v(" "),t("NcPasswordField",{attrs:{label:e.t("core","Database password"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbpass",name:"dbpass",spellcheck:"false",required:""},model:{value:e.config.dbpass,callback:function(t){e.$set(e.config,"dbpass",t)},expression:"config.dbpass"}}),e._v(" "),t("NcTextField",{attrs:{label:e.t("core","Database name"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbname",name:"dbname",pattern:"[0-9a-zA-Z\\$_\\-]+",spellcheck:"false",required:""},model:{value:e.config.dbname,callback:function(t){e.$set(e.config,"dbname",t)},expression:"config.dbname"}}),e._v(" "),"oci"===e.config.dbtype?t("NcTextField",{attrs:{label:e.t("core","Database tablespace"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbtablespace",name:"dbtablespace",spellcheck:"false"},model:{value:e.config.dbtablespace,callback:function(t){e.$set(e.config,"dbtablespace",t)},expression:"config.dbtablespace"}}):e._e(),e._v(" "),t("NcTextField",{attrs:{"helper-text":e.t("core","Please specify the port number along with the host name (e.g., localhost:5432)."),label:e.t("core","Database host"),placeholder:e.t("core","localhost"),autocapitalize:"none",autocomplete:"off","data-cy-setup-form-field":"dbhost",name:"dbhost",spellcheck:"false"},model:{value:e.config.dbhost,callback:function(t){e.$set(e.config,"dbhost",t)},expression:"config.dbhost"}})],1):e._e()])]),e._v(" "),t("NcButton",{staticClass:"setup-form__button",class:{"setup-form__button--loading":e.loading},attrs:{disabled:e.loading,loading:e.loading,wide:!0,alignment:"center-reverse","data-cy-setup-form-submit":"",type:"submit",variant:"primary"},scopedSlots:e._u([{key:"icon",fn:function(){return[e.loading?t("NcLoadingIcon"):t("IconArrowRight")]},proxy:!0}])},[e._v("\n\t\t"+e._s(e.loading?e.t("core","Installing …"):e.t("core","Install"))+"\n\t")]),e._v(" "),t("NcNoteCard",{attrs:{"data-cy-setup-form-note":"help",type:"info"}},[e._v("\n\t\t"+e._s(e.t("core","Need help?"))+"\n\t\t"),t("a",{attrs:{target:"_blank",rel:"noreferrer noopener",href:e.links.adminInstall}},[e._v(e._s(e.t("core","See the documentation"))+" ↗")])])],2)},[],!1,null,null,null).exports;(new(o.Ay.extend(T))).$mount("#content")},31838(e,t,a){var n=a(71354),o=a.n(n),r=a(76314),s=a.n(r)()(o());s.push([e.id,"form{padding:calc(3*var(--default-grid-baseline));color:var(--color-main-text);border-radius:var(--border-radius-container);background-color:var(--color-main-background-blur);box-shadow:0 0 10px var(--color-box-shadow);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);max-width:300px;margin-bottom:30px}form>fieldset:first-child,form>.notecard:first-child{margin-top:0}form>.notecard:last-child{margin-bottom:0}form fieldset,form details{margin-block:1rem}form .setup-form__button:not(.setup-form__button--loading) .material-design-icon{transition:all linear var(--animation-quick)}form .setup-form__button:not(.setup-form__button--loading):hover .material-design-icon{transform:translateX(0.2em)}form .setup-form__database-type-select{display:flex}form .setup-form__database-type-select--vertical{flex-direction:column}code{background-color:var(--color-background-dark);margin-top:1rem;padding:0 .3em;border-radius:var(--border-radius)}.input-field{margin-block-start:1rem !important}.notecard__heading{font-size:inherit !important}","",{version:3,sources:["webpack://./core/src/views/Setup.vue"],names:[],mappings:"AACA,KACC,4CAAA,CACA,4BAAA,CACA,4CAAA,CACA,kDAAA,CACA,2CAAA,CACA,qDAAA,CACA,6CAAA,CAEA,eAAA,CACA,kBAAA,CAEA,qDAEC,YAAA,CAGD,0BACC,eAAA,CAGD,2BAEC,iBAAA,CAIA,iFACC,4CAAA,CAGD,uFACC,2BAAA,CAKF,uCACC,YAAA,CACA,iDACC,qBAAA,CAMH,KACC,6CAAA,CACA,eAAA,CACA,cAAA,CACA,kCAAA,CAID,aACC,kCAAA,CAGD,mBACC,4BAAA",sourcesContent:["\nform {\n\tpadding: calc(3 * var(--default-grid-baseline));\n\tcolor: var(--color-main-text);\n\tborder-radius: var(--border-radius-container);\n\tbackground-color: var(--color-main-background-blur);\n\tbox-shadow: 0 0 10px var(--color-box-shadow);\n\t-webkit-backdrop-filter: var(--filter-background-blur);\n\tbackdrop-filter: var(--filter-background-blur);\n\n\tmax-width: 300px;\n\tmargin-bottom: 30px;\n\n\t> fieldset:first-child,\n\t> .notecard:first-child {\n\t\tmargin-top: 0;\n\t}\n\n\t> .notecard:last-child {\n\t\tmargin-bottom: 0;\n\t}\n\n\tfieldset,\n\tdetails {\n\t\tmargin-block: 1rem;\n\t}\n\n\t.setup-form__button:not(.setup-form__button--loading) {\n\t\t.material-design-icon {\n\t\t\ttransition: all linear var(--animation-quick);\n\t\t}\n\n\t\t&:hover .material-design-icon {\n\t\t\ttransform: translateX(0.2em);\n\t\t}\n\t}\n\n\t// Db select required styling\n\t.setup-form__database-type-select {\n\t\tdisplay: flex;\n\t\t&--vertical {\n\t\t\tflex-direction: column;\n\t\t}\n\t}\n\n}\n\ncode {\n\tbackground-color: var(--color-background-dark);\n\tmargin-top: 1rem;\n\tpadding: 0 0.3em;\n\tborder-radius: var(--border-radius);\n}\n\n// Various overrides\n.input-field {\n\tmargin-block-start: 1rem !important;\n}\n\n.notecard__heading {\n\tfont-size: inherit !important;\n}\n"],sourceRoot:""}]);const i=s;a.d(t,["A",0,i])}};const t={};function a(n){const o=t[n];if(void 0!==o)return o.exports;const r=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(r.exports,r,r.exports,a),r.loaded=!0,r.exports}a.m=e,(()=>{const e=[];a.O=(t,n,o,r)=>{if(n){r=r||0;for(var s=e.length;s>0&&e[s-1][2]>r;s--)e[s]=e[s-1];return void(e[s]=[n,o,r])}let i=1/0;for(s=0;s=r)&&Object.keys(a.O).every(e=>a.O[e](n[c]))?n.splice(c--,1):(l=!1,r{const t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{if(Array.isArray(t))for(var n=0;nPromise.resolve(),a.o=(e,t)=>Object.hasOwn(e,t),a.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),a.j=820,a.dn=e=>{var t=Object.getOwnPropertyDescriptor(e,"name");(!t||!t.writable&&t.configurable)&&Object.defineProperty(e,"name",{value:"default",configurable:!0})},a.cjs=e=>{const t={exports:{}};return e.call(t.exports,t,t.exports),t.exports},(()=>{a.b="undefined"!=typeof document&&document.baseURI||self.location.href;const e={820:0};a.O.j=t=>0===e[t];const t=(t,n)=>{let[o,r,s]=n;var i,c,l=0;if(o.some(t=>0!==e[t])){for(i in r)a.o(r,i)&&(a.m[i]=r[i]);if(s)var d=s(a)}for(t&&t(n);la(2469));n=a.O(n)})(); +//# sourceMappingURL=core-install.js.map?v=fee72f4621de0311bfbc \ No newline at end of file diff --git a/dist/core-install.js.map b/dist/core-install.js.map index 3d566bbd76e48..f5668da04105d 100644 --- a/dist/core-install.js.map +++ b/dist/core-install.js.map @@ -1 +1 @@ -{"version":3,"file":"core-install.js?v=f0f94bab09a913f24074","mappings":"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","sources":["webpack:///nextcloud/core/src/views/Setup.vue","webpack:///nextcloud/core/src/views/Setup.vue?vue&type=script&lang=ts","webpack://nextcloud/./core/src/views/Setup.vue?b4e6","webpack://nextcloud/./core/src/views/Setup.vue?1b4a","webpack:///nextcloud/core/src/install.ts","webpack:///nextcloud/core/src/views/Setup.vue?vue&type=style&index=0&id=ae023172&prod&lang=scss","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/chunk loaded","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/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/set anonymous default export name","webpack:///nextcloud/webpack/runtime/wrap commonjs module","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('form',{ref:\"form\",staticClass:\"setup-form\",class:{ 'setup-form--loading': _vm.loading },attrs:{\"action\":\"\",\"data-cy-setup-form\":\"\",\"method\":\"POST\"},on:{\"submit\":_vm.onSubmit}},[(_vm.config.hasAutoconfig)?_c('NcNoteCard',{attrs:{\"heading\":_vm.t('core', 'Autoconfig file detected'),\"data-cy-setup-form-note\":\"autoconfig\",\"type\":\"success\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'The setup form below is pre-filled with the values from the config file.'))+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.config.htaccessWorking === false)?_c('NcNoteCard',{attrs:{\"heading\":_vm.t('core', 'Security warning'),\"data-cy-setup-form-note\":\"htaccess\",\"type\":\"warning\"}},[_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.htaccessWarning)}})]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.errors),function(error,index){return _c('NcNoteCard',{key:index,attrs:{\"heading\":error.heading,\"data-cy-setup-form-note\":\"error\",\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(error.message)+\"\\n\\t\")])}),_vm._v(\" \"),_c('fieldset',{staticClass:\"setup-form__administration\"},[_c('legend',[_vm._v(_vm._s(_vm.t('core', 'Create administration account')))]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Administration account name'),\"data-cy-setup-form-field\":\"adminlogin\",\"name\":\"adminlogin\",\"required\":\"\"},model:{value:(_vm.config.adminlogin),callback:function ($$v) {_vm.$set(_vm.config, \"adminlogin\", $$v)},expression:\"config.adminlogin\"}}),_vm._v(\" \"),_c('NcPasswordField',{attrs:{\"label\":_vm.t('core', 'Administration account password'),\"data-cy-setup-form-field\":\"adminpass\",\"name\":\"adminpass\",\"required\":\"\"},model:{value:(_vm.config.adminpass),callback:function ($$v) {_vm.$set(_vm.config, \"adminpass\", $$v)},expression:\"config.adminpass\"}}),_vm._v(\" \"),_c('NcNoteCard',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.config.adminpass !== ''),expression:\"config.adminpass !== ''\"}],attrs:{\"type\":_vm.passwordHelperType}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.passwordHelperText)+\"\\n\\t\\t\")])],1),_vm._v(\" \"),_c('details',{attrs:{\"open\":!_vm.isValidAutoconfig,\"data-cy-setup-form-advanced-config\":\"\"}},[_c('summary',[_vm._v(_vm._s(_vm.t('core', 'Storage & database')))]),_vm._v(\" \"),_c('fieldset',{staticClass:\"setup-form__data-folder\"},[_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Data folder'),\"placeholder\":_vm.config.serverRoot + '/data',\"required\":\"\",\"autocomplete\":\"off\",\"autocapitalize\":\"none\",\"data-cy-setup-form-field\":\"directory\",\"name\":\"directory\",\"spellcheck\":\"false\"},model:{value:(_vm.config.directory),callback:function ($$v) {_vm.$set(_vm.config, \"directory\", $$v)},expression:\"config.directory\"}})],1),_vm._v(\" \"),_c('fieldset',{staticClass:\"setup-form__database\"},[_c('legend',[_vm._v(_vm._s(_vm.t('core', 'Database configuration')))]),_vm._v(\" \"),_c('fieldset',{staticClass:\"setup-form__database-type\"},[_c('legend',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Database type'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('p',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.firstAndOnlyDatabase),expression:\"!firstAndOnlyDatabase\"}],staticClass:\"setup-form__database-type-select\",class:`setup-form__database-type-select--${_vm.DBTypeGroupDirection}`},_vm._l((_vm.config.databases),function(name,db){return _c('NcCheckboxRadioSwitch',{key:db,attrs:{\"button-variant\":true,\"data-cy-setup-form-field\":`dbtype-${db}`,\"value\":db,\"button-variant-grouped\":_vm.DBTypeGroupDirection,\"name\":\"dbtype\",\"type\":\"radio\"},model:{value:(_vm.config.dbtype),callback:function ($$v) {_vm.$set(_vm.config, \"dbtype\", $$v)},expression:\"config.dbtype\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(name)+\"\\n\\t\\t\\t\\t\\t\")])}),1),_vm._v(\" \"),(_vm.firstAndOnlyDatabase)?_c('NcNoteCard',{attrs:{\"data-cy-setup-form-db-note\":\"single-db\",\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Only {firstAndOnlyDatabase} is available.', { firstAndOnlyDatabase: _vm.firstAndOnlyDatabase }))),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Install and activate additional PHP modules to choose other database types.'))),_c('br'),_vm._v(\" \"),_c('a',{attrs:{\"href\":_vm.links.adminSourceInstall,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'For more details check out the documentation.'))+\" ↗\\n\\t\\t\\t\\t\\t\")])]):_vm._e(),_vm._v(\" \"),(_vm.config.dbtype === 'sqlite')?_c('NcNoteCard',{attrs:{\"heading\":_vm.t('core', 'Performance warning'),\"data-cy-setup-form-db-note\":\"sqlite\",\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'You chose SQLite as database.'))),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'SQLite should only be used for minimal and development instances. For production we recommend a different database backend.'))),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'If you use clients for file syncing, the use of SQLite is highly discouraged.'))+\"\\n\\t\\t\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),(_vm.config.dbtype !== 'sqlite')?_c('fieldset',[_c('legend',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Database connection'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Database user'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbuser\",\"name\":\"dbuser\",\"spellcheck\":\"false\",\"required\":\"\"},model:{value:(_vm.config.dbuser),callback:function ($$v) {_vm.$set(_vm.config, \"dbuser\", $$v)},expression:\"config.dbuser\"}}),_vm._v(\" \"),_c('NcPasswordField',{attrs:{\"label\":_vm.t('core', 'Database password'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbpass\",\"name\":\"dbpass\",\"spellcheck\":\"false\",\"required\":\"\"},model:{value:(_vm.config.dbpass),callback:function ($$v) {_vm.$set(_vm.config, \"dbpass\", $$v)},expression:\"config.dbpass\"}}),_vm._v(\" \"),_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Database name'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbname\",\"name\":\"dbname\",\"pattern\":\"[0-9a-zA-Z\\\\$_\\\\-]+\",\"spellcheck\":\"false\",\"required\":\"\"},model:{value:(_vm.config.dbname),callback:function ($$v) {_vm.$set(_vm.config, \"dbname\", $$v)},expression:\"config.dbname\"}}),_vm._v(\" \"),(_vm.config.dbtype === 'oci')?_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Database tablespace'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbtablespace\",\"name\":\"dbtablespace\",\"spellcheck\":\"false\"},model:{value:(_vm.config.dbtablespace),callback:function ($$v) {_vm.$set(_vm.config, \"dbtablespace\", $$v)},expression:\"config.dbtablespace\"}}):_vm._e(),_vm._v(\" \"),_c('NcTextField',{attrs:{\"helper-text\":_vm.t('core', 'Please specify the port number along with the host name (e.g., localhost:5432).'),\"label\":_vm.t('core', 'Database host'),\"placeholder\":_vm.t('core', 'localhost'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbhost\",\"name\":\"dbhost\",\"spellcheck\":\"false\"},model:{value:(_vm.config.dbhost),callback:function ($$v) {_vm.$set(_vm.config, \"dbhost\", $$v)},expression:\"config.dbhost\"}})],1):_vm._e()])]),_vm._v(\" \"),_c('NcButton',{staticClass:\"setup-form__button\",class:{ 'setup-form__button--loading': _vm.loading },attrs:{\"disabled\":_vm.loading,\"loading\":_vm.loading,\"wide\":true,\"alignment\":\"center-reverse\",\"data-cy-setup-form-submit\":\"\",\"type\":\"submit\",\"variant\":\"primary\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('IconArrowRight')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.loading ? _vm.t('core', 'Installing …') : _vm.t('core', 'Install'))+\"\\n\\t\")]),_vm._v(\" \"),_c('NcNoteCard',{attrs:{\"data-cy-setup-form-note\":\"help\",\"type\":\"info\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Need help?'))+\"\\n\\t\\t\"),_c('a',{attrs:{\"target\":\"_blank\",\"rel\":\"noreferrer noopener\",\"href\":_vm.links.adminInstall}},[_vm._v(_vm._s(_vm.t('core', 'See the documentation'))+\" ↗\")])])],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-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setup.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-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setup.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!./Setup.vue?vue&type=style&index=0&id=ae023172&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./Setup.vue?vue&type=style&index=0&id=ae023172&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Setup.vue?vue&type=template&id=ae023172\"\nimport script from \"./Setup.vue?vue&type=script&lang=ts\"\nexport * from \"./Setup.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Setup.vue?vue&type=style&index=0&id=ae023172&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","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport Setup from './views/Setup.vue';\nconst SetupVue = Vue.extend(Setup);\nnew SetupVue().$mount('#content');\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, `form{padding:calc(3*var(--default-grid-baseline));color:var(--color-main-text);border-radius:var(--border-radius-container);background-color:var(--color-main-background-blur);box-shadow:0 0 10px var(--color-box-shadow);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);max-width:300px;margin-bottom:30px}form>fieldset:first-child,form>.notecard:first-child{margin-top:0}form>.notecard:last-child{margin-bottom:0}form fieldset,form details{margin-block:1rem}form .setup-form__button:not(.setup-form__button--loading) .material-design-icon{transition:all linear var(--animation-quick)}form .setup-form__button:not(.setup-form__button--loading):hover .material-design-icon{transform:translateX(0.2em)}form .setup-form__database-type-select{display:flex}form .setup-form__database-type-select--vertical{flex-direction:column}code{background-color:var(--color-background-dark);margin-top:1rem;padding:0 .3em;border-radius:var(--border-radius)}.input-field{margin-block-start:1rem !important}.notecard__heading{font-size:inherit !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/Setup.vue\"],\"names\":[],\"mappings\":\"AACA,KACC,4CAAA,CACA,4BAAA,CACA,4CAAA,CACA,kDAAA,CACA,2CAAA,CACA,qDAAA,CACA,6CAAA,CAEA,eAAA,CACA,kBAAA,CAEA,qDAEC,YAAA,CAGD,0BACC,eAAA,CAGD,2BAEC,iBAAA,CAIA,iFACC,4CAAA,CAGD,uFACC,2BAAA,CAKF,uCACC,YAAA,CACA,iDACC,qBAAA,CAMH,KACC,6CAAA,CACA,eAAA,CACA,cAAA,CACA,kCAAA,CAID,aACC,kCAAA,CAGD,mBACC,4BAAA\",\"sourcesContent\":[\"\\nform {\\n\\tpadding: calc(3 * var(--default-grid-baseline));\\n\\tcolor: var(--color-main-text);\\n\\tborder-radius: var(--border-radius-container);\\n\\tbackground-color: var(--color-main-background-blur);\\n\\tbox-shadow: 0 0 10px var(--color-box-shadow);\\n\\t-webkit-backdrop-filter: var(--filter-background-blur);\\n\\tbackdrop-filter: var(--filter-background-blur);\\n\\n\\tmax-width: 300px;\\n\\tmargin-bottom: 30px;\\n\\n\\t> fieldset:first-child,\\n\\t> .notecard:first-child {\\n\\t\\tmargin-top: 0;\\n\\t}\\n\\n\\t> .notecard:last-child {\\n\\t\\tmargin-bottom: 0;\\n\\t}\\n\\n\\tfieldset,\\n\\tdetails {\\n\\t\\tmargin-block: 1rem;\\n\\t}\\n\\n\\t.setup-form__button:not(.setup-form__button--loading) {\\n\\t\\t.material-design-icon {\\n\\t\\t\\ttransition: all linear var(--animation-quick);\\n\\t\\t}\\n\\n\\t\\t&:hover .material-design-icon {\\n\\t\\t\\ttransform: translateX(0.2em);\\n\\t\\t}\\n\\t}\\n\\n\\t// Db select required styling\\n\\t.setup-form__database-type-select {\\n\\t\\tdisplay: flex;\\n\\t\\t&--vertical {\\n\\t\\t\\tflex-direction: column;\\n\\t\\t}\\n\\t}\\n\\n}\\n\\ncode {\\n\\tbackground-color: var(--color-background-dark);\\n\\tmargin-top: 1rem;\\n\\tpadding: 0 0.3em;\\n\\tborder-radius: var(--border-radius);\\n}\\n\\n// Various overrides\\n.input-field {\\n\\tmargin-block-start: 1rem !important;\\n}\\n\\n.notecard__heading {\\n\\tfont-size: inherit !important;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst 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\tconst 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","const 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\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet 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\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst 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/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\n\t\t}\n\t}\n};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = () => (Promise.resolve());","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(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 = 820;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","__webpack_require__.b = (typeof document !== 'undefined' && 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\nconst installedChunks = {\n\t820: 0\n};\n\n// no chunk on demand loading\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\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\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\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\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\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(85973)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["PasswordStrength","checkPasswordEntropy","password","uniqueCharacters","Set","entropy","parseInt","Math","log2","pow","size","toString","length","toFixed","VeryWeak","Weak","Moderate","Strong","VeryStrong","ExtremelyStrong","views_Setupvue_type_script_lang_ts","defineComponent","name","components","IconArrowRight","ArrowRight","A","NcButton","NcCheckboxRadioSwitch","NcLoadingIcon","NcNoteCard","NcPasswordField","NcTextField","setup","t","data","config","links","isValidAutoconfig","loading","computed","passwordHelperText","this","adminpass","passwordHelperType","firstAndOnlyDatabase","dbNames","Object","values","databases","DBTypeGroupDirection","keys","htaccessWarning","message","linkStart","adminInstall","linkEnd","escape","join","DomPurify","sanitize","errors","map","error","heading","hint","beforeMount","loadState","mounted","dbtype","at","hasAutoconfig","form","$refs","querySelectorAll","forEach","input","removeAttribute","checkValidity","setAttribute","methods","onSubmit","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","Setupvue_type_style_index_0_id_ae023172_prod_lang_scss","locals","Setup","_vm","_c","_self","_setupProxy","ref","staticClass","class","attrs","action","method","on","submit","type","_v","_s","_e","htaccessWorking","domProps","innerHTML","_l","index","key","label","required","model","value","adminlogin","callback","$$v","$set","expression","directives","rawName","open","placeholder","serverRoot","autocomplete","autocapitalize","spellcheck","directory","db","href","adminSourceInstall","target","rel","dbuser","dbpass","pattern","dbname","dbtablespace","dbhost","disabled","wide","alignment","variant","scopedSlots","_u","fn","proxy","Vue","extend","$mount","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","deferred","O","result","chunkIds","priority","i","notFulfilled","Infinity","fulfilled","j","every","splice","r","n","getter","__esModule","d","a","definition","Array","isArray","binding","o","defineProperty","enumerable","get","e","Promise","resolve","obj","prop","hasOwn","Symbol","toStringTag","nmd","paths","children","dn","x","descriptor","getOwnPropertyDescriptor","writable","configurable","cjs","body","mod","b","document","baseURI","self","location","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","globalThis","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"core-install.js?v=8fe56ee7c6c9c2859577","mappings":"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","sources":["webpack:///nextcloud/core/src/views/Setup.vue","webpack:///nextcloud/core/src/views/Setup.vue?vue&type=script&lang=ts","webpack://nextcloud/./core/src/views/Setup.vue?cba5","webpack://nextcloud/./core/src/views/Setup.vue?1b4a","webpack:///nextcloud/core/src/install.ts","webpack:///nextcloud/core/src/views/Setup.vue?vue&type=style&index=0&id=ae023172&prod&lang=scss","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/chunk loaded","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/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/set anonymous default export name","webpack:///nextcloud/webpack/runtime/wrap commonjs module","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('form',{ref:\"form\",staticClass:\"setup-form\",class:{ 'setup-form--loading': _vm.loading },attrs:{\"action\":\"\",\"data-cy-setup-form\":\"\",\"method\":\"POST\"},on:{\"submit\":_vm.onSubmit}},[(_vm.config.hasAutoconfig)?_c('NcNoteCard',{attrs:{\"heading\":_vm.t('core', 'Autoconfig file detected'),\"data-cy-setup-form-note\":\"autoconfig\",\"type\":\"success\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'The setup form below is pre-filled with the values from the config file.'))+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.config.htaccessWorking === false)?_c('NcNoteCard',{attrs:{\"heading\":_vm.t('core', 'Security warning'),\"data-cy-setup-form-note\":\"htaccess\",\"type\":\"warning\"}},[_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.htaccessWarning)}})]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.errors),function(error,index){return _c('NcNoteCard',{key:index,attrs:{\"heading\":error.heading,\"data-cy-setup-form-note\":\"error\",\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(error.message)+\"\\n\\t\")])}),_vm._v(\" \"),_c('fieldset',{staticClass:\"setup-form__administration\"},[_c('legend',[_vm._v(_vm._s(_vm.t('core', 'Create administration account')))]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Administration account name'),\"data-cy-setup-form-field\":\"adminlogin\",\"name\":\"adminlogin\",\"required\":\"\"},model:{value:(_vm.config.adminlogin),callback:function ($$v) {_vm.$set(_vm.config, \"adminlogin\", $$v)},expression:\"config.adminlogin\"}}),_vm._v(\" \"),_c('NcPasswordField',{attrs:{\"label\":_vm.t('core', 'Administration account password'),\"data-cy-setup-form-field\":\"adminpass\",\"name\":\"adminpass\",\"required\":\"\"},model:{value:(_vm.config.adminpass),callback:function ($$v) {_vm.$set(_vm.config, \"adminpass\", $$v)},expression:\"config.adminpass\"}}),_vm._v(\" \"),_c('NcNoteCard',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.config.adminpass !== ''),expression:\"config.adminpass !== ''\"}],attrs:{\"type\":_vm.passwordHelperType}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.passwordHelperText)+\"\\n\\t\\t\")])],1),_vm._v(\" \"),_c('details',{attrs:{\"open\":!_vm.isValidAutoconfig,\"data-cy-setup-form-advanced-config\":\"\"}},[_c('summary',[_vm._v(_vm._s(_vm.t('core', 'Storage & database')))]),_vm._v(\" \"),_c('fieldset',{staticClass:\"setup-form__data-folder\"},[_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Data folder'),\"placeholder\":_vm.config.serverRoot + '/data',\"required\":\"\",\"autocomplete\":\"off\",\"autocapitalize\":\"none\",\"data-cy-setup-form-field\":\"directory\",\"name\":\"directory\",\"spellcheck\":\"false\"},model:{value:(_vm.config.directory),callback:function ($$v) {_vm.$set(_vm.config, \"directory\", $$v)},expression:\"config.directory\"}})],1),_vm._v(\" \"),_c('fieldset',{staticClass:\"setup-form__database\"},[_c('legend',[_vm._v(_vm._s(_vm.t('core', 'Database configuration')))]),_vm._v(\" \"),_c('fieldset',{staticClass:\"setup-form__database-type\"},[_c('legend',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Database type'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('p',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.firstAndOnlyDatabase),expression:\"!firstAndOnlyDatabase\"}],staticClass:\"setup-form__database-type-select\",class:`setup-form__database-type-select--${_vm.DBTypeGroupDirection}`},_vm._l((_vm.config.databases),function(name,db){return _c('NcCheckboxRadioSwitch',{key:db,attrs:{\"button-variant\":true,\"data-cy-setup-form-field\":`dbtype-${db}`,\"value\":db,\"button-variant-grouped\":_vm.DBTypeGroupDirection,\"name\":\"dbtype\",\"type\":\"radio\"},model:{value:(_vm.config.dbtype),callback:function ($$v) {_vm.$set(_vm.config, \"dbtype\", $$v)},expression:\"config.dbtype\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(name)+\"\\n\\t\\t\\t\\t\\t\")])}),1),_vm._v(\" \"),(_vm.firstAndOnlyDatabase)?_c('NcNoteCard',{attrs:{\"data-cy-setup-form-db-note\":\"single-db\",\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Only {firstAndOnlyDatabase} is available.', { firstAndOnlyDatabase: _vm.firstAndOnlyDatabase }))),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Install and activate additional PHP modules to choose other database types.'))),_c('br'),_vm._v(\" \"),_c('a',{attrs:{\"href\":_vm.links.adminSourceInstall,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'For more details check out the documentation.'))+\" ↗\\n\\t\\t\\t\\t\\t\")])]):_vm._e(),_vm._v(\" \"),(_vm.config.dbtype === 'sqlite')?_c('NcNoteCard',{attrs:{\"heading\":_vm.t('core', 'Performance warning'),\"data-cy-setup-form-db-note\":\"sqlite\",\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'You chose SQLite as database.'))),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'SQLite should only be used for minimal and development instances. For production we recommend a different database backend.'))),_c('br'),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'If you use clients for file syncing, the use of SQLite is highly discouraged.'))+\"\\n\\t\\t\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),(_vm.config.dbtype !== 'sqlite')?_c('fieldset',[_c('legend',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Database connection'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Database user'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbuser\",\"name\":\"dbuser\",\"spellcheck\":\"false\",\"required\":\"\"},model:{value:(_vm.config.dbuser),callback:function ($$v) {_vm.$set(_vm.config, \"dbuser\", $$v)},expression:\"config.dbuser\"}}),_vm._v(\" \"),_c('NcPasswordField',{attrs:{\"label\":_vm.t('core', 'Database password'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbpass\",\"name\":\"dbpass\",\"spellcheck\":\"false\",\"required\":\"\"},model:{value:(_vm.config.dbpass),callback:function ($$v) {_vm.$set(_vm.config, \"dbpass\", $$v)},expression:\"config.dbpass\"}}),_vm._v(\" \"),_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Database name'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbname\",\"name\":\"dbname\",\"pattern\":\"[0-9a-zA-Z\\\\$_\\\\-]+\",\"spellcheck\":\"false\",\"required\":\"\"},model:{value:(_vm.config.dbname),callback:function ($$v) {_vm.$set(_vm.config, \"dbname\", $$v)},expression:\"config.dbname\"}}),_vm._v(\" \"),(_vm.config.dbtype === 'oci')?_c('NcTextField',{attrs:{\"label\":_vm.t('core', 'Database tablespace'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbtablespace\",\"name\":\"dbtablespace\",\"spellcheck\":\"false\"},model:{value:(_vm.config.dbtablespace),callback:function ($$v) {_vm.$set(_vm.config, \"dbtablespace\", $$v)},expression:\"config.dbtablespace\"}}):_vm._e(),_vm._v(\" \"),_c('NcTextField',{attrs:{\"helper-text\":_vm.t('core', 'Please specify the port number along with the host name (e.g., localhost:5432).'),\"label\":_vm.t('core', 'Database host'),\"placeholder\":_vm.t('core', 'localhost'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"data-cy-setup-form-field\":\"dbhost\",\"name\":\"dbhost\",\"spellcheck\":\"false\"},model:{value:(_vm.config.dbhost),callback:function ($$v) {_vm.$set(_vm.config, \"dbhost\", $$v)},expression:\"config.dbhost\"}})],1):_vm._e()])]),_vm._v(\" \"),_c('NcButton',{staticClass:\"setup-form__button\",class:{ 'setup-form__button--loading': _vm.loading },attrs:{\"disabled\":_vm.loading,\"loading\":_vm.loading,\"wide\":true,\"alignment\":\"center-reverse\",\"data-cy-setup-form-submit\":\"\",\"type\":\"submit\",\"variant\":\"primary\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('NcLoadingIcon'):_c('IconArrowRight')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.loading ? _vm.t('core', 'Installing …') : _vm.t('core', 'Install'))+\"\\n\\t\")]),_vm._v(\" \"),_c('NcNoteCard',{attrs:{\"data-cy-setup-form-note\":\"help\",\"type\":\"info\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Need help?'))+\"\\n\\t\\t\"),_c('a',{attrs:{\"target\":\"_blank\",\"rel\":\"noreferrer noopener\",\"href\":_vm.links.adminInstall}},[_vm._v(_vm._s(_vm.t('core', 'See the documentation'))+\" ↗\")])])],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-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setup.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-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setup.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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setup.vue?vue&type=style&index=0&id=ae023172&prod&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setup.vue?vue&type=style&index=0&id=ae023172&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Setup.vue?vue&type=template&id=ae023172\"\nimport script from \"./Setup.vue?vue&type=script&lang=ts\"\nexport * from \"./Setup.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Setup.vue?vue&type=style&index=0&id=ae023172&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","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport Setup from './views/Setup.vue';\nconst SetupVue = Vue.extend(Setup);\nnew SetupVue().$mount('#content');\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, `form{padding:calc(3*var(--default-grid-baseline));color:var(--color-main-text);border-radius:var(--border-radius-container);background-color:var(--color-main-background-blur);box-shadow:0 0 10px var(--color-box-shadow);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);max-width:300px;margin-bottom:30px}form>fieldset:first-child,form>.notecard:first-child{margin-top:0}form>.notecard:last-child{margin-bottom:0}form fieldset,form details{margin-block:1rem}form .setup-form__button:not(.setup-form__button--loading) .material-design-icon{transition:all linear var(--animation-quick)}form .setup-form__button:not(.setup-form__button--loading):hover .material-design-icon{transform:translateX(0.2em)}form .setup-form__database-type-select{display:flex}form .setup-form__database-type-select--vertical{flex-direction:column}code{background-color:var(--color-background-dark);margin-top:1rem;padding:0 .3em;border-radius:var(--border-radius)}.input-field{margin-block-start:1rem !important}.notecard__heading{font-size:inherit !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/Setup.vue\"],\"names\":[],\"mappings\":\"AACA,KACC,4CAAA,CACA,4BAAA,CACA,4CAAA,CACA,kDAAA,CACA,2CAAA,CACA,qDAAA,CACA,6CAAA,CAEA,eAAA,CACA,kBAAA,CAEA,qDAEC,YAAA,CAGD,0BACC,eAAA,CAGD,2BAEC,iBAAA,CAIA,iFACC,4CAAA,CAGD,uFACC,2BAAA,CAKF,uCACC,YAAA,CACA,iDACC,qBAAA,CAMH,KACC,6CAAA,CACA,eAAA,CACA,cAAA,CACA,kCAAA,CAID,aACC,kCAAA,CAGD,mBACC,4BAAA\",\"sourcesContent\":[\"\\nform {\\n\\tpadding: calc(3 * var(--default-grid-baseline));\\n\\tcolor: var(--color-main-text);\\n\\tborder-radius: var(--border-radius-container);\\n\\tbackground-color: var(--color-main-background-blur);\\n\\tbox-shadow: 0 0 10px var(--color-box-shadow);\\n\\t-webkit-backdrop-filter: var(--filter-background-blur);\\n\\tbackdrop-filter: var(--filter-background-blur);\\n\\n\\tmax-width: 300px;\\n\\tmargin-bottom: 30px;\\n\\n\\t> fieldset:first-child,\\n\\t> .notecard:first-child {\\n\\t\\tmargin-top: 0;\\n\\t}\\n\\n\\t> .notecard:last-child {\\n\\t\\tmargin-bottom: 0;\\n\\t}\\n\\n\\tfieldset,\\n\\tdetails {\\n\\t\\tmargin-block: 1rem;\\n\\t}\\n\\n\\t.setup-form__button:not(.setup-form__button--loading) {\\n\\t\\t.material-design-icon {\\n\\t\\t\\ttransition: all linear var(--animation-quick);\\n\\t\\t}\\n\\n\\t\\t&:hover .material-design-icon {\\n\\t\\t\\ttransform: translateX(0.2em);\\n\\t\\t}\\n\\t}\\n\\n\\t// Db select required styling\\n\\t.setup-form__database-type-select {\\n\\t\\tdisplay: flex;\\n\\t\\t&--vertical {\\n\\t\\t\\tflex-direction: column;\\n\\t\\t}\\n\\t}\\n\\n}\\n\\ncode {\\n\\tbackground-color: var(--color-background-dark);\\n\\tmargin-top: 1rem;\\n\\tpadding: 0 0.3em;\\n\\tborder-radius: var(--border-radius);\\n}\\n\\n// Various overrides\\n.input-field {\\n\\tmargin-block-start: 1rem !important;\\n}\\n\\n.notecard__heading {\\n\\tfont-size: inherit !important;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst 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\tconst 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","const 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\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet 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\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst 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/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\n\t\t}\n\t}\n};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = () => (Promise.resolve());","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(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 = 820;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","__webpack_require__.b = (typeof document !== 'undefined' && 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\nconst installedChunks = {\n\t820: 0\n};\n\n// no chunk on demand loading\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\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\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\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\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\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(2469)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["PasswordStrength","checkPasswordEntropy","password","uniqueCharacters","Set","entropy","parseInt","Math","log2","pow","size","toString","length","toFixed","VeryWeak","Weak","Moderate","Strong","VeryStrong","ExtremelyStrong","views_Setupvue_type_script_lang_ts","defineComponent","name","components","IconArrowRight","ArrowRight","A","NcButton","NcCheckboxRadioSwitch","NcLoadingIcon","NcNoteCard","NcPasswordField","NcTextField","setup","t","data","config","links","isValidAutoconfig","loading","computed","passwordHelperText","this","adminpass","passwordHelperType","firstAndOnlyDatabase","dbNames","Object","values","databases","DBTypeGroupDirection","keys","htaccessWarning","message","linkStart","adminInstall","linkEnd","escape","join","DomPurify","sanitize","errors","map","error","heading","hint","beforeMount","loadState","mounted","dbtype","at","hasAutoconfig","form","$refs","querySelectorAll","forEach","input","removeAttribute","checkValidity","setAttribute","methods","onSubmit","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","Setupvue_type_style_index_0_id_ae023172_prod_lang_scss","locals","Setup","_vm","_c","_self","_setupProxy","ref","staticClass","class","attrs","action","method","on","submit","type","_v","_s","_e","htaccessWorking","domProps","innerHTML","_l","index","key","label","required","model","value","adminlogin","callback","$$v","$set","expression","directives","rawName","open","placeholder","serverRoot","autocomplete","autocapitalize","spellcheck","directory","db","href","adminSourceInstall","target","rel","dbuser","dbpass","pattern","dbname","dbtablespace","dbhost","disabled","wide","alignment","variant","scopedSlots","_u","fn","proxy","Vue","extend","$mount","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","deferred","O","result","chunkIds","priority","i","notFulfilled","Infinity","fulfilled","j","every","splice","r","n","getter","__esModule","d","a","definition","Array","isArray","binding","o","defineProperty","enumerable","get","e","Promise","resolve","obj","prop","hasOwn","Symbol","toStringTag","nmd","paths","children","dn","x","descriptor","getOwnPropertyDescriptor","writable","configurable","cjs","body","mod","b","document","baseURI","self","location","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","globalThis","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/core-legacy-unified-search.js b/dist/core-legacy-unified-search.js index 3ee7b5899a01c..22699fafa9290 100644 --- a/dist/core-legacy-unified-search.js +++ b/dist/core-legacy-unified-search.js @@ -1,2 +1,2 @@ -(()=>{"use strict";var e={50556(e,i,r){var s=r(21777),a=r(53334),o=r(35947),c=r(85471),l=r(85168),d=r(61338),u=r(46855),h=r(57505),A=r(24764),p=r(48943),f=r(2769),g=r(82182);const C={name:"MagnifyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var m=r(14486);const _=(0,m.A)(C,function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon magnify-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},[],!1,null,null,null).exports,b={name:"LegacySearchResult",components:{NcHighlight:r(51550).N},props:{thumbnailUrl:{type:String,default:null},title:{type:String,required:!0},subline:{type:String,default:null},resourceUrl:{type:String,default:null},icon:{type:String,default:""},rounded:{type:Boolean,default:!1},query:{type:String,default:""},focused:{type:Boolean,default:!1}},data(){return{hasValidThumbnail:this.thumbnailUrl&&""!==this.thumbnailUrl.trim(),loaded:!1}},computed:{isIconUrl(){if(this.icon.startsWith("/"))return!0;try{new URL(this.icon)}catch{return!1}return!0}},watch:{thumbnailUrl(){this.hasValidThumbnail=this.thumbnailUrl&&""!==this.thumbnailUrl.trim(),this.loaded=!1}},methods:{reEmitEvent(t){this.$emit(t.type,t)},onError(){this.hasValidThumbnail=!1},onLoad(){this.loaded=!0}}};var v=r(85072),y=r.n(v),x=r(97825),w=r.n(x),k=r(77659),$=r.n(k),S=r(55056),B=r.n(S),D=r(10540),I=r.n(D),q=r(41113),E=r.n(q),L=r(53910),U={};U.styleTagTransform=E(),U.setAttributes=B(),U.insert=$().bind(null,"head"),U.domAPI=w(),U.insertStyleElement=I(),y()(L.A,U),L.A&&L.A.locals&&L.A.locals;const N=(0,m.A)(b,function(){var t=this,e=t._self._c;return e("a",{staticClass:"unified-search__result",class:{"unified-search__result--focused":t.focused},attrs:{href:t.resourceUrl||"#"},on:{click:t.reEmitEvent,focus:t.reEmitEvent}},[e("div",{staticClass:"unified-search__result-icon",class:{"unified-search__result-icon--rounded":t.rounded,"unified-search__result-icon--no-preview":!t.hasValidThumbnail&&!t.loaded,"unified-search__result-icon--with-thumbnail":t.hasValidThumbnail&&t.loaded,[t.icon]:!t.loaded&&!t.isIconUrl},style:{backgroundImage:t.isIconUrl?`url(${t.icon})`:""}},[t.hasValidThumbnail?e("img",{directives:[{name:"show",rawName:"v-show",value:t.loaded,expression:"loaded"}],attrs:{src:t.thumbnailUrl,alt:""},on:{error:t.onError,load:t.onLoad}}):t._e()]),t._v(" "),e("span",{staticClass:"unified-search__result-content"},[e("span",{staticClass:"unified-search__result-line-one",attrs:{title:t.title}},[e("NcHighlight",{attrs:{text:t.title,search:t.query}})],1),t._v(" "),t.subline?e("span",{staticClass:"unified-search__result-line-two",attrs:{title:t.subline}},[t._v(t._s(t.subline))]):t._e()])])},[],!1,null,"2dec9460",null).exports,R={name:"SearchResultPlaceholders",data:()=>({light:null,dark:null}),mounted(){const t=getComputedStyle(document.documentElement);this.dark=t.getPropertyValue("--color-placeholder-dark"),this.light=t.getPropertyValue("--color-placeholder-light")},methods:{randWidth:()=>Math.floor(20*Math.random())+30}};var O=r(35080),P={};P.styleTagTransform=E(),P.setAttributes=B(),P.insert=$().bind(null,"head"),P.domAPI=w(),P.insertStyleElement=I(),y()(O.A,P),O.A&&O.A.locals&&O.A.locals;const T=(0,m.A)(R,function(){var t=this,e=t._self._c;return e("ul",[e("svg",{staticClass:"unified-search__result-placeholder-gradient"},[e("defs",[e("linearGradient",{attrs:{id:"unified-search__result-placeholder-gradient"}},[e("stop",{attrs:{offset:"0%","stop-color":t.light}},[e("animate",{attrs:{attributeName:"stop-color",values:`${t.light}; ${t.light}; ${t.dark}; ${t.dark}; ${t.light}`,dur:"2s",repeatCount:"indefinite"}})]),t._v(" "),e("stop",{attrs:{offset:"100%","stop-color":t.dark}},[e("animate",{attrs:{attributeName:"stop-color",values:`${t.dark}; ${t.light}; ${t.light}; ${t.dark}; ${t.dark}`,dur:"2s",repeatCount:"indefinite"}})])],1)],1)]),t._v(" "),t._l([1,2,3],function(n){return e("li",{key:n},[e("svg",{staticClass:"unified-search__result-placeholder",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"url(#unified-search__result-placeholder-gradient)"}},[e("rect",{staticClass:"unified-search__result-placeholder-icon"}),t._v(" "),e("rect",{staticClass:"unified-search__result-placeholder-line-one"}),t._v(" "),e("rect",{staticClass:"unified-search__result-placeholder-line-two",style:{width:`calc(${t.randWidth()}%)`}})])])})],2)},[],!1,null,"480c8b8e",null).exports,z=null===(F=(0,s.HW)())?(0,o.YK)().setApp("core").build():(0,o.YK)().setApp("core").setUid(F.uid).build();var F;(0,o.YK)().setApp("unified-search").detectUser().build();var j=r(44368),M=r(81222),G=r(63814);const Q=(0,M.C)("unified-search","limit-default"),K=(0,M.C)("unified-search","min-search-length",1),W=(0,M.C)("unified-search","live-search",!0),V=/(^|\s)in:([a-z_-]+)/gi,Y=/(^|\s)-in:([a-z_-]+)/gi;async function H(){try{const{data:t}=await j.Ay.get((0,G.KT)("search/providers"),{params:{from:window.location.pathname.replace("/index.php","")+window.location.search}});if("ocs"in t&&"data"in t.ocs&&Array.isArray(t.ocs.data)&&t.ocs.data.length>0)return t.ocs.data}catch(t){z.error(t)}return[]}function Z({type:t,query:e,cursor:n}){const i=j.Ay.CancelToken.source();return{request:async()=>j.Ay.get((0,G.KT)("search/providers/{type}/search",{type:t}),{cancelToken:i.token,params:{term:e,cursor:n,from:window.location.pathname.replace("/index.php","")+window.location.search}}),cancel:i.cancel}}const J={name:"LegacyUnifiedSearch",components:{Magnify:_,NcActionButton:h.A,NcActions:A.A,NcEmptyContent:p.A,NcHeaderMenu:f.A,SearchResult:N,SearchResultPlaceholders:T,NcTextField:g.A},data:()=>({types:[],cursors:{},limits:{},loading:{},reached:{},requests:[],results:{},query:"",focused:null,triggered:!1,defaultLimit:Q,minSearchLength:K,enableLiveSearch:W,open:!1}),computed:{typesIDs(){return this.types.map(t=>t.id)},typesNames(){return this.types.map(t=>t.name)},typesMap(){return this.types.reduce((t,e)=>(t[e.id]=e.name,t),{})},ariaLabel:()=>t("core","Search"),hasResults(){return 0!==Object.keys(this.results).length},orderedResults(){return this.typesIDs.filter(t=>t in this.results).map(t=>({type:t,list:this.results[t]}))},availableFilters(){return Object.keys(this.results)},usedFiltersIn(){let t;const e=[];for(;null!==(t=V.exec(this.query));)e.push(t[2]);return e},usedFiltersNot(){let t;const e=[];for(;null!==(t=Y.exec(this.query));)e.push(t[2]);return e},validQueryTitle(){return this.triggered?t("core","No results for {query}",{query:this.query}):t("core","Press Enter to start searching")},shortQueryDescription(){return this.isShortQuery?n("core","Please enter {minSearchLength} character or more to search","Please enter {minSearchLength} characters or more to search",this.minSearchLength,{minSearchLength:this.minSearchLength}):""},isShortQuery(){return this.query&&this.query.trim().length!1===t)},isLoading(){return Object.values(this.loading).some(t=>!0===t)}},async created(){this.types=await H(),z.debug("Unified Search initialized with the following providers",this.types)},beforeDestroy(){(0,d.al)("files:navigation:changed",this.onNavigationChange)},mounted(){(0,d.B1)("files:navigation:changed",this.onNavigationChange),OCP.Accessibility.disableKeyboardShortcuts()||document.addEventListener("keydown",t=>{t.ctrlKey&&"KeyF"===t.code&&!this.open?(t.preventDefault(),this.open=!0):t.ctrlKey&&"f"===t.key&&this.open&&(this.open=!1),this.open&&("ArrowDown"===t.key&&this.focusNext(t),"ArrowUp"===t.key&&this.focusPrev(t))})},methods:{async onOpen(){this.types=await H()},onClose(){(0,d.Ic)("nextcloud:unified-search.close")},onNavigationChange(){this.$el?.querySelector?.('form[role="search"]')?.reset?.()},onReset(){(0,d.Ic)("nextcloud:unified-search.reset"),this.logger.debug("Search reset"),this.query="",this.resetState(),this.focusInput()},async resetState(){this.cursors={},this.limits={},this.reached={},this.results={},this.focused=null,this.triggered=!1,await this.cancelPendingRequests()},async cancelPendingRequests(){const t=this.requests.slice(0);this.requests=[],await Promise.all(t.map(t=>t()))},focusInput(){this.$nextTick(()=>{this.$refs.input.focus(),this.$refs.input.select()})},onInputEnter(){this.hasResults?this.getResultsList()[0].click():this.onInput()},async onInput(){if((0,d.Ic)("nextcloud:unified-search.search",{query:this.query}),""===this.query.trim()||this.isShortQuery){for(const t of this.typesIDs)this.$delete(this.results,t);return}let t=this.typesIDs,e=this.query;this.usedFiltersNot.length>0&&(t=this.typesIDs.filter(t=>-1===this.usedFiltersNot.indexOf(t))),this.usedFiltersIn.length>0&&(t=this.typesIDs.filter(t=>this.usedFiltersIn.indexOf(t)>-1)),e=e.replace(V,"").replace(Y,""),await this.resetState(),this.triggered=!0,t.length?(this.$set(this.loading,"all",!0),this.logger.debug(`Searching ${e} in`,t),Promise.all(t.map(async t=>{try{const{request:n,cancel:i}=Z({type:t,query:e});this.requests.push(i);const{data:r}=await n();return r.ocs.data.entries.length>0?this.$set(this.results,t,r.ocs.data.entries):this.$delete(this.results,t),r.ocs.data.cursor?this.$set(this.cursors,t,r.ocs.data.cursor):r.ocs.data.isPaginated||this.$set(this.limits,t,this.defaultLimit),r.ocs.data.entries.length{t.some(t=>2===t)||(this.loading={})})):this.logger.error("No types to search in")},onInputDebounced:W?(0,u.A)(function(t){this.onInput(t)},500):function(){this.triggered=!1},async loadMore(t){if(!this.loading[t]){if(this.cursors[t]){const{request:e,cancel:n}=Z({type:t,query:this.query,cursor:this.cursors[t]});this.requests.push(n);const{data:i}=await e();i.ocs.data.cursor&&this.$set(this.cursors,t,i.ocs.data.cursor),i.ocs.data.entries.length>0&&this.results[t].push(...i.ocs.data.entries),i.ocs.data.entries.length=0&&(this.limits[t]+=this.defaultLimit,this.limits[t]>=this.results[t].length&&this.$set(this.reached,t,!0));null!==this.focused&&this.$nextTick(()=>{this.focusIndex(this.focused)})}},limitIfAny(t,e){return e in this.limits?t.slice(0,this.limits[e]):t},getResultsList(){return this.$el.querySelectorAll(".unified-search__results .unified-search__result")},focusFirst(t){const e=this.getResultsList();e&&e.length>0&&(t&&t.preventDefault(),this.focused=0,this.focusIndex(this.focused))},focusNext(t){if(null===this.focused)return void this.focusFirst(t);const e=this.getResultsList();e&&e.length>0&&this.focused+10&&this.focused>0&&(t.preventDefault(),this.focused--,this.focusIndex(this.focused))},focusIndex(t){const e=this.getResultsList();e&&e[t]&&e[t].focus()},setFocusedIndex(t){const e=t.target,n=[...this.getResultsList()].findIndex(t=>t===e);n>-1&&(this.focused=n)},onClickFilter(t){this.query=`${this.query} ${t}`.replace(/ {2}/g," ").trim(),this.onInput()}}};var X=r(66620),tt={};tt.styleTagTransform=E(),tt.setAttributes=B(),tt.insert=$().bind(null,"head"),tt.domAPI=w(),tt.insertStyleElement=I(),y()(X.A,tt),X.A&&X.A.locals&&X.A.locals;const et=(0,m.A)(J,function(){var t=this,e=t._self._c;return e("NcHeaderMenu",{staticClass:"unified-search",attrs:{id:"unified-search","exclude-click-outside-selectors":[".popover"],open:t.open,"aria-label":t.ariaLabel},on:{"update:open":function(e){t.open=e},open:t.onOpen,close:t.onClose},scopedSlots:t._u([{key:"trigger",fn:function(){return[e("Magnify",{staticClass:"unified-search__trigger-icon",attrs:{size:20}})]},proxy:!0}])},[t._v(" "),e("div",{staticClass:"unified-search__input-wrapper"},[e("div",{staticClass:"unified-search__input-row"},[e("NcTextField",{ref:"input",staticClass:"unified-search__form-input",class:{"unified-search__form-input--with-reset":!!t.query},attrs:{"trailing-button-icon":"close",label:t.ariaLabel,"trailing-button-label":t.t("core","Reset search"),"show-trailing-button":""!==t.query,"aria-describedby":"unified-search-desc",placeholder:t.t("core","Search {types} …",{types:t.typesNames.join(", ")})},on:{"trailing-button-click":t.onReset,input:t.onInputDebounced},model:{value:t.query,callback:function(e){t.query=e},expression:"query"}}),t._v(" "),e("p",{staticClass:"hidden-visually",attrs:{id:"unified-search-desc"}},[t._v("\n\t\t\t\t"+t._s(t.t("core","Search starts once you start typing and results may be reached with the arrow keys"))+"\n\t\t\t")]),t._v(" "),t.availableFilters.length>1?e("NcActions",{staticClass:"unified-search__filters",attrs:{placement:"bottom-end",container:".unified-search__input-wrapper"}},t._l(t.availableFilters,function(n){return e("NcActionButton",{key:n,attrs:{icon:"icon-filter"},on:{click:function(e){return e.stopPropagation(),t.onClickFilter(`in:${n}`)}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Search for {name} only",{name:t.typesMap[n]}))+"\n\t\t\t\t")])}),1):t._e()],1)]),t._v(" "),t.hasResults?t._l(t.orderedResults,function({list:n,type:i},r){return[e("h2",{key:i,staticClass:"unified-search__results-header"},[t._v("\n\t\t\t"+t._s(t.typesMap[i])+"\n\t\t")]),t._v(" "),e("ul",{key:i,staticClass:"unified-search__results",class:`unified-search__results-${i}`,attrs:{"aria-label":t.typesMap[i]}},[t._l(t.limitIfAny(n,i),function(n,i){return e("li",{key:n.resourceUrl},[e("SearchResult",t._b({attrs:{query:t.query,focused:0===t.focused&&0===r&&0===i},on:{focus:t.setFocusedIndex}},"SearchResult",n,!1))],1)}),t._v(" "),e("li",[t.reached[i]?t._e():e("SearchResult",{staticClass:"unified-search__result-more",attrs:{title:t.loading[i]?t.t("core","Loading more results …"):t.t("core","Load more results"),"icon-class":t.loading[i]?"icon-loading-small":""},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.loadMore(i)},focus:t.setFocusedIndex}})],1)],2)]}):[t.isLoading?e("SearchResultPlaceholders"):t.isValidQuery?e("NcEmptyContent",{attrs:{title:t.validQueryTitle},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Magnify")]},proxy:!0}],null,!1,931131664)}):!t.isLoading||t.isShortQuery?e("NcEmptyContent",{attrs:{title:t.t("core","Start typing to search"),description:t.shortQueryDescription},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Magnify")]},proxy:!0}],null,!1,931131664)}):t._e()]],2)},[],!1,null,"4cdce41c",null).exports;r.nc=(0,s.aV)();const nt=(0,o.YK)().setApp("unified-search").detectUser().build();c.Ay.mixin({data:()=>({logger:nt}),methods:{t:a.t,n:a.n}}),new c.Ay({el:"#unified-search",name:"UnifiedSearchRoot",render:t=>t(et)})},53910(t,e,n){var i=n(71354),r=n.n(i),s=n(76314),a=n.n(s)()(r());a.push([t.id,".unified-search__result[data-v-2dec9460]{display:flex;align-items:center;height:44px;padding:10px;border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.unified-search__result--focused[data-v-2dec9460]{background-color:var(--color-background-hover)}.unified-search__result[data-v-2dec9460]:active,.unified-search__result[data-v-2dec9460]:hover,.unified-search__result[data-v-2dec9460]:focus{background-color:var(--color-background-hover);border:2px solid var(--color-border-maxcontrast)}.unified-search__result *[data-v-2dec9460]{cursor:pointer}.unified-search__result-icon[data-v-2dec9460]{overflow:hidden;width:44px;height:44px;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center center;background-size:32px}.unified-search__result-icon--rounded[data-v-2dec9460]{border-radius:22px}.unified-search__result-icon--no-preview[data-v-2dec9460]{background-size:32px}.unified-search__result-icon--with-thumbnail[data-v-2dec9460]{background-size:cover}.unified-search__result-icon--with-thumbnail[data-v-2dec9460]:not(.unified-search__result-icon--rounded){max-width:42px;max-height:42px;border:1px solid var(--color-border)}.unified-search__result-icon img[data-v-2dec9460]{width:100%;height:100%;object-fit:cover;object-position:center}.unified-search__result-icon[data-v-2dec9460],.unified-search__result-actions[data-v-2dec9460]{flex:0 0 44px}.unified-search__result-content[data-v-2dec9460]{display:flex;align-items:center;flex:1 1 100%;flex-wrap:wrap;min-width:0;padding-inline-start:10px}.unified-search__result-line-one[data-v-2dec9460],.unified-search__result-line-two[data-v-2dec9460]{overflow:hidden;flex:1 1 100%;margin:1px 0;white-space:nowrap;text-overflow:ellipsis;color:inherit;font-size:inherit}.unified-search__result-line-two[data-v-2dec9460]{opacity:.7;font-size:var(--default-font-size)}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/LegacySearchResult.vue"],names:[],mappings:"AAMA,yCACC,YAAA,CACA,kBAAA,CACA,WANgB,CAOhB,YANQ,CAOR,8BAAA,CACA,mDAAA,CAEA,kDACC,8CAAA,CAGD,8IAGC,8CAAA,CACA,gDAAA,CAGD,2CACC,cAAA,CAGD,8CACC,eAAA,CACA,UA5Be,CA6Bf,WA7Be,CA8Bf,kCAAA,CACA,2BAAA,CACA,iCAAA,CACA,oBAAA,CACA,uDACC,kBAAA,CAED,0DACC,oBAAA,CAED,8DACC,qBAAA,CAED,yGAEC,cAAA,CACA,eAAA,CACA,oCAAA,CAGD,kDAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA,CAIF,+FAEC,aAAA,CAGD,iDACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,cAAA,CAEA,WAAA,CACA,yBAvEO,CA0ER,oGAEC,eAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,aAAA,CACA,iBAAA,CAED,kDACC,UAAA,CACA,kCAAA",sourcesContent:['\n@use "sass:math";\n\n$clickable-area: 44px;\n$margin: 10px;\n\n.unified-search__result {\n\tdisplay: flex;\n\talign-items: center;\n\theight: $clickable-area;\n\tpadding: $margin;\n\tborder: 2px solid transparent;\n\tborder-radius: var(--border-radius-large) !important;\n\n\t&--focused {\n\t\tbackground-color: var(--color-background-hover);\n\t}\n\n\t&:active,\n\t&:hover,\n\t&:focus {\n\t\tbackground-color: var(--color-background-hover);\n\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t}\n\n\t* {\n\t\tcursor: pointer;\n\t}\n\n\t&-icon {\n\t\toverflow: hidden;\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\tborder-radius: var(--border-radius);\n\t\tbackground-repeat: no-repeat;\n\t\tbackground-position: center center;\n\t\tbackground-size: 32px;\n\t\t&--rounded {\n\t\t\tborder-radius: math.div($clickable-area, 2);\n\t\t}\n\t\t&--no-preview {\n\t\t\tbackground-size: 32px;\n\t\t}\n\t\t&--with-thumbnail {\n\t\t\tbackground-size: cover;\n\t\t}\n\t\t&--with-thumbnail:not(&--rounded) {\n\t\t\t// compensate for border\n\t\t\tmax-width: $clickable-area - 2px;\n\t\t\tmax-height: $clickable-area - 2px;\n\t\t\tborder: 1px solid var(--color-border);\n\t\t}\n\n\t\timg {\n\t\t\t// Make sure to keep ratio\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\n\t\t\tobject-fit: cover;\n\t\t\tobject-position: center;\n\t\t}\n\t}\n\n\t&-icon,\n\t&-actions {\n\t\tflex: 0 0 $clickable-area;\n\t}\n\n\t&-content {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tflex: 1 1 100%;\n\t\tflex-wrap: wrap;\n\t\t// Set to minimum and gro from it\n\t\tmin-width: 0;\n\t\tpadding-inline-start: $margin;\n\t}\n\n\t&-line-one,\n\t&-line-two {\n\t\toverflow: hidden;\n\t\tflex: 1 1 100%;\n\t\tmargin: 1px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\t// Use the same color as the `a`\n\t\tcolor: inherit;\n\t\tfont-size: inherit;\n\t}\n\t&-line-two {\n\t\topacity: .7;\n\t\tfont-size: var(--default-font-size);\n\t}\n}\n\n'],sourceRoot:""}]);const o=a;n.d(e,["A",0,o])},35080(t,e,n){var i=n(71354),r=n.n(i),s=n(76314),a=n.n(s)()(r());a.push([t.id,".unified-search__result-placeholder-gradient[data-v-480c8b8e]{position:fixed;height:0;width:0;z-index:-1}.unified-search__result-placeholder[data-v-480c8b8e]{width:calc(100% - 2*10px);height:44px;margin:10px}.unified-search__result-placeholder-icon[data-v-480c8b8e]{width:44px;height:44px;rx:var(--border-radius);ry:var(--border-radius)}.unified-search__result-placeholder-line-one[data-v-480c8b8e],.unified-search__result-placeholder-line-two[data-v-480c8b8e]{width:calc(100% - 54px);height:1em;x:54px}.unified-search__result-placeholder-line-one[data-v-480c8b8e]{y:5px}.unified-search__result-placeholder-line-two[data-v-480c8b8e]{y:25px}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue"],names:[],mappings:"AAIA,8DACC,cAAA,CACA,QAAA,CACA,OAAA,CACA,UAAA,CAGD,qDACC,yBAAA,CACA,WAZgB,CAahB,WAZQ,CAcR,0DACC,UAhBe,CAiBf,WAjBe,CAkBf,uBAAA,CACA,uBAAA,CAGD,4HAEC,uBAAA,CACA,UAAA,CACA,MAAA,CAGD,8DACC,KAAA,CAGD,8DACC,MAAA",sourcesContent:["\n$clickable-area: 44px;\n$margin: 10px;\n\n.unified-search__result-placeholder-gradient {\n\tposition: fixed;\n\theight: 0;\n\twidth: 0;\n\tz-index: -1;\n}\n\n.unified-search__result-placeholder {\n\twidth: calc(100% - 2 * #{$margin});\n\theight: $clickable-area;\n\tmargin: $margin;\n\n\t&-icon {\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\trx: var(--border-radius);\n\t\try: var(--border-radius);\n\t}\n\n\t&-line-one,\n\t&-line-two {\n\t\twidth: calc(100% - #{$margin + $clickable-area});\n\t\theight: 1em;\n\t\tx: $margin + $clickable-area;\n\t}\n\n\t&-line-one {\n\t\ty: 5px;\n\t}\n\n\t&-line-two {\n\t\ty: 25px;\n\t}\n}\n\n"],sourceRoot:""}]);const o=a;n.d(e,["A",0,o])},66620(t,e,n){var i=n(71354),r=n.n(i),s=n(76314),a=n.n(s)()(r());a.push([t.id,".unified-search__trigger-icon[data-v-4cdce41c]{color:var(--color-background-plain-text) !important}.unified-search__input-wrapper[data-v-4cdce41c]{position:sticky;z-index:2;top:0;display:inline-flex;flex-direction:column;align-items:center;width:100%;background-color:var(--color-main-background)}.unified-search__input-wrapper label[for=unified-search__input][data-v-4cdce41c]{align-self:flex-start;font-weight:bold;font-size:19px;margin-inline-start:13px}.unified-search__input-row[data-v-4cdce41c]{display:flex;width:100%;align-items:center}.unified-search__filters[data-v-4cdce41c]{margin-block:10px;margin-inline:5px 0;padding-top:5px}.unified-search__filters ul[data-v-4cdce41c]{display:inline-flex;justify-content:space-between}.unified-search__form[data-v-4cdce41c]{position:relative;width:100%;margin:10px 0}.unified-search__form[data-v-4cdce41c]::after{inset-inline-start:auto 10px}.unified-search__form-input[data-v-4cdce41c],.unified-search__form-reset[data-v-4cdce41c]{margin:5px}.unified-search__form-input[data-v-4cdce41c]{width:100%;height:34px;padding:10px}.unified-search__form-input[data-v-4cdce41c]:focus,.unified-search__form-input[data-v-4cdce41c]:focus-visible,.unified-search__form-input[data-v-4cdce41c]:active{border-color:2px solid var(--color-main-text) !important;box-shadow:0 0 0 2px var(--color-main-background) !important}.unified-search__form-input[data-v-4cdce41c],.unified-search__form-input[placeholder][data-v-4cdce41c],.unified-search__form-input[data-v-4cdce41c]::placeholder{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.unified-search__form-input[data-v-4cdce41c]::-webkit-search-decoration,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-cancel-button,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-results-button,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-results-decoration{-webkit-appearance:none}.unified-search__form-reset[data-v-4cdce41c],.unified-search__form-submit[data-v-4cdce41c]{position:absolute;top:0;inset-inline-end:4px;width:24px;height:24px;min-height:30px;padding:0;opacity:.5;border:none;background-color:rgba(0,0,0,0);margin-inline-end:0}.unified-search__form-reset[data-v-4cdce41c]:hover,.unified-search__form-reset[data-v-4cdce41c]:focus,.unified-search__form-reset[data-v-4cdce41c]:active,.unified-search__form-submit[data-v-4cdce41c]:hover,.unified-search__form-submit[data-v-4cdce41c]:focus,.unified-search__form-submit[data-v-4cdce41c]:active{opacity:1}.unified-search__form-submit[data-v-4cdce41c]{inset-inline-end:28px}.unified-search__results[data-v-4cdce41c]{display:flex;flex-direction:column;gap:4px}.unified-search__results-header[data-v-4cdce41c]{display:block;margin:10px;margin-bottom:6px;margin-inline-start:13px;color:var(--color-primary-element);font-size:19px;font-weight:bold}.unified-search[data-v-4cdce41c] .unified-search__result-more{color:var(--color-text-maxcontrast)}.unified-search .empty-content[data-v-4cdce41c]{margin:10vh 0}.unified-search .empty-content[data-v-4cdce41c] .empty-content__title{font-weight:normal;font-size:var(--default-font-size);text-align:center}","",{version:3,sources:["webpack://./core/src/views/LegacyUnifiedSearch.vue"],names:[],mappings:"AAQC,+CACC,mDAAA,CAGD,gDACC,eAAA,CAEA,SAAA,CACA,KAAA,CACA,mBAAA,CACA,qBAAA,CACA,kBAAA,CACA,UAAA,CACA,6CAAA,CAEA,iFACC,qBAAA,CACA,gBAAA,CACA,cAAA,CACA,wBAAA,CAIF,4CACC,YAAA,CACA,UAAA,CACA,kBAAA,CAGD,0CACC,iBAnCO,CAoCP,mBAAA,CACA,eAAA,CACA,6CACC,mBAAA,CACA,6BAAA,CAIF,uCACC,iBAAA,CACA,UAAA,CACA,aAAA,CAGA,8CACA,4BAAA,CAGA,0FAEC,UAAA,CAGD,6CACC,UAAA,CACA,WA5DY,CA6DZ,YA5Da,CA8Db,kKAGC,wDAAA,CACA,4DAAA,CAGD,iKAGC,eAAA,CACA,kBAAA,CACA,sBAAA,CAID,+SAIC,uBAAA,CAIF,2FAEC,iBAAA,CACA,KAAA,CACA,oBAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CAEA,uTAGC,SAAA,CAIF,8CACC,qBAAA,CAIF,0CACC,YAAA,CACA,qBAAA,CACA,OAAA,CAEA,iDACC,aAAA,CACA,WAzHM,CA0HN,iBAAA,CACA,wBAAA,CACA,kCAAA,CACA,cAAA,CACA,gBAAA,CAIF,8DACC,mCAAA,CAGD,gDACC,aAAA,CAEA,sEACC,kBAAA,CACA,kCAAA,CACA,iBAAA",sourcesContent:['\n@use "sass:math";\n\n$margin: 10px;\n$input-height: 34px;\n$input-padding: 10px;\n\n.unified-search {\n\t&__trigger-icon {\n\t\tcolor: var(--color-background-plain-text) !important;\n\t}\n\n\t&__input-wrapper {\n\t\tposition: sticky;\n\t\t// above search results\n\t\tz-index: 2;\n\t\ttop: 0;\n\t\tdisplay: inline-flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\twidth: 100%;\n\t\tbackground-color: var(--color-main-background);\n\n\t\tlabel[for="unified-search__input"] {\n\t\t\talign-self: flex-start;\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 19px;\n\t\t\tmargin-inline-start: 13px;\n\t\t}\n\t}\n\n\t&__input-row {\n\t\tdisplay: flex;\n\t\twidth: 100%;\n\t\talign-items: center;\n\t}\n\n\t&__filters {\n\t\tmargin-block: $margin;\n\t\tmargin-inline: math.div($margin, 2) 0;\n\t\tpadding-top: 5px;\n\t\tul {\n\t\t\tdisplay: inline-flex;\n\t\t\tjustify-content: space-between;\n\t\t}\n\t}\n\n\t&__form {\n\t\tposition: relative;\n\t\twidth: 100%;\n\t\tmargin: $margin 0;\n\n\t\t// Loading spinner\n\t\t&::after {\n\t\tinset-inline-start: auto $input-padding;\n\t\t}\n\n\t\t&-input,\n\t\t&-reset {\n\t\t\tmargin: math.div($input-padding, 2);\n\t\t}\n\n\t\t&-input {\n\t\t\twidth: 100%;\n\t\t\theight: $input-height;\n\t\t\tpadding: $input-padding;\n\n\t\t\t&:focus,\n\t\t\t&:focus-visible,\n\t\t\t&:active {\n\t\t\t\tborder-color: 2px solid var(--color-main-text) !important;\n\t\t\t\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\n\t\t\t}\n\n\t\t\t&,\n\t\t\t&[placeholder],\n\t\t\t&::placeholder {\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\n\t\t\t// Hide webkit clear search\n\t\t\t&::-webkit-search-decoration,\n\t\t\t&::-webkit-search-cancel-button,\n\t\t\t&::-webkit-search-results-button,\n\t\t\t&::-webkit-search-results-decoration {\n\t\t\t\t-webkit-appearance: none;\n\t\t\t}\n\t\t}\n\n\t\t&-reset,\n\t\t&-submit {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tinset-inline-end: 4px;\n\t\t\twidth: $input-height - $input-padding;\n\t\t\theight: $input-height - $input-padding;\n\t\t\tmin-height: 30px;\n\t\t\tpadding: 0;\n\t\t\topacity: .5;\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent;\n\t\t\tmargin-inline-end: 0;\n\n\t\t\t&:hover,\n\t\t\t&:focus,\n\t\t\t&:active {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\n\t\t&-submit {\n\t\t\tinset-inline-end: 28px;\n\t\t}\n\t}\n\n\t&__results {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: 4px;\n\n\t\t&-header {\n\t\t\tdisplay: block;\n\t\t\tmargin: $margin;\n\t\t\tmargin-bottom: $margin - 4px;\n\t\t\tmargin-inline-start: 13px;\n\t\t\tcolor: var(--color-primary-element);\n\t\t\tfont-size: 19px;\n\t\t\tfont-weight: bold;\n\t\t}\n\t}\n\n\t:deep(.unified-search__result-more) {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t.empty-content {\n\t\tmargin: 10vh 0;\n\n\t\t:deep(.empty-content__title) {\n\t\t\tfont-weight: normal;\n\t\t\tfont-size: var(--default-font-size);\n\t\t\ttext-align: center;\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const o=a;n.d(e,["A",0,o])}};const i={};function r(t){const n=i[t];if(void 0!==n)return n.exports;const s=i[t]={id:t,loaded:!1,exports:{}};return e[t].call(s.exports,s,s.exports,r),s.loaded=!0,s.exports}r.m=e,(()=>{const t=[];r.O=(e,n,i,s)=>{if(n){s=s||0;for(var a=t.length;a>0&&t[a-1][2]>s;a--)t[a]=t[a-1];return void(t[a]=[n,i,s])}let o=1/0;for(a=0;a=s)&&Object.keys(r.O).every(t=>r.O[t](n[c]))?n.splice(c--,1):(l=!1,s{const e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{if(Array.isArray(e))for(var n=0;nPromise.all(Object.keys(r.f).reduce((e,n)=>(r.f[n](t,e),e),[])),r.u=t=>t+"-"+t+".js?v="+{4005:"f2b35c8f02e136bf5a37",4017:"808775e77c7d18946064",5236:"c77c5a00221a046a1e3e",7859:"90097d6186e001a6fb28",8259:"79b917f7438068af7e66",8374:"baf178fdc31f0e575ab0",8689:"2a36f0347d469ae8619d"}[t],r.o=(t,e)=>Object.hasOwn(t,e),(()=>{const t={},e="nextcloud-ui-legacy:";r.l=(n,i,s,a)=>{if(t[n])return void t[n].push(i);let o,c;if(void 0!==s){const t=document.getElementsByTagName("script");for(var l=0;l{o.onerror=o.onload=null,clearTimeout(u);const r=t[n];if(delete t[n],o.parentNode?.removeChild(o),r?.forEach(t=>t(i)),e)return e(i)},u=setTimeout(d.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=d.bind(null,o.onerror),o.onload=d.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=t=>{Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),r.j=1684,r.dn=t=>{var e=Object.getOwnPropertyDescriptor(t,"name");(!e||!e.writable&&e.configurable)&&Object.defineProperty(t,"name",{value:"default",configurable:!0})},r.cjs=t=>{const e={exports:{}};return t.call(e.exports,e,e.exports),e.exports},(()=>{let t;globalThis.importScripts&&(t=globalThis.location+"");const e=globalThis.document;if(!t&&e&&("SCRIPT"===e.currentScript?.tagName.toUpperCase()&&(t=e.currentScript.src),!t)){const n=e.getElementsByTagName("script");if(n.length){let e=n.length-1;for(;e>-1&&(!t||!/^http(s?):/.test(t));)t=n[e--].src}}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=t})(),(()=>{r.b="undefined"!=typeof document&&document.baseURI||self.location.href;const t={1684:0};r.f.j=(e,n)=>{let i=r.o(t,e)?t[e]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((n,r)=>i=t[e]=[n,r]);n.push(i[2]=s);const a=r.p+r.u(e),o=new Error,c=n=>{if(r.o(t,e)&&(i=t[e],0!==i&&(t[e]=void 0),i)){const t=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+e+" failed.\n("+t+": "+r+")",o.name="ChunkLoadError",o.type=t,o.request=r,o.event=n,i[1](o)}};r.l(a,c,"chunk-"+e,e)}},r.O.j=e=>0===t[e];const e=(e,n)=>{let[i,s,a]=n;var o,c,l=0;if(i.some(e=>0!==t[e])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)var d=a(r)}for(e&&e(n);lr(50556));s=r.O(s)})(); -//# sourceMappingURL=core-legacy-unified-search.js.map?v=6eb1bdfcc30d86cba448 \ No newline at end of file +(()=>{"use strict";var e={96990(e,i,r){var s=r(21777),a=r(53334),o=r(35947),c=r(85471),l=r(85168),d=r(61338),u=r(46855),h=r(57505),A=r(24764),p=r(48943),f=r(2769),g=r(82182);const C={name:"MagnifyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var m=r(14486);const _=(0,m.A)(C,function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon magnify-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},[],!1,null,null,null).exports,b={name:"LegacySearchResult",components:{NcHighlight:r(51550).N},props:{thumbnailUrl:{type:String,default:null},title:{type:String,required:!0},subline:{type:String,default:null},resourceUrl:{type:String,default:null},icon:{type:String,default:""},rounded:{type:Boolean,default:!1},query:{type:String,default:""},focused:{type:Boolean,default:!1}},data(){return{hasValidThumbnail:this.thumbnailUrl&&""!==this.thumbnailUrl.trim(),loaded:!1}},computed:{isIconUrl(){if(this.icon.startsWith("/"))return!0;try{new URL(this.icon)}catch{return!1}return!0}},watch:{thumbnailUrl(){this.hasValidThumbnail=this.thumbnailUrl&&""!==this.thumbnailUrl.trim(),this.loaded=!1}},methods:{reEmitEvent(t){this.$emit(t.type,t)},onError(){this.hasValidThumbnail=!1},onLoad(){this.loaded=!0}}};var v=r(85072),y=r.n(v),x=r(97825),w=r.n(x),k=r(77659),$=r.n(k),S=r(55056),B=r.n(S),D=r(10540),I=r.n(D),q=r(41113),E=r.n(q),L=r(96181),U={};U.styleTagTransform=E(),U.setAttributes=B(),U.insert=$().bind(null,"head"),U.domAPI=w(),U.insertStyleElement=I(),y()(L.A,U),L.A&&L.A.locals&&L.A.locals;const N=(0,m.A)(b,function(){var t=this,e=t._self._c;return e("a",{staticClass:"unified-search__result",class:{"unified-search__result--focused":t.focused},attrs:{href:t.resourceUrl||"#"},on:{click:t.reEmitEvent,focus:t.reEmitEvent}},[e("div",{staticClass:"unified-search__result-icon",class:{"unified-search__result-icon--rounded":t.rounded,"unified-search__result-icon--no-preview":!t.hasValidThumbnail&&!t.loaded,"unified-search__result-icon--with-thumbnail":t.hasValidThumbnail&&t.loaded,[t.icon]:!t.loaded&&!t.isIconUrl},style:{backgroundImage:t.isIconUrl?`url(${t.icon})`:""}},[t.hasValidThumbnail?e("img",{directives:[{name:"show",rawName:"v-show",value:t.loaded,expression:"loaded"}],attrs:{src:t.thumbnailUrl,alt:""},on:{error:t.onError,load:t.onLoad}}):t._e()]),t._v(" "),e("span",{staticClass:"unified-search__result-content"},[e("span",{staticClass:"unified-search__result-line-one",attrs:{title:t.title}},[e("NcHighlight",{attrs:{text:t.title,search:t.query}})],1),t._v(" "),t.subline?e("span",{staticClass:"unified-search__result-line-two",attrs:{title:t.subline}},[t._v(t._s(t.subline))]):t._e()])])},[],!1,null,"2dec9460",null).exports,R={name:"SearchResultPlaceholders",data:()=>({light:null,dark:null}),mounted(){const t=getComputedStyle(document.documentElement);this.dark=t.getPropertyValue("--color-placeholder-dark"),this.light=t.getPropertyValue("--color-placeholder-light")},methods:{randWidth:()=>Math.floor(20*Math.random())+30}};var O=r(13759),P={};P.styleTagTransform=E(),P.setAttributes=B(),P.insert=$().bind(null,"head"),P.domAPI=w(),P.insertStyleElement=I(),y()(O.A,P),O.A&&O.A.locals&&O.A.locals;const T=(0,m.A)(R,function(){var t=this,e=t._self._c;return e("ul",[e("svg",{staticClass:"unified-search__result-placeholder-gradient"},[e("defs",[e("linearGradient",{attrs:{id:"unified-search__result-placeholder-gradient"}},[e("stop",{attrs:{offset:"0%","stop-color":t.light}},[e("animate",{attrs:{attributeName:"stop-color",values:`${t.light}; ${t.light}; ${t.dark}; ${t.dark}; ${t.light}`,dur:"2s",repeatCount:"indefinite"}})]),t._v(" "),e("stop",{attrs:{offset:"100%","stop-color":t.dark}},[e("animate",{attrs:{attributeName:"stop-color",values:`${t.dark}; ${t.light}; ${t.light}; ${t.dark}; ${t.dark}`,dur:"2s",repeatCount:"indefinite"}})])],1)],1)]),t._v(" "),t._l([1,2,3],function(n){return e("li",{key:n},[e("svg",{staticClass:"unified-search__result-placeholder",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"url(#unified-search__result-placeholder-gradient)"}},[e("rect",{staticClass:"unified-search__result-placeholder-icon"}),t._v(" "),e("rect",{staticClass:"unified-search__result-placeholder-line-one"}),t._v(" "),e("rect",{staticClass:"unified-search__result-placeholder-line-two",style:{width:`calc(${t.randWidth()}%)`}})])])})],2)},[],!1,null,"480c8b8e",null).exports,z=null===(F=(0,s.HW)())?(0,o.YK)().setApp("core").build():(0,o.YK)().setApp("core").setUid(F.uid).build();var F;(0,o.YK)().setApp("unified-search").detectUser().build();var j=r(44368),M=r(81222),G=r(63814);const Q=(0,M.C)("unified-search","limit-default"),K=(0,M.C)("unified-search","min-search-length",1),W=(0,M.C)("unified-search","live-search",!0),V=/(^|\s)in:([a-z_-]+)/gi,Y=/(^|\s)-in:([a-z_-]+)/gi;async function H(){try{const{data:t}=await j.Ay.get((0,G.KT)("search/providers"),{params:{from:window.location.pathname.replace("/index.php","")+window.location.search}});if("ocs"in t&&"data"in t.ocs&&Array.isArray(t.ocs.data)&&t.ocs.data.length>0)return t.ocs.data}catch(t){z.error(t)}return[]}function Z({type:t,query:e,cursor:n}){const i=j.Ay.CancelToken.source();return{request:async()=>j.Ay.get((0,G.KT)("search/providers/{type}/search",{type:t}),{cancelToken:i.token,params:{term:e,cursor:n,from:window.location.pathname.replace("/index.php","")+window.location.search}}),cancel:i.cancel}}const J={name:"LegacyUnifiedSearch",components:{Magnify:_,NcActionButton:h.A,NcActions:A.A,NcEmptyContent:p.A,NcHeaderMenu:f.A,SearchResult:N,SearchResultPlaceholders:T,NcTextField:g.A},data:()=>({types:[],cursors:{},limits:{},loading:{},reached:{},requests:[],results:{},query:"",focused:null,triggered:!1,defaultLimit:Q,minSearchLength:K,enableLiveSearch:W,open:!1}),computed:{typesIDs(){return this.types.map(t=>t.id)},typesNames(){return this.types.map(t=>t.name)},typesMap(){return this.types.reduce((t,e)=>(t[e.id]=e.name,t),{})},ariaLabel:()=>t("core","Search"),hasResults(){return 0!==Object.keys(this.results).length},orderedResults(){return this.typesIDs.filter(t=>t in this.results).map(t=>({type:t,list:this.results[t]}))},availableFilters(){return Object.keys(this.results)},usedFiltersIn(){let t;const e=[];for(;null!==(t=V.exec(this.query));)e.push(t[2]);return e},usedFiltersNot(){let t;const e=[];for(;null!==(t=Y.exec(this.query));)e.push(t[2]);return e},validQueryTitle(){return this.triggered?t("core","No results for {query}",{query:this.query}):t("core","Press Enter to start searching")},shortQueryDescription(){return this.isShortQuery?n("core","Please enter {minSearchLength} character or more to search","Please enter {minSearchLength} characters or more to search",this.minSearchLength,{minSearchLength:this.minSearchLength}):""},isShortQuery(){return this.query&&this.query.trim().length!1===t)},isLoading(){return Object.values(this.loading).some(t=>!0===t)}},async created(){this.types=await H(),z.debug("Unified Search initialized with the following providers",this.types)},beforeDestroy(){(0,d.al)("files:navigation:changed",this.onNavigationChange)},mounted(){(0,d.B1)("files:navigation:changed",this.onNavigationChange),OCP.Accessibility.disableKeyboardShortcuts()||document.addEventListener("keydown",t=>{t.ctrlKey&&"KeyF"===t.code&&!this.open?(t.preventDefault(),this.open=!0):t.ctrlKey&&"f"===t.key&&this.open&&(this.open=!1),this.open&&("ArrowDown"===t.key&&this.focusNext(t),"ArrowUp"===t.key&&this.focusPrev(t))})},methods:{async onOpen(){this.types=await H()},onClose(){(0,d.Ic)("nextcloud:unified-search.close")},onNavigationChange(){this.$el?.querySelector?.('form[role="search"]')?.reset?.()},onReset(){(0,d.Ic)("nextcloud:unified-search.reset"),this.logger.debug("Search reset"),this.query="",this.resetState(),this.focusInput()},async resetState(){this.cursors={},this.limits={},this.reached={},this.results={},this.focused=null,this.triggered=!1,await this.cancelPendingRequests()},async cancelPendingRequests(){const t=this.requests.slice(0);this.requests=[],await Promise.all(t.map(t=>t()))},focusInput(){this.$nextTick(()=>{this.$refs.input.focus(),this.$refs.input.select()})},onInputEnter(){this.hasResults?this.getResultsList()[0].click():this.onInput()},async onInput(){if((0,d.Ic)("nextcloud:unified-search.search",{query:this.query}),""===this.query.trim()||this.isShortQuery){for(const t of this.typesIDs)this.$delete(this.results,t);return}let t=this.typesIDs,e=this.query;this.usedFiltersNot.length>0&&(t=this.typesIDs.filter(t=>-1===this.usedFiltersNot.indexOf(t))),this.usedFiltersIn.length>0&&(t=this.typesIDs.filter(t=>this.usedFiltersIn.indexOf(t)>-1)),e=e.replace(V,"").replace(Y,""),await this.resetState(),this.triggered=!0,t.length?(this.$set(this.loading,"all",!0),this.logger.debug(`Searching ${e} in`,t),Promise.all(t.map(async t=>{try{const{request:n,cancel:i}=Z({type:t,query:e});this.requests.push(i);const{data:r}=await n();return r.ocs.data.entries.length>0?this.$set(this.results,t,r.ocs.data.entries):this.$delete(this.results,t),r.ocs.data.cursor?this.$set(this.cursors,t,r.ocs.data.cursor):r.ocs.data.isPaginated||this.$set(this.limits,t,this.defaultLimit),r.ocs.data.entries.length{t.some(t=>2===t)||(this.loading={})})):this.logger.error("No types to search in")},onInputDebounced:W?(0,u.A)(function(t){this.onInput(t)},500):function(){this.triggered=!1},async loadMore(t){if(!this.loading[t]){if(this.cursors[t]){const{request:e,cancel:n}=Z({type:t,query:this.query,cursor:this.cursors[t]});this.requests.push(n);const{data:i}=await e();i.ocs.data.cursor&&this.$set(this.cursors,t,i.ocs.data.cursor),i.ocs.data.entries.length>0&&this.results[t].push(...i.ocs.data.entries),i.ocs.data.entries.length=0&&(this.limits[t]+=this.defaultLimit,this.limits[t]>=this.results[t].length&&this.$set(this.reached,t,!0));null!==this.focused&&this.$nextTick(()=>{this.focusIndex(this.focused)})}},limitIfAny(t,e){return e in this.limits?t.slice(0,this.limits[e]):t},getResultsList(){return this.$el.querySelectorAll(".unified-search__results .unified-search__result")},focusFirst(t){const e=this.getResultsList();e&&e.length>0&&(t&&t.preventDefault(),this.focused=0,this.focusIndex(this.focused))},focusNext(t){if(null===this.focused)return void this.focusFirst(t);const e=this.getResultsList();e&&e.length>0&&this.focused+10&&this.focused>0&&(t.preventDefault(),this.focused--,this.focusIndex(this.focused))},focusIndex(t){const e=this.getResultsList();e&&e[t]&&e[t].focus()},setFocusedIndex(t){const e=t.target,n=[...this.getResultsList()].findIndex(t=>t===e);n>-1&&(this.focused=n)},onClickFilter(t){this.query=`${this.query} ${t}`.replace(/ {2}/g," ").trim(),this.onInput()}}};var X=r(15987),tt={};tt.styleTagTransform=E(),tt.setAttributes=B(),tt.insert=$().bind(null,"head"),tt.domAPI=w(),tt.insertStyleElement=I(),y()(X.A,tt),X.A&&X.A.locals&&X.A.locals;const et=(0,m.A)(J,function(){var t=this,e=t._self._c;return e("NcHeaderMenu",{staticClass:"unified-search",attrs:{id:"unified-search","exclude-click-outside-selectors":[".popover"],open:t.open,"aria-label":t.ariaLabel},on:{"update:open":function(e){t.open=e},open:t.onOpen,close:t.onClose},scopedSlots:t._u([{key:"trigger",fn:function(){return[e("Magnify",{staticClass:"unified-search__trigger-icon",attrs:{size:20}})]},proxy:!0}])},[t._v(" "),e("div",{staticClass:"unified-search__input-wrapper"},[e("div",{staticClass:"unified-search__input-row"},[e("NcTextField",{ref:"input",staticClass:"unified-search__form-input",class:{"unified-search__form-input--with-reset":!!t.query},attrs:{"trailing-button-icon":"close",label:t.ariaLabel,"trailing-button-label":t.t("core","Reset search"),"show-trailing-button":""!==t.query,"aria-describedby":"unified-search-desc",placeholder:t.t("core","Search {types} …",{types:t.typesNames.join(", ")})},on:{"trailing-button-click":t.onReset,input:t.onInputDebounced},model:{value:t.query,callback:function(e){t.query=e},expression:"query"}}),t._v(" "),e("p",{staticClass:"hidden-visually",attrs:{id:"unified-search-desc"}},[t._v("\n\t\t\t\t"+t._s(t.t("core","Search starts once you start typing and results may be reached with the arrow keys"))+"\n\t\t\t")]),t._v(" "),t.availableFilters.length>1?e("NcActions",{staticClass:"unified-search__filters",attrs:{placement:"bottom-end",container:".unified-search__input-wrapper"}},t._l(t.availableFilters,function(n){return e("NcActionButton",{key:n,attrs:{icon:"icon-filter"},on:{click:function(e){return e.stopPropagation(),t.onClickFilter(`in:${n}`)}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Search for {name} only",{name:t.typesMap[n]}))+"\n\t\t\t\t")])}),1):t._e()],1)]),t._v(" "),t.hasResults?t._l(t.orderedResults,function({list:n,type:i},r){return[e("h2",{key:i,staticClass:"unified-search__results-header"},[t._v("\n\t\t\t"+t._s(t.typesMap[i])+"\n\t\t")]),t._v(" "),e("ul",{key:i,staticClass:"unified-search__results",class:`unified-search__results-${i}`,attrs:{"aria-label":t.typesMap[i]}},[t._l(t.limitIfAny(n,i),function(n,i){return e("li",{key:n.resourceUrl},[e("SearchResult",t._b({attrs:{query:t.query,focused:0===t.focused&&0===r&&0===i},on:{focus:t.setFocusedIndex}},"SearchResult",n,!1))],1)}),t._v(" "),e("li",[t.reached[i]?t._e():e("SearchResult",{staticClass:"unified-search__result-more",attrs:{title:t.loading[i]?t.t("core","Loading more results …"):t.t("core","Load more results"),"icon-class":t.loading[i]?"icon-loading-small":""},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.loadMore(i)},focus:t.setFocusedIndex}})],1)],2)]}):[t.isLoading?e("SearchResultPlaceholders"):t.isValidQuery?e("NcEmptyContent",{attrs:{title:t.validQueryTitle},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Magnify")]},proxy:!0}],null,!1,931131664)}):!t.isLoading||t.isShortQuery?e("NcEmptyContent",{attrs:{title:t.t("core","Start typing to search"),description:t.shortQueryDescription},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Magnify")]},proxy:!0}],null,!1,931131664)}):t._e()]],2)},[],!1,null,"4cdce41c",null).exports;r.nc=(0,s.aV)();const nt=(0,o.YK)().setApp("unified-search").detectUser().build();c.Ay.mixin({data:()=>({logger:nt}),methods:{t:a.t,n:a.n}}),new c.Ay({el:"#unified-search",name:"UnifiedSearchRoot",render:t=>t(et)})},96181(t,e,n){var i=n(71354),r=n.n(i),s=n(76314),a=n.n(s)()(r());a.push([t.id,".unified-search__result[data-v-2dec9460]{display:flex;align-items:center;height:44px;padding:10px;border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.unified-search__result--focused[data-v-2dec9460]{background-color:var(--color-background-hover)}.unified-search__result[data-v-2dec9460]:active,.unified-search__result[data-v-2dec9460]:hover,.unified-search__result[data-v-2dec9460]:focus{background-color:var(--color-background-hover);border:2px solid var(--color-border-maxcontrast)}.unified-search__result *[data-v-2dec9460]{cursor:pointer}.unified-search__result-icon[data-v-2dec9460]{overflow:hidden;width:44px;height:44px;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center center;background-size:32px}.unified-search__result-icon--rounded[data-v-2dec9460]{border-radius:22px}.unified-search__result-icon--no-preview[data-v-2dec9460]{background-size:32px}.unified-search__result-icon--with-thumbnail[data-v-2dec9460]{background-size:cover}.unified-search__result-icon--with-thumbnail[data-v-2dec9460]:not(.unified-search__result-icon--rounded){max-width:42px;max-height:42px;border:1px solid var(--color-border)}.unified-search__result-icon img[data-v-2dec9460]{width:100%;height:100%;object-fit:cover;object-position:center}.unified-search__result-icon[data-v-2dec9460],.unified-search__result-actions[data-v-2dec9460]{flex:0 0 44px}.unified-search__result-content[data-v-2dec9460]{display:flex;align-items:center;flex:1 1 100%;flex-wrap:wrap;min-width:0;padding-inline-start:10px}.unified-search__result-line-one[data-v-2dec9460],.unified-search__result-line-two[data-v-2dec9460]{overflow:hidden;flex:1 1 100%;margin:1px 0;white-space:nowrap;text-overflow:ellipsis;color:inherit;font-size:inherit}.unified-search__result-line-two[data-v-2dec9460]{opacity:.7;font-size:var(--default-font-size)}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/LegacySearchResult.vue"],names:[],mappings:"AAMA,yCACC,YAAA,CACA,kBAAA,CACA,WANgB,CAOhB,YANQ,CAOR,8BAAA,CACA,mDAAA,CAEA,kDACC,8CAAA,CAGD,8IAGC,8CAAA,CACA,gDAAA,CAGD,2CACC,cAAA,CAGD,8CACC,eAAA,CACA,UA5Be,CA6Bf,WA7Be,CA8Bf,kCAAA,CACA,2BAAA,CACA,iCAAA,CACA,oBAAA,CACA,uDACC,kBAAA,CAED,0DACC,oBAAA,CAED,8DACC,qBAAA,CAED,yGAEC,cAAA,CACA,eAAA,CACA,oCAAA,CAGD,kDAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA,CAIF,+FAEC,aAAA,CAGD,iDACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,cAAA,CAEA,WAAA,CACA,yBAvEO,CA0ER,oGAEC,eAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,aAAA,CACA,iBAAA,CAED,kDACC,UAAA,CACA,kCAAA",sourcesContent:['\n@use "sass:math";\n\n$clickable-area: 44px;\n$margin: 10px;\n\n.unified-search__result {\n\tdisplay: flex;\n\talign-items: center;\n\theight: $clickable-area;\n\tpadding: $margin;\n\tborder: 2px solid transparent;\n\tborder-radius: var(--border-radius-large) !important;\n\n\t&--focused {\n\t\tbackground-color: var(--color-background-hover);\n\t}\n\n\t&:active,\n\t&:hover,\n\t&:focus {\n\t\tbackground-color: var(--color-background-hover);\n\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t}\n\n\t* {\n\t\tcursor: pointer;\n\t}\n\n\t&-icon {\n\t\toverflow: hidden;\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\tborder-radius: var(--border-radius);\n\t\tbackground-repeat: no-repeat;\n\t\tbackground-position: center center;\n\t\tbackground-size: 32px;\n\t\t&--rounded {\n\t\t\tborder-radius: math.div($clickable-area, 2);\n\t\t}\n\t\t&--no-preview {\n\t\t\tbackground-size: 32px;\n\t\t}\n\t\t&--with-thumbnail {\n\t\t\tbackground-size: cover;\n\t\t}\n\t\t&--with-thumbnail:not(&--rounded) {\n\t\t\t// compensate for border\n\t\t\tmax-width: $clickable-area - 2px;\n\t\t\tmax-height: $clickable-area - 2px;\n\t\t\tborder: 1px solid var(--color-border);\n\t\t}\n\n\t\timg {\n\t\t\t// Make sure to keep ratio\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\n\t\t\tobject-fit: cover;\n\t\t\tobject-position: center;\n\t\t}\n\t}\n\n\t&-icon,\n\t&-actions {\n\t\tflex: 0 0 $clickable-area;\n\t}\n\n\t&-content {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tflex: 1 1 100%;\n\t\tflex-wrap: wrap;\n\t\t// Set to minimum and gro from it\n\t\tmin-width: 0;\n\t\tpadding-inline-start: $margin;\n\t}\n\n\t&-line-one,\n\t&-line-two {\n\t\toverflow: hidden;\n\t\tflex: 1 1 100%;\n\t\tmargin: 1px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\t// Use the same color as the `a`\n\t\tcolor: inherit;\n\t\tfont-size: inherit;\n\t}\n\t&-line-two {\n\t\topacity: .7;\n\t\tfont-size: var(--default-font-size);\n\t}\n}\n\n'],sourceRoot:""}]);const o=a;n.d(e,["A",0,o])},13759(t,e,n){var i=n(71354),r=n.n(i),s=n(76314),a=n.n(s)()(r());a.push([t.id,".unified-search__result-placeholder-gradient[data-v-480c8b8e]{position:fixed;height:0;width:0;z-index:-1}.unified-search__result-placeholder[data-v-480c8b8e]{width:calc(100% - 2*10px);height:44px;margin:10px}.unified-search__result-placeholder-icon[data-v-480c8b8e]{width:44px;height:44px;rx:var(--border-radius);ry:var(--border-radius)}.unified-search__result-placeholder-line-one[data-v-480c8b8e],.unified-search__result-placeholder-line-two[data-v-480c8b8e]{width:calc(100% - 54px);height:1em;x:54px}.unified-search__result-placeholder-line-one[data-v-480c8b8e]{y:5px}.unified-search__result-placeholder-line-two[data-v-480c8b8e]{y:25px}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue"],names:[],mappings:"AAIA,8DACC,cAAA,CACA,QAAA,CACA,OAAA,CACA,UAAA,CAGD,qDACC,yBAAA,CACA,WAZgB,CAahB,WAZQ,CAcR,0DACC,UAhBe,CAiBf,WAjBe,CAkBf,uBAAA,CACA,uBAAA,CAGD,4HAEC,uBAAA,CACA,UAAA,CACA,MAAA,CAGD,8DACC,KAAA,CAGD,8DACC,MAAA",sourcesContent:["\n$clickable-area: 44px;\n$margin: 10px;\n\n.unified-search__result-placeholder-gradient {\n\tposition: fixed;\n\theight: 0;\n\twidth: 0;\n\tz-index: -1;\n}\n\n.unified-search__result-placeholder {\n\twidth: calc(100% - 2 * #{$margin});\n\theight: $clickable-area;\n\tmargin: $margin;\n\n\t&-icon {\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\trx: var(--border-radius);\n\t\try: var(--border-radius);\n\t}\n\n\t&-line-one,\n\t&-line-two {\n\t\twidth: calc(100% - #{$margin + $clickable-area});\n\t\theight: 1em;\n\t\tx: $margin + $clickable-area;\n\t}\n\n\t&-line-one {\n\t\ty: 5px;\n\t}\n\n\t&-line-two {\n\t\ty: 25px;\n\t}\n}\n\n"],sourceRoot:""}]);const o=a;n.d(e,["A",0,o])},15987(t,e,n){var i=n(71354),r=n.n(i),s=n(76314),a=n.n(s)()(r());a.push([t.id,".unified-search__trigger-icon[data-v-4cdce41c]{color:var(--color-background-plain-text) !important}.unified-search__input-wrapper[data-v-4cdce41c]{position:sticky;z-index:2;top:0;display:inline-flex;flex-direction:column;align-items:center;width:100%;background-color:var(--color-main-background)}.unified-search__input-wrapper label[for=unified-search__input][data-v-4cdce41c]{align-self:flex-start;font-weight:bold;font-size:19px;margin-inline-start:13px}.unified-search__input-row[data-v-4cdce41c]{display:flex;width:100%;align-items:center}.unified-search__filters[data-v-4cdce41c]{margin-block:10px;margin-inline:5px 0;padding-top:5px}.unified-search__filters ul[data-v-4cdce41c]{display:inline-flex;justify-content:space-between}.unified-search__form[data-v-4cdce41c]{position:relative;width:100%;margin:10px 0}.unified-search__form[data-v-4cdce41c]::after{inset-inline-start:auto 10px}.unified-search__form-input[data-v-4cdce41c],.unified-search__form-reset[data-v-4cdce41c]{margin:5px}.unified-search__form-input[data-v-4cdce41c]{width:100%;height:34px;padding:10px}.unified-search__form-input[data-v-4cdce41c]:focus,.unified-search__form-input[data-v-4cdce41c]:focus-visible,.unified-search__form-input[data-v-4cdce41c]:active{border-color:2px solid var(--color-main-text) !important;box-shadow:0 0 0 2px var(--color-main-background) !important}.unified-search__form-input[data-v-4cdce41c],.unified-search__form-input[placeholder][data-v-4cdce41c],.unified-search__form-input[data-v-4cdce41c]::placeholder{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.unified-search__form-input[data-v-4cdce41c]::-webkit-search-decoration,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-cancel-button,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-results-button,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-results-decoration{-webkit-appearance:none}.unified-search__form-reset[data-v-4cdce41c],.unified-search__form-submit[data-v-4cdce41c]{position:absolute;top:0;inset-inline-end:4px;width:24px;height:24px;min-height:30px;padding:0;opacity:.5;border:none;background-color:rgba(0,0,0,0);margin-inline-end:0}.unified-search__form-reset[data-v-4cdce41c]:hover,.unified-search__form-reset[data-v-4cdce41c]:focus,.unified-search__form-reset[data-v-4cdce41c]:active,.unified-search__form-submit[data-v-4cdce41c]:hover,.unified-search__form-submit[data-v-4cdce41c]:focus,.unified-search__form-submit[data-v-4cdce41c]:active{opacity:1}.unified-search__form-submit[data-v-4cdce41c]{inset-inline-end:28px}.unified-search__results[data-v-4cdce41c]{display:flex;flex-direction:column;gap:4px}.unified-search__results-header[data-v-4cdce41c]{display:block;margin:10px;margin-bottom:6px;margin-inline-start:13px;color:var(--color-primary-element);font-size:19px;font-weight:bold}.unified-search[data-v-4cdce41c] .unified-search__result-more{color:var(--color-text-maxcontrast)}.unified-search .empty-content[data-v-4cdce41c]{margin:10vh 0}.unified-search .empty-content[data-v-4cdce41c] .empty-content__title{font-weight:normal;font-size:var(--default-font-size);text-align:center}","",{version:3,sources:["webpack://./core/src/views/LegacyUnifiedSearch.vue"],names:[],mappings:"AAQC,+CACC,mDAAA,CAGD,gDACC,eAAA,CAEA,SAAA,CACA,KAAA,CACA,mBAAA,CACA,qBAAA,CACA,kBAAA,CACA,UAAA,CACA,6CAAA,CAEA,iFACC,qBAAA,CACA,gBAAA,CACA,cAAA,CACA,wBAAA,CAIF,4CACC,YAAA,CACA,UAAA,CACA,kBAAA,CAGD,0CACC,iBAnCO,CAoCP,mBAAA,CACA,eAAA,CACA,6CACC,mBAAA,CACA,6BAAA,CAIF,uCACC,iBAAA,CACA,UAAA,CACA,aAAA,CAGA,8CACA,4BAAA,CAGA,0FAEC,UAAA,CAGD,6CACC,UAAA,CACA,WA5DY,CA6DZ,YA5Da,CA8Db,kKAGC,wDAAA,CACA,4DAAA,CAGD,iKAGC,eAAA,CACA,kBAAA,CACA,sBAAA,CAID,+SAIC,uBAAA,CAIF,2FAEC,iBAAA,CACA,KAAA,CACA,oBAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CAEA,uTAGC,SAAA,CAIF,8CACC,qBAAA,CAIF,0CACC,YAAA,CACA,qBAAA,CACA,OAAA,CAEA,iDACC,aAAA,CACA,WAzHM,CA0HN,iBAAA,CACA,wBAAA,CACA,kCAAA,CACA,cAAA,CACA,gBAAA,CAIF,8DACC,mCAAA,CAGD,gDACC,aAAA,CAEA,sEACC,kBAAA,CACA,kCAAA,CACA,iBAAA",sourcesContent:['\n@use "sass:math";\n\n$margin: 10px;\n$input-height: 34px;\n$input-padding: 10px;\n\n.unified-search {\n\t&__trigger-icon {\n\t\tcolor: var(--color-background-plain-text) !important;\n\t}\n\n\t&__input-wrapper {\n\t\tposition: sticky;\n\t\t// above search results\n\t\tz-index: 2;\n\t\ttop: 0;\n\t\tdisplay: inline-flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\twidth: 100%;\n\t\tbackground-color: var(--color-main-background);\n\n\t\tlabel[for="unified-search__input"] {\n\t\t\talign-self: flex-start;\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: 19px;\n\t\t\tmargin-inline-start: 13px;\n\t\t}\n\t}\n\n\t&__input-row {\n\t\tdisplay: flex;\n\t\twidth: 100%;\n\t\talign-items: center;\n\t}\n\n\t&__filters {\n\t\tmargin-block: $margin;\n\t\tmargin-inline: math.div($margin, 2) 0;\n\t\tpadding-top: 5px;\n\t\tul {\n\t\t\tdisplay: inline-flex;\n\t\t\tjustify-content: space-between;\n\t\t}\n\t}\n\n\t&__form {\n\t\tposition: relative;\n\t\twidth: 100%;\n\t\tmargin: $margin 0;\n\n\t\t// Loading spinner\n\t\t&::after {\n\t\tinset-inline-start: auto $input-padding;\n\t\t}\n\n\t\t&-input,\n\t\t&-reset {\n\t\t\tmargin: math.div($input-padding, 2);\n\t\t}\n\n\t\t&-input {\n\t\t\twidth: 100%;\n\t\t\theight: $input-height;\n\t\t\tpadding: $input-padding;\n\n\t\t\t&:focus,\n\t\t\t&:focus-visible,\n\t\t\t&:active {\n\t\t\t\tborder-color: 2px solid var(--color-main-text) !important;\n\t\t\t\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\n\t\t\t}\n\n\t\t\t&,\n\t\t\t&[placeholder],\n\t\t\t&::placeholder {\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\n\t\t\t// Hide webkit clear search\n\t\t\t&::-webkit-search-decoration,\n\t\t\t&::-webkit-search-cancel-button,\n\t\t\t&::-webkit-search-results-button,\n\t\t\t&::-webkit-search-results-decoration {\n\t\t\t\t-webkit-appearance: none;\n\t\t\t}\n\t\t}\n\n\t\t&-reset,\n\t\t&-submit {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tinset-inline-end: 4px;\n\t\t\twidth: $input-height - $input-padding;\n\t\t\theight: $input-height - $input-padding;\n\t\t\tmin-height: 30px;\n\t\t\tpadding: 0;\n\t\t\topacity: .5;\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent;\n\t\t\tmargin-inline-end: 0;\n\n\t\t\t&:hover,\n\t\t\t&:focus,\n\t\t\t&:active {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\n\t\t&-submit {\n\t\t\tinset-inline-end: 28px;\n\t\t}\n\t}\n\n\t&__results {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: 4px;\n\n\t\t&-header {\n\t\t\tdisplay: block;\n\t\t\tmargin: $margin;\n\t\t\tmargin-bottom: $margin - 4px;\n\t\t\tmargin-inline-start: 13px;\n\t\t\tcolor: var(--color-primary-element);\n\t\t\tfont-size: 19px;\n\t\t\tfont-weight: bold;\n\t\t}\n\t}\n\n\t:deep(.unified-search__result-more) {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t.empty-content {\n\t\tmargin: 10vh 0;\n\n\t\t:deep(.empty-content__title) {\n\t\t\tfont-weight: normal;\n\t\t\tfont-size: var(--default-font-size);\n\t\t\ttext-align: center;\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const o=a;n.d(e,["A",0,o])}};const i={};function r(t){const n=i[t];if(void 0!==n)return n.exports;const s=i[t]={id:t,loaded:!1,exports:{}};return e[t].call(s.exports,s,s.exports,r),s.loaded=!0,s.exports}r.m=e,(()=>{const t=[];r.O=(e,n,i,s)=>{if(n){s=s||0;for(var a=t.length;a>0&&t[a-1][2]>s;a--)t[a]=t[a-1];return void(t[a]=[n,i,s])}let o=1/0;for(a=0;a=s)&&Object.keys(r.O).every(t=>r.O[t](n[c]))?n.splice(c--,1):(l=!1,s{const e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{if(Array.isArray(e))for(var n=0;nPromise.all(Object.keys(r.f).reduce((e,n)=>(r.f[n](t,e),e),[])),r.u=t=>t+"-"+t+".js?v="+{4005:"f2b35c8f02e136bf5a37",4017:"808775e77c7d18946064",5236:"c77c5a00221a046a1e3e",7859:"90097d6186e001a6fb28",8259:"79b917f7438068af7e66",8374:"baf178fdc31f0e575ab0",8689:"2a36f0347d469ae8619d"}[t],r.o=(t,e)=>Object.hasOwn(t,e),(()=>{const t={},e="nextcloud-ui-legacy:";r.l=(n,i,s,a)=>{if(t[n])return void t[n].push(i);let o,c;if(void 0!==s){const t=document.getElementsByTagName("script");for(var l=0;l{o.onerror=o.onload=null,clearTimeout(u);const r=t[n];if(delete t[n],o.parentNode?.removeChild(o),r?.forEach(t=>t(i)),e)return e(i)},u=setTimeout(d.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=d.bind(null,o.onerror),o.onload=d.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=t=>{Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),r.j=1684,r.dn=t=>{var e=Object.getOwnPropertyDescriptor(t,"name");(!e||!e.writable&&e.configurable)&&Object.defineProperty(t,"name",{value:"default",configurable:!0})},r.cjs=t=>{const e={exports:{}};return t.call(e.exports,e,e.exports),e.exports},(()=>{let t;globalThis.importScripts&&(t=globalThis.location+"");const e=globalThis.document;if(!t&&e&&("SCRIPT"===e.currentScript?.tagName.toUpperCase()&&(t=e.currentScript.src),!t)){const n=e.getElementsByTagName("script");if(n.length){let e=n.length-1;for(;e>-1&&(!t||!/^http(s?):/.test(t));)t=n[e--].src}}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=t})(),(()=>{r.b="undefined"!=typeof document&&document.baseURI||self.location.href;const t={1684:0};r.f.j=(e,n)=>{let i=r.o(t,e)?t[e]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((n,r)=>i=t[e]=[n,r]);n.push(i[2]=s);const a=r.p+r.u(e),o=new Error,c=n=>{if(r.o(t,e)&&(i=t[e],0!==i&&(t[e]=void 0),i)){const t=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+e+" failed.\n("+t+": "+r+")",o.name="ChunkLoadError",o.type=t,o.request=r,o.event=n,i[1](o)}};r.l(a,c,"chunk-"+e,e)}},r.O.j=e=>0===t[e];const e=(e,n)=>{let[i,s,a]=n;var o,c,l=0;if(i.some(e=>0!==t[e])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)var d=a(r)}for(e&&e(n);lr(96990));s=r.O(s)})(); +//# sourceMappingURL=core-legacy-unified-search.js.map?v=30e619cfbfa5f9bd1e17 \ No newline at end of file diff --git a/dist/core-legacy-unified-search.js.map b/dist/core-legacy-unified-search.js.map index 1e347627b3d03..ce9fa8da12392 100644 --- a/dist/core-legacy-unified-search.js.map +++ b/dist/core-legacy-unified-search.js.map @@ -1 +1 @@ -{"version":3,"file":"core-legacy-unified-search.js?v=6086653ce55a79baf7ad","mappings":"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","sources":["webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Magnify.vue?0775","webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=194dfb2a","webpack:///nextcloud/core/src/components/UnifiedSearch/LegacySearchResult.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/LegacySearchResult.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/LegacySearchResult.vue?453f","webpack://nextcloud/./core/src/components/UnifiedSearch/LegacySearchResult.vue?1729","webpack://nextcloud/./core/src/components/UnifiedSearch/LegacySearchResult.vue?de39","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultPlaceholders.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?3404","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?7f72","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?cc53","webpack:///nextcloud/core/src/logger.js","webpack:///nextcloud/core/src/services/LegacyUnifiedSearchService.js","webpack:///nextcloud/core/src/views/LegacyUnifiedSearch.vue","webpack:///nextcloud/core/src/views/LegacyUnifiedSearch.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/views/LegacyUnifiedSearch.vue?77bd","webpack://nextcloud/./core/src/views/LegacyUnifiedSearch.vue?bfe7","webpack://nextcloud/./core/src/views/LegacyUnifiedSearch.vue?b8e8","webpack:///nextcloud/core/src/legacy-unified-search.js","webpack:///nextcloud/core/src/components/UnifiedSearch/LegacySearchResult.vue?vue&type=style&index=0&id=2dec9460&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?vue&type=style&index=0&id=480c8b8e&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/views/LegacyUnifiedSearch.vue?vue&type=style&index=0&id=4cdce41c&prod&lang=scss&scoped=true","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/chunk loaded","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/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/set anonymous default export name","webpack:///nextcloud/webpack/runtime/wrap commonjs module","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=194dfb2a\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js\"\nexport * from \"./Magnify.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 magnify-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\":\"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\"}},[(_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!./LegacySearchResult.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!./LegacySearchResult.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacySearchResult.vue?vue&type=style&index=0&id=2dec9460&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./LegacySearchResult.vue?vue&type=style&index=0&id=2dec9460&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LegacySearchResult.vue?vue&type=template&id=2dec9460&scoped=true\"\nimport script from \"./LegacySearchResult.vue?vue&type=script&lang=js\"\nexport * from \"./LegacySearchResult.vue?vue&type=script&lang=js\"\nimport style0 from \"./LegacySearchResult.vue?vue&type=style&index=0&id=2dec9460&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 \"2dec9460\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{staticClass:\"unified-search__result\",class:{\n\t\t'unified-search__result--focused': _vm.focused,\n\t},attrs:{\"href\":_vm.resourceUrl || '#'},on:{\"click\":_vm.reEmitEvent,\"focus\":_vm.reEmitEvent}},[_c('div',{staticClass:\"unified-search__result-icon\",class:{\n\t\t\t'unified-search__result-icon--rounded': _vm.rounded,\n\t\t\t'unified-search__result-icon--no-preview': !_vm.hasValidThumbnail && !_vm.loaded,\n\t\t\t'unified-search__result-icon--with-thumbnail': _vm.hasValidThumbnail && _vm.loaded,\n\t\t\t[_vm.icon]: !_vm.loaded && !_vm.isIconUrl,\n\t\t},style:({\n\t\t\tbackgroundImage: _vm.isIconUrl ? `url(${_vm.icon})` : '',\n\t\t})},[(_vm.hasValidThumbnail)?_c('img',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loaded),expression:\"loaded\"}],attrs:{\"src\":_vm.thumbnailUrl,\"alt\":\"\"},on:{\"error\":_vm.onError,\"load\":_vm.onLoad}}):_vm._e()]),_vm._v(\" \"),_c('span',{staticClass:\"unified-search__result-content\"},[_c('span',{staticClass:\"unified-search__result-line-one\",attrs:{\"title\":_vm.title}},[_c('NcHighlight',{attrs:{\"text\":_vm.title,\"search\":_vm.query}})],1),_vm._v(\" \"),(_vm.subline)?_c('span',{staticClass:\"unified-search__result-line-two\",attrs:{\"title\":_vm.subline}},[_vm._v(_vm._s(_vm.subline))]):_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!./SearchResultPlaceholders.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!./SearchResultPlaceholders.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultPlaceholders.vue?vue&type=style&index=0&id=480c8b8e&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./SearchResultPlaceholders.vue?vue&type=style&index=0&id=480c8b8e&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchResultPlaceholders.vue?vue&type=template&id=480c8b8e&scoped=true\"\nimport script from \"./SearchResultPlaceholders.vue?vue&type=script&lang=js\"\nexport * from \"./SearchResultPlaceholders.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchResultPlaceholders.vue?vue&type=style&index=0&id=480c8b8e&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 \"480c8b8e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',[_c('svg',{staticClass:\"unified-search__result-placeholder-gradient\"},[_c('defs',[_c('linearGradient',{attrs:{\"id\":\"unified-search__result-placeholder-gradient\"}},[_c('stop',{attrs:{\"offset\":\"0%\",\"stop-color\":_vm.light}},[_c('animate',{attrs:{\"attributeName\":\"stop-color\",\"values\":`${_vm.light}; ${_vm.light}; ${_vm.dark}; ${_vm.dark}; ${_vm.light}`,\"dur\":\"2s\",\"repeatCount\":\"indefinite\"}})]),_vm._v(\" \"),_c('stop',{attrs:{\"offset\":\"100%\",\"stop-color\":_vm.dark}},[_c('animate',{attrs:{\"attributeName\":\"stop-color\",\"values\":`${_vm.dark}; ${_vm.light}; ${_vm.light}; ${_vm.dark}; ${_vm.dark}`,\"dur\":\"2s\",\"repeatCount\":\"indefinite\"}})])],1)],1)]),_vm._v(\" \"),_vm._l(([1, 2, 3]),function(placeholder){return _c('li',{key:placeholder},[_c('svg',{staticClass:\"unified-search__result-placeholder\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"url(#unified-search__result-placeholder-gradient)\"}},[_c('rect',{staticClass:\"unified-search__result-placeholder-icon\"}),_vm._v(\" \"),_c('rect',{staticClass:\"unified-search__result-placeholder-line-one\"}),_vm._v(\" \"),_c('rect',{staticClass:\"unified-search__result-placeholder-line-two\",style:({ width: `calc(${_vm.randWidth()}%)` })})])])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\n/**\n *\n * @param user\n */\nfunction getLogger(user) {\n\tif (user === null) {\n\t\treturn getLoggerBuilder()\n\t\t\t.setApp('core')\n\t\t\t.build()\n\t}\n\treturn getLoggerBuilder()\n\t\t.setApp('core')\n\t\t.setUid(user.uid)\n\t\t.build()\n}\n\nexport default getLogger(getCurrentUser())\n\nexport const unifiedSearchLogger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport axios from '@nextcloud/axios'\nimport { loadState } from '@nextcloud/initial-state'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\nexport const defaultLimit = loadState('unified-search', 'limit-default')\nexport const minSearchLength = loadState('unified-search', 'min-search-length', 1)\nexport const enableLiveSearch = loadState('unified-search', 'live-search', true)\n\nexport const regexFilterIn = /(^|\\s)in:([a-z_-]+)/ig\nexport const regexFilterNot = /(^|\\s)-in:([a-z_-]+)/ig\n\n/**\n * Create a cancel token\n *\n * @return {import('axios').CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Get the list of available search providers\n *\n * @return {Promise}\n */\nexport async function getTypes() {\n\ttry {\n\t\tconst { data } = await axios.get(generateOcsUrl('search/providers'), {\n\t\t\tparams: {\n\t\t\t\t// Sending which location we're currently at\n\t\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t\t},\n\t\t})\n\t\tif ('ocs' in data && 'data' in data.ocs && Array.isArray(data.ocs.data) && data.ocs.data.length > 0) {\n\t\t\t// Providers are sorted by the api based on their order key\n\t\t\treturn data.ocs.data\n\t\t}\n\t} catch (error) {\n\t\tlogger.error(error)\n\t}\n\treturn []\n}\n\n/**\n * Get the list of available search providers\n *\n * @param {object} options destructuring object\n * @param {string} options.type the type to search\n * @param {string} options.query the search\n * @param {number|string|undefined} options.cursor the offset for paginated searches\n * @return {object} {request: Promise, cancel: Promise}\n */\nexport function search({ type, query, cursor }) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\tconst request = async () => axios.get(generateOcsUrl('search/providers/{type}/search', { type }), {\n\t\tcancelToken: cancelToken.token,\n\t\tparams: {\n\t\t\tterm: query,\n\t\t\tcursor,\n\t\t\t// Sending which location we're currently at\n\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t},\n\t})\n\n\treturn {\n\t\trequest,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyUnifiedSearch.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!./LegacyUnifiedSearch.vue?vue&type=script&lang=js\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyUnifiedSearch.vue?vue&type=style&index=0&id=4cdce41c&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./LegacyUnifiedSearch.vue?vue&type=style&index=0&id=4cdce41c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LegacyUnifiedSearch.vue?vue&type=template&id=4cdce41c&scoped=true\"\nimport script from \"./LegacyUnifiedSearch.vue?vue&type=script&lang=js\"\nexport * from \"./LegacyUnifiedSearch.vue?vue&type=script&lang=js\"\nimport style0 from \"./LegacyUnifiedSearch.vue?vue&type=style&index=0&id=4cdce41c&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 \"4cdce41c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcHeaderMenu',{staticClass:\"unified-search\",attrs:{\"id\":\"unified-search\",\"exclude-click-outside-selectors\":['.popover'],\"open\":_vm.open,\"aria-label\":_vm.ariaLabel},on:{\"update:open\":function($event){_vm.open=$event},\"open\":_vm.onOpen,\"close\":_vm.onClose},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('Magnify',{staticClass:\"unified-search__trigger-icon\",attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\" \"),_c('div',{staticClass:\"unified-search__input-wrapper\"},[_c('div',{staticClass:\"unified-search__input-row\"},[_c('NcTextField',{ref:\"input\",staticClass:\"unified-search__form-input\",class:{ 'unified-search__form-input--with-reset': !!_vm.query },attrs:{\"trailing-button-icon\":\"close\",\"label\":_vm.ariaLabel,\"trailing-button-label\":_vm.t('core', 'Reset search'),\"show-trailing-button\":_vm.query !== '',\"aria-describedby\":\"unified-search-desc\",\"placeholder\":_vm.t('core', 'Search {types} …', { types: _vm.typesNames.join(', ') })},on:{\"trailing-button-click\":_vm.onReset,\"input\":_vm.onInputDebounced},model:{value:(_vm.query),callback:function ($$v) {_vm.query=$$v},expression:\"query\"}}),_vm._v(\" \"),_c('p',{staticClass:\"hidden-visually\",attrs:{\"id\":\"unified-search-desc\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search starts once you start typing and results may be reached with the arrow keys'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),(_vm.availableFilters.length > 1)?_c('NcActions',{staticClass:\"unified-search__filters\",attrs:{\"placement\":\"bottom-end\",\"container\":\".unified-search__input-wrapper\"}},_vm._l((_vm.availableFilters),function(filter){return _c('NcActionButton',{key:filter,attrs:{\"icon\":\"icon-filter\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.onClickFilter(`in:${filter}`)}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search for {name} only', { name: _vm.typesMap[filter] }))+\"\\n\\t\\t\\t\\t\")])}),1):_vm._e()],1)]),_vm._v(\" \"),(!_vm.hasResults)?[(_vm.isLoading)?_c('SearchResultPlaceholders'):(_vm.isValidQuery)?_c('NcEmptyContent',{attrs:{\"title\":_vm.validQueryTitle},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Magnify')]},proxy:true}],null,false,931131664)}):(!_vm.isLoading || _vm.isShortQuery)?_c('NcEmptyContent',{attrs:{\"title\":_vm.t('core', 'Start typing to search'),\"description\":_vm.shortQueryDescription},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Magnify')]},proxy:true}],null,false,931131664)}):_vm._e()]:_vm._l((_vm.orderedResults),function({ list, type },typesIndex){return [_c('h2',{key:type,staticClass:\"unified-search__results-header\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.typesMap[type])+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('ul',{key:type,staticClass:\"unified-search__results\",class:`unified-search__results-${type}`,attrs:{\"aria-label\":_vm.typesMap[type]}},[_vm._l((_vm.limitIfAny(list, type)),function(result,index){return _c('li',{key:result.resourceUrl},[_c('SearchResult',_vm._b({attrs:{\"query\":_vm.query,\"focused\":_vm.focused === 0 && typesIndex === 0 && index === 0},on:{\"focus\":_vm.setFocusedIndex}},'SearchResult',result,false))],1)}),_vm._v(\" \"),_c('li',[(!_vm.reached[type])?_c('SearchResult',{staticClass:\"unified-search__result-more\",attrs:{\"title\":_vm.loading[type]\n\t\t\t\t\t\t? _vm.t('core', 'Loading more results …')\n\t\t\t\t\t\t: _vm.t('core', 'Load more results'),\"icon-class\":_vm.loading[type] ? 'icon-loading-small' : ''},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.loadMore(type)},\"focus\":_vm.setFocusedIndex}}):_vm._e()],1)],2)]})],2)\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\nimport { getCSPNonce } from '@nextcloud/auth'\nimport { n, t } from '@nextcloud/l10n'\nimport { getLoggerBuilder } from '@nextcloud/logger'\nimport Vue from 'vue'\nimport UnifiedSearch from './views/LegacyUnifiedSearch.vue'\n\n__webpack_nonce__ = getCSPNonce()\n\nconst logger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n\nVue.mixin({\n\tdata() {\n\t\treturn {\n\t\t\tlogger,\n\t\t}\n\t},\n\tmethods: {\n\t\tt,\n\t\tn,\n\t},\n})\n\nexport default new Vue({\n\tel: '#unified-search',\n\tname: 'UnifiedSearchRoot',\n\trender: (h) => h(UnifiedSearch),\n})\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search__result[data-v-2dec9460]{display:flex;align-items:center;height:44px;padding:10px;border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.unified-search__result--focused[data-v-2dec9460]{background-color:var(--color-background-hover)}.unified-search__result[data-v-2dec9460]:active,.unified-search__result[data-v-2dec9460]:hover,.unified-search__result[data-v-2dec9460]:focus{background-color:var(--color-background-hover);border:2px solid var(--color-border-maxcontrast)}.unified-search__result *[data-v-2dec9460]{cursor:pointer}.unified-search__result-icon[data-v-2dec9460]{overflow:hidden;width:44px;height:44px;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center center;background-size:32px}.unified-search__result-icon--rounded[data-v-2dec9460]{border-radius:22px}.unified-search__result-icon--no-preview[data-v-2dec9460]{background-size:32px}.unified-search__result-icon--with-thumbnail[data-v-2dec9460]{background-size:cover}.unified-search__result-icon--with-thumbnail[data-v-2dec9460]:not(.unified-search__result-icon--rounded){max-width:42px;max-height:42px;border:1px solid var(--color-border)}.unified-search__result-icon img[data-v-2dec9460]{width:100%;height:100%;object-fit:cover;object-position:center}.unified-search__result-icon[data-v-2dec9460],.unified-search__result-actions[data-v-2dec9460]{flex:0 0 44px}.unified-search__result-content[data-v-2dec9460]{display:flex;align-items:center;flex:1 1 100%;flex-wrap:wrap;min-width:0;padding-inline-start:10px}.unified-search__result-line-one[data-v-2dec9460],.unified-search__result-line-two[data-v-2dec9460]{overflow:hidden;flex:1 1 100%;margin:1px 0;white-space:nowrap;text-overflow:ellipsis;color:inherit;font-size:inherit}.unified-search__result-line-two[data-v-2dec9460]{opacity:.7;font-size:var(--default-font-size)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/LegacySearchResult.vue\"],\"names\":[],\"mappings\":\"AAMA,yCACC,YAAA,CACA,kBAAA,CACA,WANgB,CAOhB,YANQ,CAOR,8BAAA,CACA,mDAAA,CAEA,kDACC,8CAAA,CAGD,8IAGC,8CAAA,CACA,gDAAA,CAGD,2CACC,cAAA,CAGD,8CACC,eAAA,CACA,UA5Be,CA6Bf,WA7Be,CA8Bf,kCAAA,CACA,2BAAA,CACA,iCAAA,CACA,oBAAA,CACA,uDACC,kBAAA,CAED,0DACC,oBAAA,CAED,8DACC,qBAAA,CAED,yGAEC,cAAA,CACA,eAAA,CACA,oCAAA,CAGD,kDAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA,CAIF,+FAEC,aAAA,CAGD,iDACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,cAAA,CAEA,WAAA,CACA,yBAvEO,CA0ER,oGAEC,eAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,aAAA,CACA,iBAAA,CAED,kDACC,UAAA,CACA,kCAAA\",\"sourcesContent\":[\"\\n@use \\\"sass:math\\\";\\n\\n$clickable-area: 44px;\\n$margin: 10px;\\n\\n.unified-search__result {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\theight: $clickable-area;\\n\\tpadding: $margin;\\n\\tborder: 2px solid transparent;\\n\\tborder-radius: var(--border-radius-large) !important;\\n\\n\\t&--focused {\\n\\t\\tbackground-color: var(--color-background-hover);\\n\\t}\\n\\n\\t&:active,\\n\\t&:hover,\\n\\t&:focus {\\n\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\tborder: 2px solid var(--color-border-maxcontrast);\\n\\t}\\n\\n\\t* {\\n\\t\\tcursor: pointer;\\n\\t}\\n\\n\\t&-icon {\\n\\t\\toverflow: hidden;\\n\\t\\twidth: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tbackground-position: center center;\\n\\t\\tbackground-size: 32px;\\n\\t\\t&--rounded {\\n\\t\\t\\tborder-radius: math.div($clickable-area, 2);\\n\\t\\t}\\n\\t\\t&--no-preview {\\n\\t\\t\\tbackground-size: 32px;\\n\\t\\t}\\n\\t\\t&--with-thumbnail {\\n\\t\\t\\tbackground-size: cover;\\n\\t\\t}\\n\\t\\t&--with-thumbnail:not(&--rounded) {\\n\\t\\t\\t// compensate for border\\n\\t\\t\\tmax-width: $clickable-area - 2px;\\n\\t\\t\\tmax-height: $clickable-area - 2px;\\n\\t\\t\\tborder: 1px solid var(--color-border);\\n\\t\\t}\\n\\n\\t\\timg {\\n\\t\\t\\t// Make sure to keep ratio\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\n\\t\\t\\tobject-fit: cover;\\n\\t\\t\\tobject-position: center;\\n\\t\\t}\\n\\t}\\n\\n\\t&-icon,\\n\\t&-actions {\\n\\t\\tflex: 0 0 $clickable-area;\\n\\t}\\n\\n\\t&-content {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tflex: 1 1 100%;\\n\\t\\tflex-wrap: wrap;\\n\\t\\t// Set to minimum and gro from it\\n\\t\\tmin-width: 0;\\n\\t\\tpadding-inline-start: $margin;\\n\\t}\\n\\n\\t&-line-one,\\n\\t&-line-two {\\n\\t\\toverflow: hidden;\\n\\t\\tflex: 1 1 100%;\\n\\t\\tmargin: 1px 0;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\t// Use the same color as the `a`\\n\\t\\tcolor: inherit;\\n\\t\\tfont-size: inherit;\\n\\t}\\n\\t&-line-two {\\n\\t\\topacity: .7;\\n\\t\\tfont-size: var(--default-font-size);\\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, `.unified-search__result-placeholder-gradient[data-v-480c8b8e]{position:fixed;height:0;width:0;z-index:-1}.unified-search__result-placeholder[data-v-480c8b8e]{width:calc(100% - 2*10px);height:44px;margin:10px}.unified-search__result-placeholder-icon[data-v-480c8b8e]{width:44px;height:44px;rx:var(--border-radius);ry:var(--border-radius)}.unified-search__result-placeholder-line-one[data-v-480c8b8e],.unified-search__result-placeholder-line-two[data-v-480c8b8e]{width:calc(100% - 54px);height:1em;x:54px}.unified-search__result-placeholder-line-one[data-v-480c8b8e]{y:5px}.unified-search__result-placeholder-line-two[data-v-480c8b8e]{y:25px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue\"],\"names\":[],\"mappings\":\"AAIA,8DACC,cAAA,CACA,QAAA,CACA,OAAA,CACA,UAAA,CAGD,qDACC,yBAAA,CACA,WAZgB,CAahB,WAZQ,CAcR,0DACC,UAhBe,CAiBf,WAjBe,CAkBf,uBAAA,CACA,uBAAA,CAGD,4HAEC,uBAAA,CACA,UAAA,CACA,MAAA,CAGD,8DACC,KAAA,CAGD,8DACC,MAAA\",\"sourcesContent\":[\"\\n$clickable-area: 44px;\\n$margin: 10px;\\n\\n.unified-search__result-placeholder-gradient {\\n\\tposition: fixed;\\n\\theight: 0;\\n\\twidth: 0;\\n\\tz-index: -1;\\n}\\n\\n.unified-search__result-placeholder {\\n\\twidth: calc(100% - 2 * #{$margin});\\n\\theight: $clickable-area;\\n\\tmargin: $margin;\\n\\n\\t&-icon {\\n\\t\\twidth: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\trx: var(--border-radius);\\n\\t\\try: var(--border-radius);\\n\\t}\\n\\n\\t&-line-one,\\n\\t&-line-two {\\n\\t\\twidth: calc(100% - #{$margin + $clickable-area});\\n\\t\\theight: 1em;\\n\\t\\tx: $margin + $clickable-area;\\n\\t}\\n\\n\\t&-line-one {\\n\\t\\ty: 5px;\\n\\t}\\n\\n\\t&-line-two {\\n\\t\\ty: 25px;\\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, `.unified-search__trigger-icon[data-v-4cdce41c]{color:var(--color-background-plain-text) !important}.unified-search__input-wrapper[data-v-4cdce41c]{position:sticky;z-index:2;top:0;display:inline-flex;flex-direction:column;align-items:center;width:100%;background-color:var(--color-main-background)}.unified-search__input-wrapper label[for=unified-search__input][data-v-4cdce41c]{align-self:flex-start;font-weight:bold;font-size:19px;margin-inline-start:13px}.unified-search__input-row[data-v-4cdce41c]{display:flex;width:100%;align-items:center}.unified-search__filters[data-v-4cdce41c]{margin-block:10px;margin-inline:5px 0;padding-top:5px}.unified-search__filters ul[data-v-4cdce41c]{display:inline-flex;justify-content:space-between}.unified-search__form[data-v-4cdce41c]{position:relative;width:100%;margin:10px 0}.unified-search__form[data-v-4cdce41c]::after{inset-inline-start:auto 10px}.unified-search__form-input[data-v-4cdce41c],.unified-search__form-reset[data-v-4cdce41c]{margin:5px}.unified-search__form-input[data-v-4cdce41c]{width:100%;height:34px;padding:10px}.unified-search__form-input[data-v-4cdce41c]:focus,.unified-search__form-input[data-v-4cdce41c]:focus-visible,.unified-search__form-input[data-v-4cdce41c]:active{border-color:2px solid var(--color-main-text) !important;box-shadow:0 0 0 2px var(--color-main-background) !important}.unified-search__form-input[data-v-4cdce41c],.unified-search__form-input[placeholder][data-v-4cdce41c],.unified-search__form-input[data-v-4cdce41c]::placeholder{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.unified-search__form-input[data-v-4cdce41c]::-webkit-search-decoration,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-cancel-button,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-results-button,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-results-decoration{-webkit-appearance:none}.unified-search__form-reset[data-v-4cdce41c],.unified-search__form-submit[data-v-4cdce41c]{position:absolute;top:0;inset-inline-end:4px;width:24px;height:24px;min-height:30px;padding:0;opacity:.5;border:none;background-color:rgba(0,0,0,0);margin-inline-end:0}.unified-search__form-reset[data-v-4cdce41c]:hover,.unified-search__form-reset[data-v-4cdce41c]:focus,.unified-search__form-reset[data-v-4cdce41c]:active,.unified-search__form-submit[data-v-4cdce41c]:hover,.unified-search__form-submit[data-v-4cdce41c]:focus,.unified-search__form-submit[data-v-4cdce41c]:active{opacity:1}.unified-search__form-submit[data-v-4cdce41c]{inset-inline-end:28px}.unified-search__results[data-v-4cdce41c]{display:flex;flex-direction:column;gap:4px}.unified-search__results-header[data-v-4cdce41c]{display:block;margin:10px;margin-bottom:6px;margin-inline-start:13px;color:var(--color-primary-element);font-size:19px;font-weight:bold}.unified-search[data-v-4cdce41c] .unified-search__result-more{color:var(--color-text-maxcontrast)}.unified-search .empty-content[data-v-4cdce41c]{margin:10vh 0}.unified-search .empty-content[data-v-4cdce41c] .empty-content__title{font-weight:normal;font-size:var(--default-font-size);text-align:center}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/LegacyUnifiedSearch.vue\"],\"names\":[],\"mappings\":\"AAQC,+CACC,mDAAA,CAGD,gDACC,eAAA,CAEA,SAAA,CACA,KAAA,CACA,mBAAA,CACA,qBAAA,CACA,kBAAA,CACA,UAAA,CACA,6CAAA,CAEA,iFACC,qBAAA,CACA,gBAAA,CACA,cAAA,CACA,wBAAA,CAIF,4CACC,YAAA,CACA,UAAA,CACA,kBAAA,CAGD,0CACC,iBAnCO,CAoCP,mBAAA,CACA,eAAA,CACA,6CACC,mBAAA,CACA,6BAAA,CAIF,uCACC,iBAAA,CACA,UAAA,CACA,aAAA,CAGA,8CACA,4BAAA,CAGA,0FAEC,UAAA,CAGD,6CACC,UAAA,CACA,WA5DY,CA6DZ,YA5Da,CA8Db,kKAGC,wDAAA,CACA,4DAAA,CAGD,iKAGC,eAAA,CACA,kBAAA,CACA,sBAAA,CAID,+SAIC,uBAAA,CAIF,2FAEC,iBAAA,CACA,KAAA,CACA,oBAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CAEA,uTAGC,SAAA,CAIF,8CACC,qBAAA,CAIF,0CACC,YAAA,CACA,qBAAA,CACA,OAAA,CAEA,iDACC,aAAA,CACA,WAzHM,CA0HN,iBAAA,CACA,wBAAA,CACA,kCAAA,CACA,cAAA,CACA,gBAAA,CAIF,8DACC,mCAAA,CAGD,gDACC,aAAA,CAEA,sEACC,kBAAA,CACA,kCAAA,CACA,iBAAA\",\"sourcesContent\":[\"\\n@use \\\"sass:math\\\";\\n\\n$margin: 10px;\\n$input-height: 34px;\\n$input-padding: 10px;\\n\\n.unified-search {\\n\\t&__trigger-icon {\\n\\t\\tcolor: var(--color-background-plain-text) !important;\\n\\t}\\n\\n\\t&__input-wrapper {\\n\\t\\tposition: sticky;\\n\\t\\t// above search results\\n\\t\\tz-index: 2;\\n\\t\\ttop: 0;\\n\\t\\tdisplay: inline-flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\twidth: 100%;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\tlabel[for=\\\"unified-search__input\\\"] {\\n\\t\\t\\talign-self: flex-start;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 19px;\\n\\t\\t\\tmargin-inline-start: 13px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__input-row {\\n\\t\\tdisplay: flex;\\n\\t\\twidth: 100%;\\n\\t\\talign-items: center;\\n\\t}\\n\\n\\t&__filters {\\n\\t\\tmargin-block: $margin;\\n\\t\\tmargin-inline: math.div($margin, 2) 0;\\n\\t\\tpadding-top: 5px;\\n\\t\\tul {\\n\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\tjustify-content: space-between;\\n\\t\\t}\\n\\t}\\n\\n\\t&__form {\\n\\t\\tposition: relative;\\n\\t\\twidth: 100%;\\n\\t\\tmargin: $margin 0;\\n\\n\\t\\t// Loading spinner\\n\\t\\t&::after {\\n\\t\\tinset-inline-start: auto $input-padding;\\n\\t\\t}\\n\\n\\t\\t&-input,\\n\\t\\t&-reset {\\n\\t\\t\\tmargin: math.div($input-padding, 2);\\n\\t\\t}\\n\\n\\t\\t&-input {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: $input-height;\\n\\t\\t\\tpadding: $input-padding;\\n\\n\\t\\t\\t&:focus,\\n\\t\\t\\t&:focus-visible,\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\tborder-color: 2px solid var(--color-main-text) !important;\\n\\t\\t\\t\\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&,\\n\\t\\t\\t&[placeholder],\\n\\t\\t\\t&::placeholder {\\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\\n\\t\\t\\t// Hide webkit clear search\\n\\t\\t\\t&::-webkit-search-decoration,\\n\\t\\t\\t&::-webkit-search-cancel-button,\\n\\t\\t\\t&::-webkit-search-results-button,\\n\\t\\t\\t&::-webkit-search-results-decoration {\\n\\t\\t\\t\\t-webkit-appearance: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&-reset,\\n\\t\\t&-submit {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tinset-inline-end: 4px;\\n\\t\\t\\twidth: $input-height - $input-padding;\\n\\t\\t\\theight: $input-height - $input-padding;\\n\\t\\t\\tmin-height: 30px;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\topacity: .5;\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t\\tmargin-inline-end: 0;\\n\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus,\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\topacity: 1;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&-submit {\\n\\t\\t\\tinset-inline-end: 28px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__results {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: 4px;\\n\\n\\t\\t&-header {\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\tmargin: $margin;\\n\\t\\t\\tmargin-bottom: $margin - 4px;\\n\\t\\t\\tmargin-inline-start: 13px;\\n\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\tfont-size: 19px;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t}\\n\\t}\\n\\n\\t:deep(.unified-search__result-more) {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n\\n\\t.empty-content {\\n\\t\\tmargin: 10vh 0;\\n\\n\\t\\t:deep(.empty-content__title) {\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t\\ttext-align: center;\\n\\t\\t}\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst 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\tconst 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","const 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\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet 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\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst 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/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\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=\" + {\"4005\":\"aee79e7f1049b5e8188f\",\"4017\":\"d1523b8db423fbe47986\",\"5236\":\"295a99f2ba6e3a05a834\",\"7859\":\"0aa7564896cee7ea552c\",\"8259\":\"e914ef6a65a38374620a\",\"8374\":\"e925f5901b71aeaa37db\",\"8689\":\"5fcce4026be999b251c3\"}[chunkId] + \"\";\n};","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","const inProgress = {};\nconst dataWebpackPrefix = \"nextcloud-ui-legacy:\";\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\tlet script, needAttach;\n\tif(key !== undefined) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tconst 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\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\tconst onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tconst doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode?.removeChild(script);\n\t\tdoneFns?.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tconst 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};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(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 = 1684;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","let scriptUrl;\nif (globalThis.importScripts) scriptUrl = globalThis.location + \"\";\nconst document = globalThis.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript?.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tlet 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(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = (typeof document !== 'undefined' && 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\nconst installedChunks = {\n\t1684: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tlet 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\tconst 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\tconst 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\tconst error = new Error();\n\t\t\t\t\tconst 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\tconst errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tconst 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\terror.event = event;\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\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\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\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\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\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(50556)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["vue_material_design_icons_Magnifyvue_type_script_lang_js","name","emits","props","title","type","String","fillColor","default","size","Number","Magnify","componentNormalizer","A","_vm","this","_c","_self","_b","staticClass","attrs","role","on","click","$event","$emit","$attrs","fill","width","height","viewBox","d","_v","_s","_e","UnifiedSearch_LegacySearchResultvue_type_script_lang_js","components","NcHighlight","thumbnailUrl","required","subline","resourceUrl","icon","rounded","Boolean","query","focused","data","hasValidThumbnail","trim","loaded","computed","isIconUrl","startsWith","URL","watch","methods","reEmitEvent","e","onError","onLoad","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","LegacySearchResultvue_type_style_index_0_id_2dec9460_prod_lang_scss_scoped_true","locals","LegacySearchResult","class","href","focus","style","backgroundImage","directives","rawName","value","expression","src","alt","error","load","text","search","UnifiedSearch_SearchResultPlaceholdersvue_type_script_lang_js","light","dark","mounted","styles","getComputedStyle","document","documentElement","getPropertyValue","randWidth","Math","floor","random","SearchResultPlaceholdersvue_type_style_index_0_id_480c8b8e_prod_lang_scss_scoped_true_options","SearchResultPlaceholdersvue_type_style_index_0_id_480c8b8e_prod_lang_scss_scoped_true","SearchResultPlaceholders","id","offset","attributeName","values","dur","repeatCount","_l","placeholder","key","xmlns","logger","user","getCurrentUser","getLoggerBuilder","setApp","build","setUid","uid","detectUser","defaultLimit","loadState","minSearchLength","enableLiveSearch","regexFilterIn","regexFilterNot","async","getTypes","axios","get","generateOcsUrl","params","from","window","location","pathname","replace","ocs","Array","isArray","length","cursor","cancelToken","CancelToken","source","request","token","term","cancel","views_LegacyUnifiedSearchvue_type_script_lang_js","NcActionButton","NcActions","NcEmptyContent","NcHeaderMenu","SearchResult","NcTextField","types","cursors","limits","loading","reached","requests","results","triggered","open","typesIDs","map","typesNames","typesMap","reduce","prev","curr","ariaLabel","t","hasResults","Object","keys","orderedResults","filter","list","availableFilters","usedFiltersIn","match","filters","exec","push","usedFiltersNot","validQueryTitle","shortQueryDescription","isShortQuery","n","isValidQuery","isDoneSearching","every","state","isLoading","some","created","debug","beforeDestroy","unsubscribe","onNavigationChange","subscribe","OCP","Accessibility","disableKeyboardShortcuts","addEventListener","event","ctrlKey","code","preventDefault","focusNext","focusPrev","onOpen","onClose","emit","$el","querySelector","reset","onReset","resetState","focusInput","cancelPendingRequests","slice","Promise","all","$nextTick","$refs","input","select","onInputEnter","getResultsList","onInput","$delete","indexOf","$set","entries","isPaginated","response","status","showError","then","result","onInputDebounced","debounce","loadMore","focusIndex","limitIfAny","querySelectorAll","focusFirst","index","setFocusedIndex","entry","target","findIndex","onClickFilter","LegacyUnifiedSearchvue_type_style_index_0_id_4cdce41c_prod_lang_scss_scoped_true_options","LegacyUnifiedSearchvue_type_style_index_0_id_4cdce41c_prod_lang_scss_scoped_true","LegacyUnifiedSearch","close","scopedSlots","_u","fn","proxy","ref","label","join","model","callback","$$v","placement","container","stopPropagation","typesIndex","description","__webpack_nonce__","getCSPNonce","Vue","mixin","l10n_dist","el","render","h","UnifiedSearch","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","module","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","__webpack_modules__","call","m","deferred","O","chunkIds","priority","i","notFulfilled","Infinity","fulfilled","j","splice","r","getter","__esModule","a","definition","binding","o","defineProperty","enumerable","f","chunkId","promises","u","obj","prop","hasOwn","inProgress","dataWebpackPrefix","l","url","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","onerror","onload","clearTimeout","timeout","doneFns","parentNode","removeChild","forEach","setTimeout","head","appendChild","Symbol","toStringTag","nmd","paths","children","dn","x","descriptor","getOwnPropertyDescriptor","writable","configurable","cjs","body","mod","scriptUrl","globalThis","importScripts","currentScript","tagName","toUpperCase","test","Error","p","b","baseURI","self","installedChunks","installedChunkData","promise","resolve","reject","loadingEnded","errorType","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"core-legacy-unified-search.js?v=c1c73c6eb1bb2e795bea","mappings":"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","sources":["webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Magnify.vue?0775","webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=194dfb2a","webpack:///nextcloud/core/src/components/UnifiedSearch/LegacySearchResult.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/LegacySearchResult.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/LegacySearchResult.vue?6c9b","webpack://nextcloud/./core/src/components/UnifiedSearch/LegacySearchResult.vue?1729","webpack://nextcloud/./core/src/components/UnifiedSearch/LegacySearchResult.vue?de39","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultPlaceholders.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?cd0a","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?7f72","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?cc53","webpack:///nextcloud/core/src/logger.js","webpack:///nextcloud/core/src/services/LegacyUnifiedSearchService.js","webpack:///nextcloud/core/src/views/LegacyUnifiedSearch.vue","webpack:///nextcloud/core/src/views/LegacyUnifiedSearch.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/views/LegacyUnifiedSearch.vue?1b71","webpack://nextcloud/./core/src/views/LegacyUnifiedSearch.vue?bfe7","webpack://nextcloud/./core/src/views/LegacyUnifiedSearch.vue?b8e8","webpack:///nextcloud/core/src/legacy-unified-search.js","webpack:///nextcloud/core/src/components/UnifiedSearch/LegacySearchResult.vue?vue&type=style&index=0&id=2dec9460&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultPlaceholders.vue?vue&type=style&index=0&id=480c8b8e&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/views/LegacyUnifiedSearch.vue?vue&type=style&index=0&id=4cdce41c&prod&lang=scss&scoped=true","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/chunk loaded","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/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/set anonymous default export name","webpack:///nextcloud/webpack/runtime/wrap commonjs module","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=194dfb2a\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js\"\nexport * from \"./Magnify.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 magnify-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\":\"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\"}},[(_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!./LegacySearchResult.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!./LegacySearchResult.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacySearchResult.vue?vue&type=style&index=0&id=2dec9460&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacySearchResult.vue?vue&type=style&index=0&id=2dec9460&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LegacySearchResult.vue?vue&type=template&id=2dec9460&scoped=true\"\nimport script from \"./LegacySearchResult.vue?vue&type=script&lang=js\"\nexport * from \"./LegacySearchResult.vue?vue&type=script&lang=js\"\nimport style0 from \"./LegacySearchResult.vue?vue&type=style&index=0&id=2dec9460&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 \"2dec9460\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{staticClass:\"unified-search__result\",class:{\n\t\t'unified-search__result--focused': _vm.focused,\n\t},attrs:{\"href\":_vm.resourceUrl || '#'},on:{\"click\":_vm.reEmitEvent,\"focus\":_vm.reEmitEvent}},[_c('div',{staticClass:\"unified-search__result-icon\",class:{\n\t\t\t'unified-search__result-icon--rounded': _vm.rounded,\n\t\t\t'unified-search__result-icon--no-preview': !_vm.hasValidThumbnail && !_vm.loaded,\n\t\t\t'unified-search__result-icon--with-thumbnail': _vm.hasValidThumbnail && _vm.loaded,\n\t\t\t[_vm.icon]: !_vm.loaded && !_vm.isIconUrl,\n\t\t},style:({\n\t\t\tbackgroundImage: _vm.isIconUrl ? `url(${_vm.icon})` : '',\n\t\t})},[(_vm.hasValidThumbnail)?_c('img',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loaded),expression:\"loaded\"}],attrs:{\"src\":_vm.thumbnailUrl,\"alt\":\"\"},on:{\"error\":_vm.onError,\"load\":_vm.onLoad}}):_vm._e()]),_vm._v(\" \"),_c('span',{staticClass:\"unified-search__result-content\"},[_c('span',{staticClass:\"unified-search__result-line-one\",attrs:{\"title\":_vm.title}},[_c('NcHighlight',{attrs:{\"text\":_vm.title,\"search\":_vm.query}})],1),_vm._v(\" \"),(_vm.subline)?_c('span',{staticClass:\"unified-search__result-line-two\",attrs:{\"title\":_vm.subline}},[_vm._v(_vm._s(_vm.subline))]):_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!./SearchResultPlaceholders.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!./SearchResultPlaceholders.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultPlaceholders.vue?vue&type=style&index=0&id=480c8b8e&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultPlaceholders.vue?vue&type=style&index=0&id=480c8b8e&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchResultPlaceholders.vue?vue&type=template&id=480c8b8e&scoped=true\"\nimport script from \"./SearchResultPlaceholders.vue?vue&type=script&lang=js\"\nexport * from \"./SearchResultPlaceholders.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchResultPlaceholders.vue?vue&type=style&index=0&id=480c8b8e&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 \"480c8b8e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',[_c('svg',{staticClass:\"unified-search__result-placeholder-gradient\"},[_c('defs',[_c('linearGradient',{attrs:{\"id\":\"unified-search__result-placeholder-gradient\"}},[_c('stop',{attrs:{\"offset\":\"0%\",\"stop-color\":_vm.light}},[_c('animate',{attrs:{\"attributeName\":\"stop-color\",\"values\":`${_vm.light}; ${_vm.light}; ${_vm.dark}; ${_vm.dark}; ${_vm.light}`,\"dur\":\"2s\",\"repeatCount\":\"indefinite\"}})]),_vm._v(\" \"),_c('stop',{attrs:{\"offset\":\"100%\",\"stop-color\":_vm.dark}},[_c('animate',{attrs:{\"attributeName\":\"stop-color\",\"values\":`${_vm.dark}; ${_vm.light}; ${_vm.light}; ${_vm.dark}; ${_vm.dark}`,\"dur\":\"2s\",\"repeatCount\":\"indefinite\"}})])],1)],1)]),_vm._v(\" \"),_vm._l(([1, 2, 3]),function(placeholder){return _c('li',{key:placeholder},[_c('svg',{staticClass:\"unified-search__result-placeholder\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"url(#unified-search__result-placeholder-gradient)\"}},[_c('rect',{staticClass:\"unified-search__result-placeholder-icon\"}),_vm._v(\" \"),_c('rect',{staticClass:\"unified-search__result-placeholder-line-one\"}),_vm._v(\" \"),_c('rect',{staticClass:\"unified-search__result-placeholder-line-two\",style:({ width: `calc(${_vm.randWidth()}%)` })})])])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\n/**\n *\n * @param user\n */\nfunction getLogger(user) {\n\tif (user === null) {\n\t\treturn getLoggerBuilder()\n\t\t\t.setApp('core')\n\t\t\t.build()\n\t}\n\treturn getLoggerBuilder()\n\t\t.setApp('core')\n\t\t.setUid(user.uid)\n\t\t.build()\n}\n\nexport default getLogger(getCurrentUser())\n\nexport const unifiedSearchLogger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport axios from '@nextcloud/axios'\nimport { loadState } from '@nextcloud/initial-state'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\nexport const defaultLimit = loadState('unified-search', 'limit-default')\nexport const minSearchLength = loadState('unified-search', 'min-search-length', 1)\nexport const enableLiveSearch = loadState('unified-search', 'live-search', true)\n\nexport const regexFilterIn = /(^|\\s)in:([a-z_-]+)/ig\nexport const regexFilterNot = /(^|\\s)-in:([a-z_-]+)/ig\n\n/**\n * Create a cancel token\n *\n * @return {import('axios').CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Get the list of available search providers\n *\n * @return {Promise}\n */\nexport async function getTypes() {\n\ttry {\n\t\tconst { data } = await axios.get(generateOcsUrl('search/providers'), {\n\t\t\tparams: {\n\t\t\t\t// Sending which location we're currently at\n\t\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t\t},\n\t\t})\n\t\tif ('ocs' in data && 'data' in data.ocs && Array.isArray(data.ocs.data) && data.ocs.data.length > 0) {\n\t\t\t// Providers are sorted by the api based on their order key\n\t\t\treturn data.ocs.data\n\t\t}\n\t} catch (error) {\n\t\tlogger.error(error)\n\t}\n\treturn []\n}\n\n/**\n * Get the list of available search providers\n *\n * @param {object} options destructuring object\n * @param {string} options.type the type to search\n * @param {string} options.query the search\n * @param {number|string|undefined} options.cursor the offset for paginated searches\n * @return {object} {request: Promise, cancel: Promise}\n */\nexport function search({ type, query, cursor }) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\tconst request = async () => axios.get(generateOcsUrl('search/providers/{type}/search', { type }), {\n\t\tcancelToken: cancelToken.token,\n\t\tparams: {\n\t\t\tterm: query,\n\t\t\tcursor,\n\t\t\t// Sending which location we're currently at\n\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t},\n\t})\n\n\treturn {\n\t\trequest,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyUnifiedSearch.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!./LegacyUnifiedSearch.vue?vue&type=script&lang=js\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyUnifiedSearch.vue?vue&type=style&index=0&id=4cdce41c&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LegacyUnifiedSearch.vue?vue&type=style&index=0&id=4cdce41c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LegacyUnifiedSearch.vue?vue&type=template&id=4cdce41c&scoped=true\"\nimport script from \"./LegacyUnifiedSearch.vue?vue&type=script&lang=js\"\nexport * from \"./LegacyUnifiedSearch.vue?vue&type=script&lang=js\"\nimport style0 from \"./LegacyUnifiedSearch.vue?vue&type=style&index=0&id=4cdce41c&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 \"4cdce41c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcHeaderMenu',{staticClass:\"unified-search\",attrs:{\"id\":\"unified-search\",\"exclude-click-outside-selectors\":['.popover'],\"open\":_vm.open,\"aria-label\":_vm.ariaLabel},on:{\"update:open\":function($event){_vm.open=$event},\"open\":_vm.onOpen,\"close\":_vm.onClose},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('Magnify',{staticClass:\"unified-search__trigger-icon\",attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\" \"),_c('div',{staticClass:\"unified-search__input-wrapper\"},[_c('div',{staticClass:\"unified-search__input-row\"},[_c('NcTextField',{ref:\"input\",staticClass:\"unified-search__form-input\",class:{ 'unified-search__form-input--with-reset': !!_vm.query },attrs:{\"trailing-button-icon\":\"close\",\"label\":_vm.ariaLabel,\"trailing-button-label\":_vm.t('core', 'Reset search'),\"show-trailing-button\":_vm.query !== '',\"aria-describedby\":\"unified-search-desc\",\"placeholder\":_vm.t('core', 'Search {types} …', { types: _vm.typesNames.join(', ') })},on:{\"trailing-button-click\":_vm.onReset,\"input\":_vm.onInputDebounced},model:{value:(_vm.query),callback:function ($$v) {_vm.query=$$v},expression:\"query\"}}),_vm._v(\" \"),_c('p',{staticClass:\"hidden-visually\",attrs:{\"id\":\"unified-search-desc\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search starts once you start typing and results may be reached with the arrow keys'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),(_vm.availableFilters.length > 1)?_c('NcActions',{staticClass:\"unified-search__filters\",attrs:{\"placement\":\"bottom-end\",\"container\":\".unified-search__input-wrapper\"}},_vm._l((_vm.availableFilters),function(filter){return _c('NcActionButton',{key:filter,attrs:{\"icon\":\"icon-filter\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.onClickFilter(`in:${filter}`)}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search for {name} only', { name: _vm.typesMap[filter] }))+\"\\n\\t\\t\\t\\t\")])}),1):_vm._e()],1)]),_vm._v(\" \"),(!_vm.hasResults)?[(_vm.isLoading)?_c('SearchResultPlaceholders'):(_vm.isValidQuery)?_c('NcEmptyContent',{attrs:{\"title\":_vm.validQueryTitle},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Magnify')]},proxy:true}],null,false,931131664)}):(!_vm.isLoading || _vm.isShortQuery)?_c('NcEmptyContent',{attrs:{\"title\":_vm.t('core', 'Start typing to search'),\"description\":_vm.shortQueryDescription},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Magnify')]},proxy:true}],null,false,931131664)}):_vm._e()]:_vm._l((_vm.orderedResults),function({ list, type },typesIndex){return [_c('h2',{key:type,staticClass:\"unified-search__results-header\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.typesMap[type])+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('ul',{key:type,staticClass:\"unified-search__results\",class:`unified-search__results-${type}`,attrs:{\"aria-label\":_vm.typesMap[type]}},[_vm._l((_vm.limitIfAny(list, type)),function(result,index){return _c('li',{key:result.resourceUrl},[_c('SearchResult',_vm._b({attrs:{\"query\":_vm.query,\"focused\":_vm.focused === 0 && typesIndex === 0 && index === 0},on:{\"focus\":_vm.setFocusedIndex}},'SearchResult',result,false))],1)}),_vm._v(\" \"),_c('li',[(!_vm.reached[type])?_c('SearchResult',{staticClass:\"unified-search__result-more\",attrs:{\"title\":_vm.loading[type]\n\t\t\t\t\t\t? _vm.t('core', 'Loading more results …')\n\t\t\t\t\t\t: _vm.t('core', 'Load more results'),\"icon-class\":_vm.loading[type] ? 'icon-loading-small' : ''},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.loadMore(type)},\"focus\":_vm.setFocusedIndex}}):_vm._e()],1)],2)]})],2)\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\nimport { getCSPNonce } from '@nextcloud/auth'\nimport { n, t } from '@nextcloud/l10n'\nimport { getLoggerBuilder } from '@nextcloud/logger'\nimport Vue from 'vue'\nimport UnifiedSearch from './views/LegacyUnifiedSearch.vue'\n\n__webpack_nonce__ = getCSPNonce()\n\nconst logger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n\nVue.mixin({\n\tdata() {\n\t\treturn {\n\t\t\tlogger,\n\t\t}\n\t},\n\tmethods: {\n\t\tt,\n\t\tn,\n\t},\n})\n\nexport default new Vue({\n\tel: '#unified-search',\n\tname: 'UnifiedSearchRoot',\n\trender: (h) => h(UnifiedSearch),\n})\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search__result[data-v-2dec9460]{display:flex;align-items:center;height:44px;padding:10px;border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.unified-search__result--focused[data-v-2dec9460]{background-color:var(--color-background-hover)}.unified-search__result[data-v-2dec9460]:active,.unified-search__result[data-v-2dec9460]:hover,.unified-search__result[data-v-2dec9460]:focus{background-color:var(--color-background-hover);border:2px solid var(--color-border-maxcontrast)}.unified-search__result *[data-v-2dec9460]{cursor:pointer}.unified-search__result-icon[data-v-2dec9460]{overflow:hidden;width:44px;height:44px;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center center;background-size:32px}.unified-search__result-icon--rounded[data-v-2dec9460]{border-radius:22px}.unified-search__result-icon--no-preview[data-v-2dec9460]{background-size:32px}.unified-search__result-icon--with-thumbnail[data-v-2dec9460]{background-size:cover}.unified-search__result-icon--with-thumbnail[data-v-2dec9460]:not(.unified-search__result-icon--rounded){max-width:42px;max-height:42px;border:1px solid var(--color-border)}.unified-search__result-icon img[data-v-2dec9460]{width:100%;height:100%;object-fit:cover;object-position:center}.unified-search__result-icon[data-v-2dec9460],.unified-search__result-actions[data-v-2dec9460]{flex:0 0 44px}.unified-search__result-content[data-v-2dec9460]{display:flex;align-items:center;flex:1 1 100%;flex-wrap:wrap;min-width:0;padding-inline-start:10px}.unified-search__result-line-one[data-v-2dec9460],.unified-search__result-line-two[data-v-2dec9460]{overflow:hidden;flex:1 1 100%;margin:1px 0;white-space:nowrap;text-overflow:ellipsis;color:inherit;font-size:inherit}.unified-search__result-line-two[data-v-2dec9460]{opacity:.7;font-size:var(--default-font-size)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/LegacySearchResult.vue\"],\"names\":[],\"mappings\":\"AAMA,yCACC,YAAA,CACA,kBAAA,CACA,WANgB,CAOhB,YANQ,CAOR,8BAAA,CACA,mDAAA,CAEA,kDACC,8CAAA,CAGD,8IAGC,8CAAA,CACA,gDAAA,CAGD,2CACC,cAAA,CAGD,8CACC,eAAA,CACA,UA5Be,CA6Bf,WA7Be,CA8Bf,kCAAA,CACA,2BAAA,CACA,iCAAA,CACA,oBAAA,CACA,uDACC,kBAAA,CAED,0DACC,oBAAA,CAED,8DACC,qBAAA,CAED,yGAEC,cAAA,CACA,eAAA,CACA,oCAAA,CAGD,kDAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA,CAIF,+FAEC,aAAA,CAGD,iDACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,cAAA,CAEA,WAAA,CACA,yBAvEO,CA0ER,oGAEC,eAAA,CACA,aAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,aAAA,CACA,iBAAA,CAED,kDACC,UAAA,CACA,kCAAA\",\"sourcesContent\":[\"\\n@use \\\"sass:math\\\";\\n\\n$clickable-area: 44px;\\n$margin: 10px;\\n\\n.unified-search__result {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\theight: $clickable-area;\\n\\tpadding: $margin;\\n\\tborder: 2px solid transparent;\\n\\tborder-radius: var(--border-radius-large) !important;\\n\\n\\t&--focused {\\n\\t\\tbackground-color: var(--color-background-hover);\\n\\t}\\n\\n\\t&:active,\\n\\t&:hover,\\n\\t&:focus {\\n\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\tborder: 2px solid var(--color-border-maxcontrast);\\n\\t}\\n\\n\\t* {\\n\\t\\tcursor: pointer;\\n\\t}\\n\\n\\t&-icon {\\n\\t\\toverflow: hidden;\\n\\t\\twidth: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tbackground-position: center center;\\n\\t\\tbackground-size: 32px;\\n\\t\\t&--rounded {\\n\\t\\t\\tborder-radius: math.div($clickable-area, 2);\\n\\t\\t}\\n\\t\\t&--no-preview {\\n\\t\\t\\tbackground-size: 32px;\\n\\t\\t}\\n\\t\\t&--with-thumbnail {\\n\\t\\t\\tbackground-size: cover;\\n\\t\\t}\\n\\t\\t&--with-thumbnail:not(&--rounded) {\\n\\t\\t\\t// compensate for border\\n\\t\\t\\tmax-width: $clickable-area - 2px;\\n\\t\\t\\tmax-height: $clickable-area - 2px;\\n\\t\\t\\tborder: 1px solid var(--color-border);\\n\\t\\t}\\n\\n\\t\\timg {\\n\\t\\t\\t// Make sure to keep ratio\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\n\\t\\t\\tobject-fit: cover;\\n\\t\\t\\tobject-position: center;\\n\\t\\t}\\n\\t}\\n\\n\\t&-icon,\\n\\t&-actions {\\n\\t\\tflex: 0 0 $clickable-area;\\n\\t}\\n\\n\\t&-content {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tflex: 1 1 100%;\\n\\t\\tflex-wrap: wrap;\\n\\t\\t// Set to minimum and gro from it\\n\\t\\tmin-width: 0;\\n\\t\\tpadding-inline-start: $margin;\\n\\t}\\n\\n\\t&-line-one,\\n\\t&-line-two {\\n\\t\\toverflow: hidden;\\n\\t\\tflex: 1 1 100%;\\n\\t\\tmargin: 1px 0;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\t// Use the same color as the `a`\\n\\t\\tcolor: inherit;\\n\\t\\tfont-size: inherit;\\n\\t}\\n\\t&-line-two {\\n\\t\\topacity: .7;\\n\\t\\tfont-size: var(--default-font-size);\\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, `.unified-search__result-placeholder-gradient[data-v-480c8b8e]{position:fixed;height:0;width:0;z-index:-1}.unified-search__result-placeholder[data-v-480c8b8e]{width:calc(100% - 2*10px);height:44px;margin:10px}.unified-search__result-placeholder-icon[data-v-480c8b8e]{width:44px;height:44px;rx:var(--border-radius);ry:var(--border-radius)}.unified-search__result-placeholder-line-one[data-v-480c8b8e],.unified-search__result-placeholder-line-two[data-v-480c8b8e]{width:calc(100% - 54px);height:1em;x:54px}.unified-search__result-placeholder-line-one[data-v-480c8b8e]{y:5px}.unified-search__result-placeholder-line-two[data-v-480c8b8e]{y:25px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchResultPlaceholders.vue\"],\"names\":[],\"mappings\":\"AAIA,8DACC,cAAA,CACA,QAAA,CACA,OAAA,CACA,UAAA,CAGD,qDACC,yBAAA,CACA,WAZgB,CAahB,WAZQ,CAcR,0DACC,UAhBe,CAiBf,WAjBe,CAkBf,uBAAA,CACA,uBAAA,CAGD,4HAEC,uBAAA,CACA,UAAA,CACA,MAAA,CAGD,8DACC,KAAA,CAGD,8DACC,MAAA\",\"sourcesContent\":[\"\\n$clickable-area: 44px;\\n$margin: 10px;\\n\\n.unified-search__result-placeholder-gradient {\\n\\tposition: fixed;\\n\\theight: 0;\\n\\twidth: 0;\\n\\tz-index: -1;\\n}\\n\\n.unified-search__result-placeholder {\\n\\twidth: calc(100% - 2 * #{$margin});\\n\\theight: $clickable-area;\\n\\tmargin: $margin;\\n\\n\\t&-icon {\\n\\t\\twidth: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\trx: var(--border-radius);\\n\\t\\try: var(--border-radius);\\n\\t}\\n\\n\\t&-line-one,\\n\\t&-line-two {\\n\\t\\twidth: calc(100% - #{$margin + $clickable-area});\\n\\t\\theight: 1em;\\n\\t\\tx: $margin + $clickable-area;\\n\\t}\\n\\n\\t&-line-one {\\n\\t\\ty: 5px;\\n\\t}\\n\\n\\t&-line-two {\\n\\t\\ty: 25px;\\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, `.unified-search__trigger-icon[data-v-4cdce41c]{color:var(--color-background-plain-text) !important}.unified-search__input-wrapper[data-v-4cdce41c]{position:sticky;z-index:2;top:0;display:inline-flex;flex-direction:column;align-items:center;width:100%;background-color:var(--color-main-background)}.unified-search__input-wrapper label[for=unified-search__input][data-v-4cdce41c]{align-self:flex-start;font-weight:bold;font-size:19px;margin-inline-start:13px}.unified-search__input-row[data-v-4cdce41c]{display:flex;width:100%;align-items:center}.unified-search__filters[data-v-4cdce41c]{margin-block:10px;margin-inline:5px 0;padding-top:5px}.unified-search__filters ul[data-v-4cdce41c]{display:inline-flex;justify-content:space-between}.unified-search__form[data-v-4cdce41c]{position:relative;width:100%;margin:10px 0}.unified-search__form[data-v-4cdce41c]::after{inset-inline-start:auto 10px}.unified-search__form-input[data-v-4cdce41c],.unified-search__form-reset[data-v-4cdce41c]{margin:5px}.unified-search__form-input[data-v-4cdce41c]{width:100%;height:34px;padding:10px}.unified-search__form-input[data-v-4cdce41c]:focus,.unified-search__form-input[data-v-4cdce41c]:focus-visible,.unified-search__form-input[data-v-4cdce41c]:active{border-color:2px solid var(--color-main-text) !important;box-shadow:0 0 0 2px var(--color-main-background) !important}.unified-search__form-input[data-v-4cdce41c],.unified-search__form-input[placeholder][data-v-4cdce41c],.unified-search__form-input[data-v-4cdce41c]::placeholder{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.unified-search__form-input[data-v-4cdce41c]::-webkit-search-decoration,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-cancel-button,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-results-button,.unified-search__form-input[data-v-4cdce41c]::-webkit-search-results-decoration{-webkit-appearance:none}.unified-search__form-reset[data-v-4cdce41c],.unified-search__form-submit[data-v-4cdce41c]{position:absolute;top:0;inset-inline-end:4px;width:24px;height:24px;min-height:30px;padding:0;opacity:.5;border:none;background-color:rgba(0,0,0,0);margin-inline-end:0}.unified-search__form-reset[data-v-4cdce41c]:hover,.unified-search__form-reset[data-v-4cdce41c]:focus,.unified-search__form-reset[data-v-4cdce41c]:active,.unified-search__form-submit[data-v-4cdce41c]:hover,.unified-search__form-submit[data-v-4cdce41c]:focus,.unified-search__form-submit[data-v-4cdce41c]:active{opacity:1}.unified-search__form-submit[data-v-4cdce41c]{inset-inline-end:28px}.unified-search__results[data-v-4cdce41c]{display:flex;flex-direction:column;gap:4px}.unified-search__results-header[data-v-4cdce41c]{display:block;margin:10px;margin-bottom:6px;margin-inline-start:13px;color:var(--color-primary-element);font-size:19px;font-weight:bold}.unified-search[data-v-4cdce41c] .unified-search__result-more{color:var(--color-text-maxcontrast)}.unified-search .empty-content[data-v-4cdce41c]{margin:10vh 0}.unified-search .empty-content[data-v-4cdce41c] .empty-content__title{font-weight:normal;font-size:var(--default-font-size);text-align:center}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/LegacyUnifiedSearch.vue\"],\"names\":[],\"mappings\":\"AAQC,+CACC,mDAAA,CAGD,gDACC,eAAA,CAEA,SAAA,CACA,KAAA,CACA,mBAAA,CACA,qBAAA,CACA,kBAAA,CACA,UAAA,CACA,6CAAA,CAEA,iFACC,qBAAA,CACA,gBAAA,CACA,cAAA,CACA,wBAAA,CAIF,4CACC,YAAA,CACA,UAAA,CACA,kBAAA,CAGD,0CACC,iBAnCO,CAoCP,mBAAA,CACA,eAAA,CACA,6CACC,mBAAA,CACA,6BAAA,CAIF,uCACC,iBAAA,CACA,UAAA,CACA,aAAA,CAGA,8CACA,4BAAA,CAGA,0FAEC,UAAA,CAGD,6CACC,UAAA,CACA,WA5DY,CA6DZ,YA5Da,CA8Db,kKAGC,wDAAA,CACA,4DAAA,CAGD,iKAGC,eAAA,CACA,kBAAA,CACA,sBAAA,CAID,+SAIC,uBAAA,CAIF,2FAEC,iBAAA,CACA,KAAA,CACA,oBAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CACA,SAAA,CACA,UAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CAEA,uTAGC,SAAA,CAIF,8CACC,qBAAA,CAIF,0CACC,YAAA,CACA,qBAAA,CACA,OAAA,CAEA,iDACC,aAAA,CACA,WAzHM,CA0HN,iBAAA,CACA,wBAAA,CACA,kCAAA,CACA,cAAA,CACA,gBAAA,CAIF,8DACC,mCAAA,CAGD,gDACC,aAAA,CAEA,sEACC,kBAAA,CACA,kCAAA,CACA,iBAAA\",\"sourcesContent\":[\"\\n@use \\\"sass:math\\\";\\n\\n$margin: 10px;\\n$input-height: 34px;\\n$input-padding: 10px;\\n\\n.unified-search {\\n\\t&__trigger-icon {\\n\\t\\tcolor: var(--color-background-plain-text) !important;\\n\\t}\\n\\n\\t&__input-wrapper {\\n\\t\\tposition: sticky;\\n\\t\\t// above search results\\n\\t\\tz-index: 2;\\n\\t\\ttop: 0;\\n\\t\\tdisplay: inline-flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\twidth: 100%;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\tlabel[for=\\\"unified-search__input\\\"] {\\n\\t\\t\\talign-self: flex-start;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tfont-size: 19px;\\n\\t\\t\\tmargin-inline-start: 13px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__input-row {\\n\\t\\tdisplay: flex;\\n\\t\\twidth: 100%;\\n\\t\\talign-items: center;\\n\\t}\\n\\n\\t&__filters {\\n\\t\\tmargin-block: $margin;\\n\\t\\tmargin-inline: math.div($margin, 2) 0;\\n\\t\\tpadding-top: 5px;\\n\\t\\tul {\\n\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\tjustify-content: space-between;\\n\\t\\t}\\n\\t}\\n\\n\\t&__form {\\n\\t\\tposition: relative;\\n\\t\\twidth: 100%;\\n\\t\\tmargin: $margin 0;\\n\\n\\t\\t// Loading spinner\\n\\t\\t&::after {\\n\\t\\tinset-inline-start: auto $input-padding;\\n\\t\\t}\\n\\n\\t\\t&-input,\\n\\t\\t&-reset {\\n\\t\\t\\tmargin: math.div($input-padding, 2);\\n\\t\\t}\\n\\n\\t\\t&-input {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: $input-height;\\n\\t\\t\\tpadding: $input-padding;\\n\\n\\t\\t\\t&:focus,\\n\\t\\t\\t&:focus-visible,\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\tborder-color: 2px solid var(--color-main-text) !important;\\n\\t\\t\\t\\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&,\\n\\t\\t\\t&[placeholder],\\n\\t\\t\\t&::placeholder {\\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\\n\\t\\t\\t// Hide webkit clear search\\n\\t\\t\\t&::-webkit-search-decoration,\\n\\t\\t\\t&::-webkit-search-cancel-button,\\n\\t\\t\\t&::-webkit-search-results-button,\\n\\t\\t\\t&::-webkit-search-results-decoration {\\n\\t\\t\\t\\t-webkit-appearance: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&-reset,\\n\\t\\t&-submit {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tinset-inline-end: 4px;\\n\\t\\t\\twidth: $input-height - $input-padding;\\n\\t\\t\\theight: $input-height - $input-padding;\\n\\t\\t\\tmin-height: 30px;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\topacity: .5;\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t\\tmargin-inline-end: 0;\\n\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus,\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\topacity: 1;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&-submit {\\n\\t\\t\\tinset-inline-end: 28px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__results {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: 4px;\\n\\n\\t\\t&-header {\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\tmargin: $margin;\\n\\t\\t\\tmargin-bottom: $margin - 4px;\\n\\t\\t\\tmargin-inline-start: 13px;\\n\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\tfont-size: 19px;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t}\\n\\t}\\n\\n\\t:deep(.unified-search__result-more) {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n\\n\\t.empty-content {\\n\\t\\tmargin: 10vh 0;\\n\\n\\t\\t:deep(.empty-content__title) {\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t\\ttext-align: center;\\n\\t\\t}\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst 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\tconst 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","const 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\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet 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\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst 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/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\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=\" + {\"4005\":\"aee79e7f1049b5e8188f\",\"4017\":\"d1523b8db423fbe47986\",\"5236\":\"295a99f2ba6e3a05a834\",\"7859\":\"0aa7564896cee7ea552c\",\"8259\":\"e914ef6a65a38374620a\",\"8374\":\"e925f5901b71aeaa37db\",\"8689\":\"5fcce4026be999b251c3\"}[chunkId] + \"\";\n};","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","const inProgress = {};\nconst dataWebpackPrefix = \"nextcloud-ui-legacy:\";\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\tlet script, needAttach;\n\tif(key !== undefined) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tconst 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\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\tconst onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tconst doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode?.removeChild(script);\n\t\tdoneFns?.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tconst 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};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(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 = 1684;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","let scriptUrl;\nif (globalThis.importScripts) scriptUrl = globalThis.location + \"\";\nconst document = globalThis.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript?.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tlet 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(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = (typeof document !== 'undefined' && 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\nconst installedChunks = {\n\t1684: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tlet 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\tconst 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\tconst 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\tconst error = new Error();\n\t\t\t\t\tconst 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\tconst errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tconst 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\terror.event = event;\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\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\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\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\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\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(96990)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["vue_material_design_icons_Magnifyvue_type_script_lang_js","name","emits","props","title","type","String","fillColor","default","size","Number","Magnify","componentNormalizer","A","_vm","this","_c","_self","_b","staticClass","attrs","role","on","click","$event","$emit","$attrs","fill","width","height","viewBox","d","_v","_s","_e","UnifiedSearch_LegacySearchResultvue_type_script_lang_js","components","NcHighlight","thumbnailUrl","required","subline","resourceUrl","icon","rounded","Boolean","query","focused","data","hasValidThumbnail","trim","loaded","computed","isIconUrl","startsWith","URL","watch","methods","reEmitEvent","e","onError","onLoad","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","LegacySearchResultvue_type_style_index_0_id_2dec9460_prod_lang_scss_scoped_true","locals","LegacySearchResult","class","href","focus","style","backgroundImage","directives","rawName","value","expression","src","alt","error","load","text","search","UnifiedSearch_SearchResultPlaceholdersvue_type_script_lang_js","light","dark","mounted","styles","getComputedStyle","document","documentElement","getPropertyValue","randWidth","Math","floor","random","SearchResultPlaceholdersvue_type_style_index_0_id_480c8b8e_prod_lang_scss_scoped_true_options","SearchResultPlaceholdersvue_type_style_index_0_id_480c8b8e_prod_lang_scss_scoped_true","SearchResultPlaceholders","id","offset","attributeName","values","dur","repeatCount","_l","placeholder","key","xmlns","logger","user","getCurrentUser","getLoggerBuilder","setApp","build","setUid","uid","detectUser","defaultLimit","loadState","minSearchLength","enableLiveSearch","regexFilterIn","regexFilterNot","async","getTypes","axios","get","generateOcsUrl","params","from","window","location","pathname","replace","ocs","Array","isArray","length","cursor","cancelToken","CancelToken","source","request","token","term","cancel","views_LegacyUnifiedSearchvue_type_script_lang_js","NcActionButton","NcActions","NcEmptyContent","NcHeaderMenu","SearchResult","NcTextField","types","cursors","limits","loading","reached","requests","results","triggered","open","typesIDs","map","typesNames","typesMap","reduce","prev","curr","ariaLabel","t","hasResults","Object","keys","orderedResults","filter","list","availableFilters","usedFiltersIn","match","filters","exec","push","usedFiltersNot","validQueryTitle","shortQueryDescription","isShortQuery","n","isValidQuery","isDoneSearching","every","state","isLoading","some","created","debug","beforeDestroy","unsubscribe","onNavigationChange","subscribe","OCP","Accessibility","disableKeyboardShortcuts","addEventListener","event","ctrlKey","code","preventDefault","focusNext","focusPrev","onOpen","onClose","emit","$el","querySelector","reset","onReset","resetState","focusInput","cancelPendingRequests","slice","Promise","all","$nextTick","$refs","input","select","onInputEnter","getResultsList","onInput","$delete","indexOf","$set","entries","isPaginated","response","status","showError","then","result","onInputDebounced","debounce","loadMore","focusIndex","limitIfAny","querySelectorAll","focusFirst","index","setFocusedIndex","entry","target","findIndex","onClickFilter","LegacyUnifiedSearchvue_type_style_index_0_id_4cdce41c_prod_lang_scss_scoped_true_options","LegacyUnifiedSearchvue_type_style_index_0_id_4cdce41c_prod_lang_scss_scoped_true","LegacyUnifiedSearch","close","scopedSlots","_u","fn","proxy","ref","label","join","model","callback","$$v","placement","container","stopPropagation","typesIndex","description","__webpack_nonce__","getCSPNonce","Vue","mixin","l10n_dist","el","render","h","UnifiedSearch","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","module","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","__webpack_modules__","call","m","deferred","O","chunkIds","priority","i","notFulfilled","Infinity","fulfilled","j","splice","r","getter","__esModule","a","definition","binding","o","defineProperty","enumerable","f","chunkId","promises","u","obj","prop","hasOwn","inProgress","dataWebpackPrefix","l","url","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","onerror","onload","clearTimeout","timeout","doneFns","parentNode","removeChild","forEach","setTimeout","head","appendChild","Symbol","toStringTag","nmd","paths","children","dn","x","descriptor","getOwnPropertyDescriptor","writable","configurable","cjs","body","mod","scriptUrl","globalThis","importScripts","currentScript","tagName","toUpperCase","test","Error","p","b","baseURI","self","installedChunks","installedChunkData","promise","resolve","reject","loadingEnded","errorType","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/core-login.js b/dist/core-login.js index c1647c18123b2..ccf86728ea2b9 100644 --- a/dist/core-login.js +++ b/dist/core-login.js @@ -1,2 +1,2 @@ -(()=>{var e={33354(e,n,r){"use strict";var o={};r.r(o),r.d(o,{clearIconCache:()=>Jt,getIconUrl:()=>Kt});var s={};r.r(s),r.d(s,{VERSION:()=>oe,after:()=>Lr,all:()=>Xr,allKeys:()=>mn,any:()=>to,assign:()=>Ln,before:()=>Br,bind:()=>Ar,bindAll:()=>xr,chain:()=>vr,chunk:()=>Uo,clone:()=>Un,collect:()=>Kr,compact:()=>ko,compose:()=>Nr,constant:()=>Ze,contains:()=>eo,countBy:()=>go,create:()=>Rn,debounce:()=>Pr,default:()=>Fo,defaults:()=>Bn,defer:()=>Tr,delay:()=>kr,detect:()=>$r,difference:()=>So,drop:()=>xo,each:()=>Vr,escape:()=>sr,every:()=>Xr,extend:()=>Nn,extendOwn:()=>Ln,filter:()=>Gr,find:()=>$r,findIndex:()=>Mr,findKey:()=>Rr,findLastIndex:()=>Dr,findWhere:()=>Yr,first:()=>Co,flatten:()=>To,foldl:()=>Jr,foldr:()=>Qr,forEach:()=>Vr,functions:()=>En,get:()=>qn,groupBy:()=>ho,has:()=>Hn,head:()=>Co,identity:()=>$n,include:()=>eo,includes:()=>eo,indexBy:()=>mo,indexOf:()=>qr,initial:()=>_o,inject:()=>Jr,intersection:()=>No,invert:()=>Pn,invoke:()=>no,isArguments:()=>Je,isArray:()=>Ve,isArrayBuffer:()=>Ue,isBoolean:()=>Se,isDataView:()=>Ye,isDate:()=>Le,isElement:()=>Pe,isEmpty:()=>cn,isEqual:()=>hn,isError:()=>Ie,isFinite:()=>Qe,isFunction:()=>Fe,isMap:()=>Cn,isMatch:()=>un,isNaN:()=>Ge,isNull:()=>ke,isNumber:()=>Ne,isObject:()=>je,isRegExp:()=>Be,isSet:()=>jn,isString:()=>Oe,isSymbol:()=>Re,isTypedArray:()=>on,isUndefined:()=>Te,isWeakMap:()=>xn,isWeakSet:()=>kn,iteratee:()=>Jn,keys:()=>ln,last:()=>jo,lastIndexOf:()=>Hr,map:()=>Kr,mapObject:()=>Gn,matcher:()=>Yn,matches:()=>Yn,max:()=>so,memoize:()=>jr,methods:()=>En,min:()=>ao,mixin:()=>Do,negate:()=>Or,noop:()=>Zn,now:()=>nr,object:()=>Io,omit:()=>Ao,once:()=>Ir,pairs:()=>Sn,partial:()=>br,partition:()=>vo,pick:()=>bo,pluck:()=>ro,property:()=>Vn,propertyOf:()=>Xn,random:()=>er,range:()=>Ro,reduce:()=>Jr,reduceRight:()=>Qr,reject:()=>Zr,rest:()=>xo,restArguments:()=>xe,result:()=>hr,sample:()=>co,select:()=>Gr,shuffle:()=>uo,size:()=>yo,some:()=>to,sortBy:()=>fo,sortedIndex:()=>Fr,tail:()=>xo,take:()=>Co,tap:()=>Mn,template:()=>pr,templateSettings:()=>ir,throttle:()=>Sr,times:()=>tr,toArray:()=>lo,toPath:()=>Dn,transpose:()=>Lo,unescape:()=>ar,union:()=>Oo,uniq:()=>Eo,unique:()=>Eo,uniqueId:()=>gr,unzip:()=>Lo,values:()=>Tn,where:()=>oo,without:()=>Po,wrap:()=>Er,zip:()=>Bo});var a=r(85471),i=r(81222),l=r(63814),c=r(82490),u=r(74095),d=r(48240),f=r(53334),p=r(46855),h=r(32073),m=r(16044),g=r(82182);const v={name:"LoginButton",components:{ArrowRight:r(71164).A,NcButton:u.A},props:{value:{type:String,default:(0,f.Tl)("core","Log in")},valueLoading:{type:String,default:(0,f.Tl)("core","Logging in …")},loading:{type:Boolean,required:!0},invertedColors:{type:Boolean,default:!1}}};var y=r(85072),w=r.n(y),b=r(97825),A=r.n(b),_=r(77659),C=r.n(_),x=r(55056),j=r.n(x),k=r(10540),T=r.n(k),S=r(41113),P=r.n(S),E=r(14430),O={};O.styleTagTransform=P(),O.setAttributes=j(),O.insert=C().bind(null,"head"),O.domAPI=A(),O.insertStyleElement=T(),w()(E.A,O),E.A&&E.A.locals&&E.A.locals;var N=r(14486);const L=(0,N.A)(v,function(){var t=this,e=t._self._c;return e("NcButton",{attrs:{variant:"primary",type:"submit",wide:!0,disabled:t.loading},on:{click:function(e){return t.$emit("click")}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading?e("div",{staticClass:"submit-wrapper__icon icon-loading-small-dark"}):e("ArrowRight",{staticClass:"submit-wrapper__icon"})]},proxy:!0}])},[t._v("\n\t"+t._s(t.loading?t.valueLoading:t.value)+"\n\t")])},[],!1,null,"bbf83d00",null).exports,B={computed:{userNameInputLengthIs255(){return this.user.length>=255},userInputHelperText(){if(this.userNameInputLengthIs255)return t("core","Email length is at max (255)")}}},I={name:"LoginForm",components:{LoginButton:L,NcCheckboxRadioSwitch:h.A,NcPasswordField:m.A,NcTextField:g.A,NcNoteCard:d.A},mixins:[B],props:{username:{type:String,default:""},redirectUrl:{type:[Boolean,String],default:!1},errors:{type:Array,default:()=>[]},messages:{type:Array,default:()=>[]},throttleDelay:{type:Number,default:0},autoCompleteAllowed:{type:Boolean,default:!0},remembermeAllowed:{type:Boolean,default:!0},directLogin:{type:Boolean,default:!1},emailStates:{type:Array,default:()=>[]}},setup:()=>({t:f.Tl,headlineText:(0,f.Tl)("core","Log in to {productName}",{productName:OC.theme.name},void 0,{sanitize:!1,escape:!1}),loginTimeout:(0,i.C)("core","loginTimeout",300),requestToken:window.OC.requestToken,timezone:(new Intl.DateTimeFormat)?.resolvedOptions()?.timeZone,timezoneOffset:-(new Date).getTimezoneOffset()/60}),data:t=>({loading:!1,user:t.username,password:"",rememberme:["1"],visible:!1}),computed:{resetFormTimeout(){return this.loginTimeout<=0?()=>{}:(0,p.A)(this.handleResetForm,1e3*this.loginTimeout)},isError(){return this.invalidPassword||this.userDisabled||this.throttleDelay>5e3},errorLabel(){return this.invalidPassword?(0,f.Tl)("core","Wrong login or password."):this.userDisabled?(0,f.Tl)("core","This account is disabled"):this.throttleDelay>5e3?(0,f.Tl)("core","Too many failed login attempts from your location. Try again in 30 seconds."):void 0},apacheAuthFailed(){return-1!==this.errors.indexOf("apacheAuthFailed")},csrfCheckFailed(){return-1!==this.errors.indexOf("csrfCheckFailed")},internalException(){return-1!==this.errors.indexOf("internalexception")},invalidPassword(){return-1!==this.errors.indexOf("invalidpassword")},userDisabled(){return-1!==this.errors.indexOf("userdisabled")},loadingIcon:()=>(0,l.d0)("core","loading-dark.gif"),loginActionUrl:()=>(0,l.Jv)("login"),emailEnabled(){return this.emailStates.every(t=>"1"===t)},loginText(){return this.emailEnabled?(0,f.Tl)("core","Account name or email"):(0,f.Tl)("core","Account name")}},watch:{password(){this.resetFormTimeout()}},mounted(){""===this.username?this.$refs.user.$refs.inputField.$refs.input.focus():this.$refs.password.$refs.inputField.$refs.input.focus()},methods:{handleResetForm(){this.password=""},updateUsername(){this.$emit("update:username",this.user)},submit(t){this.visible=!1,this.loading?t.preventDefault():(this.loading=!0,this.$emit("submit"))}}};var R=r(108),U={};U.styleTagTransform=P(),U.setAttributes=j(),U.insert=C().bind(null,"head"),U.domAPI=A(),U.insertStyleElement=T(),w()(R.A,U),R.A&&R.A.locals&&R.A.locals;const M=(0,N.A)(I,function(){var t=this,e=t._self._c;return e("form",{ref:"loginForm",staticClass:"login-form",attrs:{method:"post",name:"login",action:t.loginActionUrl},on:{submit:t.submit}},[e("fieldset",{staticClass:"login-form__fieldset",attrs:{"data-login-form":""}},[t.apacheAuthFailed?e("NcNoteCard",{attrs:{title:t.t("core","Server side authentication failed!"),type:"warning"}},[t._v("\n\t\t\t"+t._s(t.t("core","Please contact your administrator."))+"\n\t\t")]):t._e(),t._v(" "),t.csrfCheckFailed?e("NcNoteCard",{attrs:{heading:t.t("core","Session error"),type:"error"}},[t._v("\n\t\t\t"+t._s(t.t("core","It appears your session token has expired, please refresh the page and try again."))+"\n\t\t")]):t._e(),t._v(" "),t.messages.length>0?e("NcNoteCard",t._l(t.messages,function(n,r){return e("div",{key:r},[t._v("\n\t\t\t\t"+t._s(n)),e("br")])}),0):t._e(),t._v(" "),t.internalException?e("NcNoteCard",{class:t.t("core","An internal error occurred."),attrs:{type:"warning"}},[t._v("\n\t\t\t"+t._s(t.t("core","Please try again or contact your administrator."))+"\n\t\t")]):t._e(),t._v(" "),e("div",{staticClass:"hidden",attrs:{id:"message"}},[e("img",{staticClass:"float-spinner",attrs:{alt:"",src:t.loadingIcon}}),t._v(" "),e("span",{attrs:{id:"messageText"}}),t._v(" "),e("div",{staticStyle:{clear:"both"}})]),t._v(" "),e("h2",{staticClass:"login-form__headline",attrs:{"data-login-form-headline":""}},[t._v("\n\t\t\t"+t._s(t.headlineText)+"\n\t\t")]),t._v(" "),e("NcTextField",{ref:"user",class:{shake:t.invalidPassword},attrs:{id:"user",label:t.loginText,name:"user",maxlength:255,autocapitalize:"none",spellchecking:!1,autocomplete:t.autoCompleteAllowed?"username":"off",required:"",error:t.userNameInputLengthIs255,"helper-text":t.userInputHelperText,"data-login-form-input-user":""},on:{change:t.updateUsername},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}}),t._v(" "),e("NcPasswordField",{ref:"password",class:{shake:t.invalidPassword},attrs:{id:"password",name:"password",spellchecking:!1,autocapitalize:"none",autocomplete:t.autoCompleteAllowed?"current-password":"off",label:t.t("core","Password"),"helper-text":t.errorLabel,error:t.isError,visible:t.visible,"data-login-form-input-password":"",required:""},model:{value:t.password,callback:function(e){t.password=e},expression:"password"}}),t._v(" "),t.remembermeAllowed?e("NcCheckboxRadioSwitch",{ref:"rememberme",attrs:{id:"rememberme",name:"rememberme",value:"1","data-login-form-input-rememberme":""},model:{value:t.rememberme,callback:function(e){t.rememberme=e},expression:"rememberme"}},[t._v("\n\t\t\t"+t._s(t.t("core","Remember me"))+"\n\t\t")]):t._e(),t._v(" "),e("LoginButton",{attrs:{"data-login-form-submit":"",loading:t.loading}}),t._v(" "),t.redirectUrl?e("input",{attrs:{type:"hidden",name:"redirect_url"},domProps:{value:t.redirectUrl}}):t._e(),t._v(" "),e("input",{attrs:{type:"hidden",name:"timezone"},domProps:{value:t.timezone}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"timezone_offset"},domProps:{value:t.timezoneOffset}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"requesttoken"},domProps:{value:t.requestToken}}),t._v(" "),t.directLogin?e("input",{attrs:{type:"hidden",name:"direct",value:"1"}}):t._e()],1)])},[],!1,null,"fac76c6a",null).exports;class D extends Error{constructor({message:t,code:e,cause:n,name:r}){super(t,{cause:n}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=r??n.name,this.code=e}}const F=new class{constructor(){Object.defineProperty(this,"controller",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}createNewAbortSignal(){if(this.controller){const t=new Error("Cancelling existing WebAuthn API call for new one");t.name="AbortError",this.controller.abort(t)}const t=new AbortController;return this.controller=t,t.signal}cancelCeremony(){if(this.controller){const t=new Error("Manually cancelling existing WebAuthn API call");t.name="AbortError",this.controller.abort(t),this.controller=void 0}}};function z(t){const e=new Uint8Array(t);let n="";for(const t of e)n+=String.fromCharCode(t);return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function q(t){const e=t.replace(/-/g,"+").replace(/_/g,"/"),n=(4-e.length%4)%4,r=e.padEnd(e.length+n,"="),o=atob(r),s=new ArrayBuffer(o.length),a=new Uint8Array(s);for(let t=0;tt},Y=t=>t;function V(t){const{id:e}=t;return{...t,id:q(e),transports:t.transports}}const K=["cross-platform","platform"];function W(t){if(t&&!(K.indexOf(t)<0))return t}var J=r(48943),Q=r(36076);const G={name:"LockOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Z=(0,N.A)(G,function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon lock-open-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10A2,2 0 0,1 6,8H15V6A3,3 0 0,0 12,3A3,3 0 0,0 9,6H7A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,17A2,2 0 0,0 14,15A2,2 0 0,0 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},[],!1,null,null,null).exports;var X=r(21777),tt=r(35947);const et=null===(nt=(0,X.HW)())?(0,tt.YK)().setApp("core").build():(0,tt.YK)().setApp("core").setUid(nt.uid).build();var nt;(0,tt.YK)().setApp("unified-search").detectUser().build();var rt=r(44368);class ot extends Error{}const st=(0,a.pM)({name:"PasswordLessLoginForm",components:{LoginButton:L,InformationIcon:Q.A,LockOpenIcon:Z,NcEmptyContent:J.A,NcTextField:g.A},props:{username:{type:String,default:""},redirectUrl:{type:[Boolean,String],default:!1},autoCompleteAllowed:{type:Boolean,default:!0},isHttps:{type:Boolean,default:!1},isLocalhost:{type:Boolean,default:!1}},setup:()=>({supportsWebauthn:H()}),data(){return{user:this.username,loading:!1,validCredentials:!0}},methods:{async authenticate(){if(this.$refs.loginForm.checkValidity()){et.debug("passwordless login initiated");try{const t=await async function(t){const e=(0,l.Jv)("/login/webauthn/start"),{data:n}=await rt.Ay.post(e,{loginName:t});if(!n.allowCredentials||0===n.allowCredentials.length)throw et.error("No valid credentials returned for webauthn"),new ot;return await async function(t){!t.optionsJSON&&t.challenge&&(console.warn("startAuthentication() was not called correctly. It will try to continue with the provided options, but this call should be refactored to use the expected call structure instead. See https://simplewebauthn.dev/docs/packages/browser#typeerror-cannot-read-properties-of-undefined-reading-challenge for more information."),t={optionsJSON:t});const{optionsJSON:e,useBrowserAutofill:n=!1,verifyBrowserAutofillInput:r=!0}=t;if(!H())throw new Error("WebAuthn is not supported in this browser");let o;0!==e.allowCredentials?.length&&(o=e.allowCredentials?.map(V));const s={...e,challenge:q(e.challenge),allowCredentials:o},a={};if(n){if(!await function(){if(!H())return Y(new Promise(t=>t(!1)));const t=globalThis.PublicKeyCredential;return Y(void 0===t?.isConditionalMediationAvailable?new Promise(t=>t(!1)):t.isConditionalMediationAvailable())}())throw Error("Browser does not support WebAuthn autofill");if(document.querySelectorAll("input[autocomplete$='webauthn']").length<1&&r)throw Error('No with "webauthn" as the only or last value in its `autocomplete` attribute was detected');a.mediation="conditional",s.allowCredentials=[]}let i;a.publicKey=s,a.signal=F.createNewAbortSignal();try{i=await navigator.credentials.get(a)}catch(t){throw function({error:t,options:e}){const{publicKey:n}=e;if(!n)throw Error("options was missing required publicKey property");if("AbortError"===t.name){if(e.signal instanceof AbortSignal)return new D({message:"Authentication ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:t})}else{if("NotAllowedError"===t.name)return new D({message:t.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t});if("SecurityError"===t.name){const e=globalThis.location.hostname;if("localhost"!==(r=e)&&!/^((xn--[a-z0-9-]+|[a-z0-9]+(-[a-z0-9]+)*)\.)+([a-z]{2,}|xn--[a-z0-9-]+)$/i.test(r))return new D({message:`${globalThis.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:t});if(n.rpId!==e)return new D({message:`The RP ID "${n.rpId}" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:t})}else if("UnknownError"===t.name)return new D({message:"The authenticator was unable to process the specified options, or could not create a new assertion signature",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:t})}var r;return t}({error:t,options:a})}if(!i)throw new Error("Authentication was not completed");const{id:l,rawId:c,response:u,type:d}=i;let f;return u.userHandle&&(f=z(u.userHandle)),{id:l,rawId:z(c),response:{authenticatorData:z(u.authenticatorData),clientDataJSON:z(u.clientDataJSON),signature:z(u.signature),userHandle:f},type:d,clientExtensionResults:i.getClientExtensionResults(),authenticatorAttachment:W(i.authenticatorAttachment)}}({optionsJSON:n})}(this.user);await this.completeAuthentication(t)}catch(t){if(t instanceof ot)return void(this.validCredentials=!1);et.debug(t)}}},changeUsername(t){this.user=t,this.$emit("update:username",this.user)},completeAuthentication(t){let e=this.redirectUrl;return async function(t){const e=(0,l.Jv)("/login/webauthn/finish"),{data:n}=await rt.Ay.post(e,{data:JSON.stringify(t)});return n}(t).then(({defaultRedirectUrl:t})=>{et.debug("Logged in redirecting"),e?("/"!==e.charAt(0)&&(e="/"+e),window.location.href=(0,l.$_)()+e):window.location.href=t}).catch(t=>{et.debug("GOT AN ERROR WHILE SUBMITTING CHALLENGE!",{error:t})})},submit(){}}});var at=r(86524),it={};it.styleTagTransform=P(),it.setAttributes=j(),it.insert=C().bind(null,"head"),it.domAPI=A(),it.insertStyleElement=T(),w()(at.A,it),at.A&&at.A.locals&&at.A.locals;var lt=(0,N.A)(st,function(){var t=this,e=t._self._c;return t._self._setupProxy,(t.isHttps||t.isLocalhost)&&t.supportsWebauthn?e("form",{ref:"loginForm",staticClass:"password-less-login-form",attrs:{"aria-labelledby":"password-less-login-form-title",method:"post",name:"login"},on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[e("h2",{attrs:{id:"password-less-login-form-title"}},[t._v("\n\t\t"+t._s(t.t("core","Log in with a device"))+"\n\t")]),t._v(" "),e("NcTextField",{attrs:{required:"","model-value":t.user,autocomplete:t.autoCompleteAllowed?"on":"off",error:!t.validCredentials,label:t.t("core","Login or email"),placeholder:t.t("core","Login or email"),"helper-text":t.validCredentials?"":t.t("core","Your account is not setup for passwordless login.")},on:{"update:value":t.changeUsername}}),t._v(" "),t.validCredentials?e("LoginButton",{attrs:{loading:t.loading},on:{click:t.authenticate}}):t._e()],1):t.isHttps||t.isLocalhost?e("NcEmptyContent",{attrs:{name:t.t("core","Browser not supported"),description:t.t("core","Passwordless authentication is not supported in your browser.")},scopedSlots:t._u([{key:"icon",fn:function(){return[e("InformationIcon")]},proxy:!0}])}):e("NcEmptyContent",{attrs:{name:t.t("core","Your connection is not secure"),description:t.t("core","Passwordless authentication is only available over a secure connection.")},scopedSlots:t._u([{key:"icon",fn:function(){return[e("LockOpenIcon")]},proxy:!0}])})},[],!1,null,"25758ef3",null);const ct=lt.exports,ut=(0,a.pM)({name:"ResetPassword",components:{LoginButton:L,NcButton:u.A,NcNoteCard:d.A,NcTextField:g.A},mixins:[B],props:{username:{type:String,required:!0},resetPasswordLink:{type:String,required:!0}},data(){return{error:!1,loading:!1,message:"",user:this.username}},watch:{username(t){this.user=t}},methods:{updateUsername(){this.$emit("update:username",this.user)},async submit(){this.loading=!0,this.error=!1,this.message="";const t=(0,l.Jv)("/lostpassword/email");try{const{data:e}=await rt.Ay.post(t,{user:this.user});if("success"!==e.status)throw new Error(`got status ${e.status}`);this.message="send-success"}catch(t){et.error("could not send reset email request",{error:t}),this.error=!0,this.message="send-error"}finally{this.loading=!1}}}});var dt=r(99322),ft={};ft.styleTagTransform=P(),ft.setAttributes=j(),ft.insert=C().bind(null,"head"),ft.domAPI=A(),ft.insertStyleElement=T(),w()(dt.A,ft),dt.A&&dt.A.locals&&dt.A.locals;var pt=(0,N.A)(ut,function(){var t=this,e=t._self._c;return t._self._setupProxy,e("form",{staticClass:"reset-password-form",on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[e("h2",[t._v(t._s(t.t("core","Reset password")))]),t._v(" "),e("NcTextField",{attrs:{id:"user",name:"user",maxlength:255,autocapitalize:"off",label:t.t("core","Login or email"),error:t.userNameInputLengthIs255,"helper-text":t.userInputHelperText,required:""},on:{change:t.updateUsername},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}}),t._v(" "),e("LoginButton",{attrs:{loading:t.loading,value:t.t("core","Reset password")}}),t._v(" "),e("NcButton",{attrs:{variant:"tertiary",wide:""},on:{click:function(e){return t.$emit("abort")}}},[t._v("\n\t\t"+t._s(t.t("core","Back to login"))+"\n\t")]),t._v(" "),"send-success"===t.message?e("NcNoteCard",{attrs:{type:"success"}},[t._v("\n\t\t"+t._s(t.t("core","If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help."))+"\n\t")]):"send-error"===t.message?e("NcNoteCard",{attrs:{type:"error"}},[t._v("\n\t\t"+t._s(t.t("core","Couldn't send reset email. Please contact your administrator."))+"\n\t")]):"reset-error"===t.message?e("NcNoteCard",{attrs:{type:"error"}},[t._v("\n\t\t"+t._s(t.t("core","Password cannot be changed. Please contact your administrator."))+"\n\t")]):t._e()],1)},[],!1,null,"759a0fdd",null);const ht=pt.exports,mt={name:"UpdatePassword",components:{LoginButton:L},props:{username:{type:String,required:!0},resetPasswordTarget:{type:String,required:!0}},data(){return{error:!1,loading:!1,message:void 0,user:this.username,password:"",encrypted:!1,proceed:!1}},watch:{username(t){this.user=t}},methods:{async submit(){this.loading=!0,this.error=!1,this.message="";try{const{data:t}=await rt.Ay.post(this.resetPasswordTarget,{password:this.password,proceed:this.proceed});if(t&&"success"===t.status)this.message="send-success",this.$emit("update:username",this.user),this.$emit("done");else{if(!t||!t.encryption)throw t&&t.msg?new Error(t.msg):new Error;this.encrypted=!0}}catch(e){this.error=!0,this.message=e.message?e.message:t("core","Password cannot be changed. Please contact your administrator.")}finally{this.loading=!1}}}};var gt=r(81604),vt={};vt.styleTagTransform=P(),vt.setAttributes=j(),vt.insert=C().bind(null,"head"),vt.domAPI=A(),vt.insertStyleElement=T(),w()(gt.A,vt),gt.A&>.A.locals&>.A.locals;var yt=(0,N.A)(mt,function(){var t=this,e=t._self._c;return e("form",{on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[e("fieldset",[e("p",[e("label",{staticClass:"infield",attrs:{for:"password"}},[t._v(t._s(t.t("core","New password")))]),t._v(" "),e("input",{directives:[{name:"model",rawName:"v-model",value:t.password,expression:"password"}],attrs:{id:"password",type:"password",name:"password",autocomplete:"new-password",autocapitalize:"none",spellcheck:"false",required:"",placeholder:t.t("core","New password")},domProps:{value:t.password},on:{input:function(e){e.target.composing||(t.password=e.target.value)}}})]),t._v(" "),t.encrypted?e("div",{staticClass:"update"},[e("p",[t._v("\n\t\t\t\t"+t._s(t.t("core","Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?"))+"\n\t\t\t")]),t._v(" "),e("input",{directives:[{name:"model",rawName:"v-model",value:t.proceed,expression:"proceed"}],staticClass:"checkbox",attrs:{id:"encrypted-continue",type:"checkbox"},domProps:{checked:Array.isArray(t.proceed)?t._i(t.proceed,null)>-1:t.proceed},on:{change:function(e){var n=t.proceed,r=e.target,o=!!r.checked;if(Array.isArray(n)){var s=t._i(n,null);r.checked?s<0&&(t.proceed=n.concat([null])):s>-1&&(t.proceed=n.slice(0,s).concat(n.slice(s+1)))}else t.proceed=o}}}),t._v(" "),e("label",{attrs:{for:"encrypted-continue"}},[t._v("\n\t\t\t\t"+t._s(t.t("core","I know what I'm doing"))+"\n\t\t\t")])]):t._e(),t._v(" "),e("LoginButton",{attrs:{loading:t.loading,value:t.t("core","Reset password"),"value-loading":t.t("core","Resetting password")}}),t._v(" "),t.error&&t.message?e("p",{class:{warning:t.error}},[t._v("\n\t\t\t"+t._s(t.message)+"\n\t\t")]):t._e()],1)])},[],!1,null,"2c0ecaf9",null);const wt=yt.exports;const bt=c.A.parse(location.search);"1"===bt.clear&&async function(){try{window.localStorage.clear(),window.sessionStorage.clear();const t=await window.indexedDB.databases();for(const e of t)await window.indexedDB.deleteDatabase(e.name);et.debug("Browser storages cleared")}catch(t){et.error("Could not clear browser storages",{error:t})}}();const At={name:"Login",components:{LoginForm:M,PasswordLessLoginForm:ct,ResetPassword:ht,UpdatePassword:wt,NcButton:u.A,NcNoteCard:d.A},data:()=>({loading:!1,user:(0,i.C)("core","loginUsername",""),passwordlessLogin:!1,resetPassword:!1,errors:(0,i.C)("core","loginErrors",[]),messages:(0,i.C)("core","loginMessages",[]),redirectUrl:(0,i.C)("core","loginRedirectUrl",!1),throttleDelay:(0,i.C)("core","loginThrottleDelay",0),canResetPassword:(0,i.C)("core","loginCanResetPassword",!1),resetPasswordLink:(0,i.C)("core","loginResetPasswordLink",""),autoCompleteAllowed:(0,i.C)("core","loginAutocomplete",!0),remembermeAllowed:(0,i.C)("core","loginCanRememberme",!0),resetPasswordTarget:(0,i.C)("core","resetPasswordTarget",""),resetPasswordUser:(0,i.C)("core","resetPasswordUser",""),directLogin:"1"===bt.direct,hasPasswordless:(0,i.C)("core","webauthn-available",!1),countAlternativeLogins:(0,i.C)("core","countAlternativeLogins",!1),alternativeLogins:(0,i.C)("core","alternativeLogins",[]),isHttps:"https:"===window.location.protocol,isLocalhost:"localhost"===window.location.hostname,hideLoginForm:(0,i.C)("core","hideLoginForm",!1),emailStates:(0,i.C)("core","emailStates",[])}),methods:{passwordResetFinished(){window.location.href=(0,l.Jv)("login")+"?direct=1"}}};var _t=r(11999),Ct={};Ct.styleTagTransform=P(),Ct.setAttributes=j(),Ct.insert=C().bind(null,"head"),Ct.domAPI=A(),Ct.insertStyleElement=T(),w()(_t.A,Ct),_t.A&&_t.A.locals&&_t.A.locals;const xt=(0,N.A)(At,function(){var t=this,e=t._self._c;return e("div",{staticClass:"guest-box login-box"},[!t.hideLoginForm||t.directLogin?[e("transition",{attrs:{name:"fade",mode:"out-in"}},[t.passwordlessLogin||t.resetPassword||""!==t.resetPasswordTarget?!t.loading&&t.passwordlessLogin?e("div",{key:"reset-pw-less",staticClass:"login-additional login-box__wrapper"},[e("PasswordLessLoginForm",{attrs:{username:t.user,"redirect-url":t.redirectUrl,"auto-complete-allowed":t.autoCompleteAllowed,"is-https":t.isHttps,"is-localhost":t.isLocalhost},on:{"update:username":function(e){t.user=e},submit:function(e){t.loading=!0}}}),t._v(" "),e("NcButton",{attrs:{variant:"tertiary","aria-label":t.t("core","Back to login form"),wide:!0},on:{click:function(e){t.passwordlessLogin=!1}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Back"))+"\n\t\t\t\t")])],1):!t.loading&&t.canResetPassword?e("div",{key:"reset-can-reset",staticClass:"login-additional"},[e("div",{staticClass:"lost-password-container"},[t.resetPassword?e("ResetPassword",{attrs:{username:t.user,"reset-password-link":t.resetPasswordLink},on:{"update:username":function(e){t.user=e},abort:function(e){t.resetPassword=!1}}}):t._e()],1)]):""!==t.resetPasswordTarget?e("div",[e("UpdatePassword",{attrs:{username:t.user,"reset-password-target":t.resetPasswordTarget},on:{"update:username":function(e){t.user=e},done:t.passwordResetFinished}})],1):t._e():e("div",{staticClass:"login-box__wrapper"},[e("LoginForm",{attrs:{username:t.user,"redirect-url":t.redirectUrl,"direct-login":t.directLogin,messages:t.messages,errors:t.errors,"throttle-delay":t.throttleDelay,"auto-complete-allowed":t.autoCompleteAllowed,"rememberme-allowed":t.remembermeAllowed,"email-states":t.emailStates},on:{"update:username":function(e){t.user=e},submit:function(e){t.loading=!0}}}),t._v(" "),t.hasPasswordless?e("NcButton",{attrs:{variant:"tertiary",wide:""},on:{click:function(e){e.preventDefault(),t.passwordlessLogin=!0}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Log in with a device"))+"\n\t\t\t\t")]):t._e(),t._v(" "),t.canResetPassword&&""!==t.resetPasswordLink?e("NcButton",{attrs:{id:"lost-password",href:t.resetPasswordLink,variant:"tertiary-no-background",wide:""}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Forgot password?"))+"\n\t\t\t\t")]):t.canResetPassword&&!t.resetPassword?e("NcButton",{attrs:{id:"lost-password",variant:"tertiary",wide:""},on:{click:function(e){e.preventDefault(),t.resetPassword=!0}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Forgot password?"))+"\n\t\t\t\t")]):t._e()],1)])]:[e("transition",{attrs:{name:"fade",mode:"out-in"}},[e("NcNoteCard",{attrs:{type:"info",title:t.t("core","Login form is disabled.")}},[t._v("\n\t\t\t\t"+t._s(t.t("core","The Nextcloud login form is disabled. Use another login option if available or contact your administration."))+"\n\t\t\t")])],1)],t._v(" "),e("div",{staticClass:"login-box__alternative-logins",attrs:{id:"alternative-logins"}},t._l(t.alternativeLogins,function(n,r){return e("NcButton",{key:r,class:[n.class],attrs:{variant:"secondary",wide:!0,role:"link",href:n.href}},[t._v("\n\t\t\t"+t._s(n.name)+"\n\t\t")])}),1)],2)},[],!1,null,"518c0816",null).exports;var jt=r(61338),kt=r(71225);const Tt=!!window._oc_isadmin,St=window.oc_appconfig||{},Pt=void 0!==window._oc_appswebroots&&window._oc_appswebroots;var Et=r(87485);const Ot=window._oc_config||{},Nt=document.getElementsByTagName("head")[0].getAttribute("data-user"),Lt=document.getElementsByTagName("head")[0].getAttribute("data-user-displayname"),Bt=void 0!==Nt&&Nt,It=window._oc_debug;var Rt=r(21363),Ut=r(85168),Mt=r(98469),Dt=r(43627);const Ft={YES_NO_BUTTONS:70,OK_BUTTONS:71,FILEPICKER_TYPE_CHOOSE:1,FILEPICKER_TYPE_MOVE:2,FILEPICKER_TYPE_COPY:3,FILEPICKER_TYPE_COPY_MOVE:4,FILEPICKER_TYPE_CUSTOM:5,alert:function(t,e,n,r){this.message(t,e,"alert",Ft.OK_BUTTON,n,r)},info:function(t,e,n,r){this.message(t,e,"info",Ft.OK_BUTTON,n,r)},confirm:function(t,e,n,r){return this.message(t,e,"notice",Ft.YES_NO_BUTTONS,n,r)},confirmDestructive:function(t,e,n=Ft.OK_BUTTONS,r=()=>{}){return(new Ut.ik).setName(e).setText(t).setButtons(n===Ft.OK_BUTTONS?[{label:(0,f.t)("core","Yes"),variant:"error",callback:()=>{r.clicked=!0,r(!0)}}]:Ft._getLegacyButtons(n,r)).build().show().then(()=>{r.clicked||r(!1)})},confirmHtml:function(t,e,n){return(new Ut.ik).setName(e).setText("").setButtons([{label:(0,f.t)("core","No"),callback:()=>{}},{label:(0,f.t)("core","Yes"),variant:"primary",callback:()=>{n.clicked=!0,n(!0)}}]).build().setHTML(t).show().then(()=>{n.clicked||n(!1)})},prompt:function(t,e,n,o,s,i){return new Promise(o=>{(0,Mt.S)((0,a.$V)(()=>Promise.all([r.e(4208),r.e(9553)]).then(r.bind(r,99553))),{text:t,name:e,callback:n,inputName:s,isPassword:!!i},(...t)=>{n(...t),o()})})},filepicker(t,e,n=!1,r=void 0,o=void 0,s=Ut.bh.Choose,a=void 0,i=void 0){const l=(t,e)=>{const r=t=>{const e=t?.root||"";let n=t?.path||"";return n.startsWith(e)&&(n=n.slice(e.length)||"/"),n};return n?n=>t(n.map(r),e):n=>t(r(n[0]),e)},c=(0,Ut.a1)(t);s===this.FILEPICKER_TYPE_CUSTOM?(i.buttons||[]).forEach(t=>{c.addButton({callback:l(e,t.type),label:t.text,variant:t.defaultButton?"primary":"secondary"})}):c.setButtonFactory((t,n)=>{const r=[],[o]=t,a=o?.displayname||o?.basename||(0,Dt.basename)(n);return s===Ut.bh.Choose&&r.push({callback:l(e,Ut.bh.Choose),label:o&&!this.multiSelect?(0,f.t)("core","Choose {file}",{file:a}):(0,f.t)("core","Choose"),variant:"primary"}),s!==Ut.bh.CopyMove&&s!==Ut.bh.Copy||r.push({callback:l(e,Ut.bh.Copy),label:a?(0,f.t)("core","Copy to {target}",{target:a}):(0,f.t)("core","Copy"),variant:"primary",icon:Rt}),s!==Ut.bh.Move&&s!==Ut.bh.CopyMove||r.push({callback:l(e,Ut.bh.Move),label:a?(0,f.t)("core","Move to {target}",{target:a}):(0,f.t)("core","Move"),variant:s===Ut.bh.Move?"primary":"secondary",icon:''}),r}),r&&c.setMimeTypeFilter("string"==typeof r?[r]:r||[]),"function"==typeof i?.filter&&c.setFilter(t=>i.filter((t=>({id:t.fileid||null,path:t.path,mimetype:t.mime||null,mtime:t.mtime?.getTime()||null,permissions:t.permissions,name:t.attributes?.displayName||t.basename,etag:t.attributes?.etag||null,hasPreview:t.attributes?.hasPreview||null,mountType:t.attributes?.mountType||null,quotaAvailableBytes:t.attributes?.quotaAvailableBytes||null,icon:null,sharePermissions:null}))(t))),c.allowDirectories(!0===i?.allowDirectoryChooser||r?.includes("httpd/unix-directory")||!1).setMultiSelect(n).startAt(a).build().pick()},message:function(t,e,n,r,o=()=>{},s,a){const i=(new Ut.ik).setName(e).setText(a?"":t).setButtons(Ft._getLegacyButtons(r,o));switch(n){case"alert":i.setSeverity("warning");break;case"notice":i.setSeverity("info")}const l=i.build();return a&&l.setHTML(t),l.show().then(()=>{o._clicked||o(!1)})},_getLegacyButtons(t,e){const n=[];switch("object"==typeof t?t.type:t){case Ft.YES_NO_BUTTONS:n.push({label:t?.cancel??(0,f.t)("core","No"),callback:()=>{e._clicked=!0,e(!1)}}),n.push({label:t?.confirm??(0,f.t)("core","Yes"),variant:"primary",callback:()=>{e._clicked=!0,e(!0)}});break;case Ft.OK_BUTTONS:n.push({label:t?.confirm??(0,f.t)("core","OK"),variant:"primary",callback:()=>{e._clicked=!0,e(!0)}});break;default:et.error("Invalid call to OC.dialogs")}return n}},zt=Ft;function qt(){return document.head.dataset.requesttoken}function Ht(t,e){let n,r,o="";if(this.typelessListeners=[],this.closed=!1,e)for(n in e)o+=n+"="+encodeURIComponent(e[n])+"&";o+="requesttoken="+encodeURIComponent(qt()),r="&",-1===t.indexOf("?")&&(r="?"),this.source=new EventSource(t+r+o),this.source.onmessage=function(t){for(let e=0;et.cancel()),n.style.display="block")},finishedSaving(t,e){this.finishedAction(t,e)},finishedAction(t,e){"success"===e.status?this.finishedSuccess(t,e.data.message):this.finishedError(t,e.data.message)},finishedSuccess(t,e){const n=document.querySelector(t);n&&n instanceof HTMLElement&&(n.textContent=e,n.classList.remove("error"),n.classList.add("success"),n.getAnimations?.().forEach(t=>t.cancel()),window.setTimeout(function(){if(!(n&&n instanceof HTMLElement))return;const t=n.animate?.([{opacity:1},{opacity:0}],{duration:900,fill:"forwards"});t?t.addEventListener("finish",()=>{n.style.display="none"}):window.setTimeout(()=>{n.style.display="none"},900)},3e3),n.style.display="block")},finishedError(t,e){const n=document.querySelector(t);n&&n instanceof HTMLElement&&(n.textContent=e,n.classList.remove("success"),n.classList.add("error"),n.style.display="block")}};var Gt=r(93346);const Zt={requiresPasswordConfirmation:()=>(0,Gt.oB)(),requirePasswordConfirmation(t,e,n){(0,Gt.C5)().then(t,n)}},Xt={_plugins:{},register(t,e){let n=this._plugins[t];n||(n=this._plugins[t]=[]),n.push(e)},getPlugins(t){return this._plugins[t]||[]},attach(t,e,n){const r=this.getPlugins(t);for(let t=0;t=0&&n<=Ce}}function tn(t){return function(e){return null==e?void 0:e[t]}}const en=tn("byteLength"),nn=Xe(en);var rn=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;const on=pe?function(t){return ye?ye(t)&&!Ye(t):nn(t)&&rn.test(de.call(t))}:Ze(!1),sn=tn("length");function an(t,e){e=function(t){for(var e={},n=t.length,r=0;r=0))if(r.push(t),o.push(e),n.push(!0),l){if((d=t.length)!==e.length)return!1;for(;d--;)n.push({a:t[d],b:e[d]})}else{var f,p=ln(t);if(d=p.length,ln(e).length!==d)return!1;for(;d--;){if(!Ke(e,f=p[d]))return!1;n.push({a:t[f],b:e[f]})}}}else r.pop(),o.pop()}return!0}function mn(t){if(!je(t))return[];var e=[];for(var n in t)e.push(n);return Ae&&an(t,e),e}function gn(t){var e=sn(t);return function(n){if(null==n)return!1;var r=mn(n);if(sn(r))return!1;for(var o=0;o":">",'"':""","'":"'","`":"`"},sr=rr(or),ar=rr(Pn(or)),ir=dn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var lr=/(.)^/,cr={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},ur=/\\|'|\r|\n|\u2028|\u2029/g;function dr(t){return"\\"+cr[t]}var fr=/^\s*(\w|\$)+\s*$/;function pr(t,e,n){!e&&n&&(e=n),e=Bn({},e,dn.templateSettings);var r=RegExp([(e.escape||lr).source,(e.interpolate||lr).source,(e.evaluate||lr).source].join("|")+"|$","g"),o=0,s="__p+='";t.replace(r,function(e,n,r,a,i){return s+=t.slice(o,i).replace(ur,dr),o=i+e.length,n?s+="'+\n((__t=("+n+"))==null?'':_.escape(__t))+\n'":r?s+="'+\n((__t=("+r+"))==null?'':__t)+\n'":a&&(s+="';\n"+a+"\n__p+='"),e}),s+="';\n";var a,i=e.variable;if(i){if(!fr.test(i))throw new Error("variable is not a bare identifier: "+i)}else s="with(obj||{}){\n"+s+"}\n",i="obj";s="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+s+"return __p;\n";try{a=new Function(i,"_",s)}catch(t){throw t.source=s,t}var l=function(t){return a.call(this,t,dn)};return l.source="function("+i+"){\n"+s+"}",l}function hr(t,e,n){var r=(e=Fn(e)).length;if(!r)return Fe(n)?n.call(t):n;for(var o=0;o=a){if(!i.length)break;var l=i.pop();s=l.i,t=l.v,a=sn(t)}else{var c=t[s++];i.length>=e?r[o++]=c:_r(c)&&(Ve(c)||Je(c))?(i.push({i:s,v:t}),s=0,a=sn(t=c)):n||(r[o++]=c)}return r}const xr=xe(function(t,e){var n=(e=Cr(e,!1,!1)).length;if(n<1)throw new Error("bindAll must be passed function names");for(;n--;){var r=e[n];t[r]=Ar(t[r],t)}return t});function jr(t,e){var n=function(r){var o=n.cache,s=""+(e?e.apply(this,arguments):r);return Ke(o,s)||(o[s]=t.apply(this,arguments)),o[s]};return n.cache={},n}const kr=xe(function(t,e,n){return setTimeout(function(){return t.apply(null,n)},e)}),Tr=br(kr,dn,1);function Sr(t,e,n){var r,o,s,a,i=0;n||(n={});var l=function(){i=!1===n.leading?0:nr(),r=null,a=t.apply(o,s),r||(o=s=null)},c=function(){var c=nr();i||!1!==n.leading||(i=c);var u=e-(c-i);return o=this,s=arguments,u<=0||u>e?(r&&(clearTimeout(r),r=null),i=c,a=t.apply(o,s),r||(o=s=null)):r||!1===n.trailing||(r=setTimeout(l,u)),a};return c.cancel=function(){clearTimeout(r),i=0,r=o=s=null},c}function Pr(t,e,n){var r,o,s,a,i,l=function(){var c=nr()-o;e>c?r=setTimeout(l,e-c):(r=null,n||(a=t.apply(i,s)),r||(s=i=null))},c=xe(function(c){return i=this,s=c,o=nr(),r||(r=setTimeout(l,e),n&&(a=t.apply(i,s))),a});return c.cancel=function(){clearTimeout(r),r=s=i=null},c}function Er(t,e){return br(e,t)}function Or(t){return function(){return!t.apply(this,arguments)}}function Nr(){var t=arguments,e=t.length-1;return function(){for(var n=e,r=t[e].apply(this,arguments);n--;)r=t[n].call(this,r);return r}}function Lr(t,e){return function(){if(--t<1)return e.apply(this,arguments)}}function Br(t,e){var n;return function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=null),n}}const Ir=br(Br,2);function Rr(t,e,n){e=Qn(e,n);for(var r,o=ln(t),s=0,a=o.length;s0?0:o-1;s>=0&&s0?a=s>=0?s:Math.max(s+i,a):i=s>=0?Math.min(s+1,i):s+i+1;else if(n&&s&&i)return r[s=n(r,o)]===o?s:-1;if(o!=o)return(s=e(ue.call(r,a,i),Ge))>=0?s+a:-1;for(s=t>0?a:i-1;s>=0&&s=3;return function(e,n,r,o){var s=!_r(e)&&ln(e),a=(s||e).length,i=t>0?0:a-1;for(o||(r=e[s?s[i]:i],i+=t);i>=0&&i=0}const no=xe(function(t,e,n){var r,o;return Fe(e)?o=e:(e=Fn(e),r=e.slice(0,-1),e=e[e.length-1]),Kr(t,function(t){var s=o;if(!s){if(r&&r.length&&(t=zn(t,r)),null==t)return;s=t[e]}return null==s?s:s.apply(t,n)})});function ro(t,e){return Kr(t,Vn(e))}function oo(t,e){return Gr(t,Yn(e))}function so(t,e,n){var r,o,s=-1/0,a=-1/0;if(null==e||"number"==typeof e&&"object"!=typeof t[0]&&null!=t)for(var i=0,l=(t=_r(t)?t:Tn(t)).length;is&&(s=r);else e=Qn(e,n),Vr(t,function(t,n,r){((o=e(t,n,r))>a||o===-1/0&&s===-1/0)&&(s=t,a=o)});return s}function ao(t,e,n){var r,o,s=1/0,a=1/0;if(null==e||"number"==typeof e&&"object"!=typeof t[0]&&null!=t)for(var i=0,l=(t=_r(t)?t:Tn(t)).length;ir||void 0===n)return 1;if(n1&&(r=Kn(r,e[1])),e=mn(t)):(r=wo,e=Cr(e,!1,!1),t=Object(t));for(var o=0,s=e.length;o1&&(n=e[1])):(e=Kr(Cr(e,!1,!1),String),r=function(t,n){return!eo(e,n)}),bo(t,r,n)});function _o(t,e,n){return ue.call(t,0,Math.max(0,t.length-(null==e||n?1:e)))}function Co(t,e,n){return null==t||t.length<1?null==e||n?void 0:[]:null==e||n?t[0]:_o(t,t.length-e)}function xo(t,e,n){return ue.call(t,null==e||n?1:e)}function jo(t,e,n){return null==t||t.length<1?null==e||n?void 0:[]:null==e||n?t[t.length-1]:xo(t,Math.max(0,t.length-e))}function ko(t){return Gr(t,Boolean)}function To(t,e){return Cr(t,e,!1)}const So=xe(function(t,e){return e=Cr(e,!0,!0),Gr(t,function(t){return!eo(e,t)})}),Po=xe(function(t,e){return So(t,e)});function Eo(t,e,n,r){Se(e)||(r=n,n=e,e=!1),null!=n&&(n=Qn(n,r));for(var o=[],s=[],a=0,i=sn(t);a-1&&parseInt(navigator.userAgent.split("/").pop())<51){const t=document.querySelectorAll('[fill^="url(#"], [stroke^="url(#"], [filter^="url(#invert"]');for(let e,n=0,r=t.length;n=0?t.substr(e+1):t.length?t.substr(1):""},_decodeQuery:t=>t.replace(/\+/g," "),parseUrlQuery(){const t=this._parseHashQuery();let e;return t&&(e=Wo.parseQueryString(this._decodeQuery(t))),e=qo.extend(e||{},Wo.parseQueryString(this._decodeQuery(location.search))),e||{}},_onPopState(t){if(this._cancelPop)return void(this._cancelPop=!1);let e;if(this._handlers.length){e=t&&t.state,qo.isString(e)?e=Wo.parseQueryString(e):e||(e=this.parseUrlQuery()||{});for(let t=0;t="0"&&n<="9";a!==s&&(o++,e[o]="",s=a),e[o]+=n,r++}return e}const Yo={History:Ho,humanFileSize:ee.v7,computerFileSize(t){if("string"!=typeof t)return null;const e=t.toLowerCase().trim();let n;const r=e.match(/^[\s+]?([0-9]*)(\.([0-9]+))?( +)?([kmgtp]?b?)$/i);return null===r?null:(n=parseFloat(e),isFinite(n)?(r[5]&&(n*={b:1,k:1024,kb:1024,mb:1048576,m:1048576,gb:1073741824,g:1073741824,tb:1099511627776,t:1099511627776,pb:0x4000000000000,p:0x4000000000000}[r[5]]),n=Math.round(n),n):null)},formatDate:(t,e)=>(void 0===window.TESTING&&Wo.debug&&et.warn("OC.Util.formatDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment"),e=e||"LLL",re()(t).format(e)),relativeModifiedDate(e){void 0===window.TESTING&&Wo.debug&&et.warn("OC.Util.relativeModifiedDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment");const n=re()().diff(re()(e));return n>=0&&n<45e3?t("core","seconds ago"):re()(e).fromNow()},getScrollBarWidth(){if(this._scrollBarWidth)return this._scrollBarWidth;const t=document.createElement("p");t.style.width="100%",t.style.height="200px";const e=document.createElement("div");e.style.position="absolute",e.style.top="0px",e.style.left="0px",e.style.visibility="hidden",e.style.width="200px",e.style.height="150px",e.style.overflow="hidden",e.appendChild(t),document.body.appendChild(e);const n=t.offsetWidth;e.style.overflow="scroll";let r=t.offsetWidth;return n===r&&(r=e.clientWidth),document.body.removeChild(e),this._scrollBarWidth=n-r,this._scrollBarWidth},stripTime:t=>new Date(t.getFullYear(),t.getMonth(),t.getDate()),naturalSortCompare(t,e){let n;const r=$o(t),o=$o(e);for(n=0;r[n]&&o[n];n++)if(r[n]!==o[n]){const t=Number(r[n]),e=Number(o[n]);return t==r[n]&&e==o[n]?t-e:r[n].localeCompare(o[n],Wo.getLanguage())}return r.length-o.length},waitFor(t,e){const n=function(){!0!==t()&&setTimeout(n,e)};n()},isCookieSetToValue(t,e){const n=document.cookie.split(";");for(let r=0;r!$_",appConfig:St,appswebroots:Pt,config:Ot,currentUser:Bt,dialogs:zt,EventSource:$t,MimeType:o,getCurrentUser:function(){return{uid:Bt,displayName:Lt}},isUserAdmin:()=>Tt,L10N:Yt,registerXHRForErrorProcessing:()=>{},getCapabilities:function(){return OC.debug&&et.warn("OC.getCapabilities is deprecated and will be removed in Nextcloud 21. See @nextcloud/capabilities"),(0,Et.F)()},basename:kt.P8,encodePath:kt.O0,dirname:kt.pD,isSamePath:kt.ys,joinPaths:kt.fj,getCanonicalLocale:f.lO,getLocale:f.JK,getLanguage:f.Z0,buildQueryString:function(t){return t?new URLSearchParams(t).toString():""},parseQueryString:function(t){const e=new URLSearchParams(t);return Object.fromEntries(e.entries())},msg:Qt,PasswordConfirmation:Zt,Plugins:Xt,theme:te,Util:Yo,debug:It,filePath:l.fg,generateUrl:l.Jv,getRootPath:l.aU,imagePath:l.d0,requestToken:qt(),linkTo:l.uM,linkToOCS:(t,e)=>(0,l.KT)(t,{},{ocsVersion:e||1})+"/",linkToRemote:l.dC,linkToRemoteBase:function(t){return(0,l.aU)()+"/remote.php/"+t},webroot:Ko};(0,jt.B1)("csrf-token-update",t=>{OC.requestToken=t.token,et.info("OC.requestToken changed",{token:t.token})});const Jo={data:()=>({OC:Wo}),methods:{t:Yt.translate.bind(Yt),n:Yt.translatePlural.bind(Yt)}};a.Ay.mixin(Jo),(new(a.Ay.extend(xt))).$mount("#login")},14430(t,e,n){"use strict";var r=n(71354),o=n.n(r),s=n(76314),a=n.n(s)()(o());a.push([t.id,".button-vue[data-v-bbf83d00]{margin-top:.5rem}","",{version:3,sources:["webpack://./core/src/components/login/LoginButton.vue"],names:[],mappings:"AACA,6BACC,gBAAA",sourcesContent:["\n.button-vue {\n\tmargin-top: .5rem;\n}\n"],sourceRoot:""}]);const i=a;n.d(e,["A",0,i])},108(t,e,n){"use strict";var r=n(71354),o=n.n(r),s=n(76314),a=n.n(s)()(o());a.push([t.id,".login-form[data-v-fac76c6a]{text-align:start;font-size:1rem;margin:0}.login-form__fieldset[data-v-fac76c6a]{width:100%;display:flex;flex-direction:column;gap:.5rem}.login-form__headline[data-v-fac76c6a]{text-align:center;overflow-wrap:anywhere}.login-form[data-v-fac76c6a] input:invalid:not(:user-invalid){border-color:var(--color-border-maxcontrast) !important}","",{version:3,sources:["webpack://./core/src/components/login/LoginForm.vue"],names:[],mappings:"AACA,6BACC,gBAAA,CACA,cAAA,CACA,QAAA,CAEA,uCACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,SAAA,CAGD,uCACC,iBAAA,CACA,sBAAA,CAID,8DACC,uDAAA",sourcesContent:["\n.login-form {\n\ttext-align: start;\n\tfont-size: 1rem;\n\tmargin: 0;\n\n\t&__fieldset {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: .5rem;\n\t}\n\n\t&__headline {\n\t\ttext-align: center;\n\t\toverflow-wrap: anywhere;\n\t}\n\n\t// Only show the error state if the user interacted with the login box\n\t:deep(input:invalid:not(:user-invalid)) {\n\t\tborder-color: var(--color-border-maxcontrast) !important;\n\t}\n}\n"],sourceRoot:""}]);const i=a;n.d(e,["A",0,i])},86524(t,e,n){"use strict";var r=n(71354),o=n.n(r),s=n(76314),a=n.n(s)()(o());a.push([t.id,".password-less-login-form[data-v-25758ef3]{display:flex;flex-direction:column;gap:.5rem;margin:0}","",{version:3,sources:["webpack://./core/src/components/login/PasswordLessLoginForm.vue"],names:[],mappings:"AACA,2CACC,YAAA,CACA,qBAAA,CACA,SAAA,CACA,QAAA",sourcesContent:["\n.password-less-login-form {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 0.5rem;\n\tmargin: 0;\n}\n"],sourceRoot:""}]);const i=a;n.d(e,["A",0,i])},99322(t,e,n){"use strict";var r=n(71354),o=n.n(r),s=n(76314),a=n.n(s)()(o());a.push([t.id,".reset-password-form[data-v-759a0fdd]{display:flex;flex-direction:column;gap:.5rem;width:100%}","",{version:3,sources:["webpack://./core/src/components/login/ResetPassword.vue"],names:[],mappings:"AACA,sCACC,YAAA,CACA,qBAAA,CACA,SAAA,CACA,UAAA",sourcesContent:["\n.reset-password-form {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: .5rem;\n\twidth: 100%;\n}\n"],sourceRoot:""}]);const i=a;n.d(e,["A",0,i])},11999(t,e,n){"use strict";var r=n(71354),o=n.n(r),s=n(76314),a=n.n(s)()(o());a.push([t.id,".login-box[data-v-518c0816]{width:320px;box-sizing:border-box}.login-box__wrapper[data-v-518c0816]{display:flex;flex-direction:column;gap:calc(2*var(--default-grid-baseline))}.login-box__alternative-logins[data-v-518c0816]{display:flex;flex-direction:column;gap:.75rem}.fade-enter-active[data-v-518c0816],.fade-leave-active[data-v-518c0816]{transition:opacity .3s}.fade-enter[data-v-518c0816],.fade-leave-to[data-v-518c0816]{opacity:0}","",{version:3,sources:["webpack://./core/src/views/Login.vue"],names:[],mappings:"AACA,4BAEC,WAAA,CACA,qBAAA,CAEA,qCACC,YAAA,CACA,qBAAA,CACA,wCAAA,CAGD,gDACC,YAAA,CACA,qBAAA,CACA,UAAA,CAIF,wEACC,sBAAA,CAGD,6DACC,SAAA",sourcesContent:["\n.login-box {\n\t// Same size as dashboard panels\n\twidth: 320px;\n\tbox-sizing: border-box;\n\n\t&__wrapper {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: calc(2 * var(--default-grid-baseline));\n\t}\n\n\t&__alternative-logins {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: 0.75rem;\n\t}\n}\n\n.fade-enter-active, .fade-leave-active {\n\ttransition: opacity .3s;\n}\n\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\n\topacity: 0;\n}\n"],sourceRoot:""}]);const i=a;n.d(e,["A",0,i])},81604(t,e,n){"use strict";var r=n(71354),o=n.n(r),s=n(76314),a=n.n(s)()(o());a.push([t.id,"\nfieldset[data-v-2c0ecaf9] {\n\ttext-align: center;\n}\ninput[type=submit][data-v-2c0ecaf9] {\n\tmargin-top: 20px;\n}\n","",{version:3,sources:["webpack://./core/src/components/login/UpdatePassword.vue"],names:[],mappings:";AAmIA;CACA,kBAAA;AACA;AAEA;CACA,gBAAA;AACA",sourcesContent:["\x3c!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n--\x3e\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginButton.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!./LoginButton.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginButton.vue?vue&type=style&index=0&id=bbf83d00&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./LoginButton.vue?vue&type=style&index=0&id=bbf83d00&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LoginButton.vue?vue&type=template&id=bbf83d00&scoped=true\"\nimport script from \"./LoginButton.vue?vue&type=script&lang=js\"\nexport * from \"./LoginButton.vue?vue&type=script&lang=js\"\nimport style0 from \"./LoginButton.vue?vue&type=style&index=0&id=bbf83d00&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 \"bbf83d00\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcButton',{attrs:{\"variant\":\"primary\",\"type\":\"submit\",\"wide\":true,\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.$emit('click')}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('div',{staticClass:\"submit-wrapper__icon icon-loading-small-dark\"}):_c('ArrowRight',{staticClass:\"submit-wrapper__icon\"})]},proxy:true}])},[_vm._v(\"\\n\\t\"+_vm._s(!_vm.loading ? _vm.value : _vm.valueLoading)+\"\\n\\t\")])\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 */\n\nexport default {\n\n\tcomputed: {\n\t\tuserNameInputLengthIs255() {\n\t\t\treturn this.user.length >= 255\n\t\t},\n\t\tuserInputHelperText() {\n\t\t\tif (this.userNameInputLengthIs255) {\n\t\t\t\treturn t('core', 'Email length is at max (255)')\n\t\t\t}\n\t\t\treturn undefined\n\t\t},\n\t},\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginForm.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!./LoginForm.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginForm.vue?vue&type=style&index=0&id=fac76c6a&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./LoginForm.vue?vue&type=style&index=0&id=fac76c6a&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LoginForm.vue?vue&type=template&id=fac76c6a&scoped=true\"\nimport script from \"./LoginForm.vue?vue&type=script&lang=js\"\nexport * from \"./LoginForm.vue?vue&type=script&lang=js\"\nimport style0 from \"./LoginForm.vue?vue&type=style&index=0&id=fac76c6a&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 \"fac76c6a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('form',{ref:\"loginForm\",staticClass:\"login-form\",attrs:{\"method\":\"post\",\"name\":\"login\",\"action\":_vm.loginActionUrl},on:{\"submit\":_vm.submit}},[_c('fieldset',{staticClass:\"login-form__fieldset\",attrs:{\"data-login-form\":\"\"}},[(_vm.apacheAuthFailed)?_c('NcNoteCard',{attrs:{\"title\":_vm.t('core', 'Server side authentication failed!'),\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('core', 'Please contact your administrator.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.csrfCheckFailed)?_c('NcNoteCard',{attrs:{\"heading\":_vm.t('core', 'Session error'),\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('core', 'It appears your session token has expired, please refresh the page and try again.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.messages.length > 0)?_c('NcNoteCard',_vm._l((_vm.messages),function(message,index){return _c('div',{key:index},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(message)),_c('br')])}),0):_vm._e(),_vm._v(\" \"),(_vm.internalException)?_c('NcNoteCard',{class:_vm.t('core', 'An internal error occurred.'),attrs:{\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('core', 'Please try again or contact your administrator.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"hidden\",attrs:{\"id\":\"message\"}},[_c('img',{staticClass:\"float-spinner\",attrs:{\"alt\":\"\",\"src\":_vm.loadingIcon}}),_vm._v(\" \"),_c('span',{attrs:{\"id\":\"messageText\"}}),_vm._v(\" \"),_c('div',{staticStyle:{\"clear\":\"both\"}})]),_vm._v(\" \"),_c('h2',{staticClass:\"login-form__headline\",attrs:{\"data-login-form-headline\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.headlineText)+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcTextField',{ref:\"user\",class:{ shake: _vm.invalidPassword },attrs:{\"id\":\"user\",\"label\":_vm.loginText,\"name\":\"user\",\"maxlength\":255,\"autocapitalize\":\"none\",\"spellchecking\":false,\"autocomplete\":_vm.autoCompleteAllowed ? 'username' : 'off',\"required\":\"\",\"error\":_vm.userNameInputLengthIs255,\"helper-text\":_vm.userInputHelperText,\"data-login-form-input-user\":\"\"},on:{\"change\":_vm.updateUsername},model:{value:(_vm.user),callback:function ($$v) {_vm.user=$$v},expression:\"user\"}}),_vm._v(\" \"),_c('NcPasswordField',{ref:\"password\",class:{ shake: _vm.invalidPassword },attrs:{\"id\":\"password\",\"name\":\"password\",\"spellchecking\":false,\"autocapitalize\":\"none\",\"autocomplete\":_vm.autoCompleteAllowed ? 'current-password' : 'off',\"label\":_vm.t('core', 'Password'),\"helper-text\":_vm.errorLabel,\"error\":_vm.isError,\"visible\":_vm.visible,\"data-login-form-input-password\":\"\",\"required\":\"\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_vm._v(\" \"),(_vm.remembermeAllowed)?_c('NcCheckboxRadioSwitch',{ref:\"rememberme\",attrs:{\"id\":\"rememberme\",\"name\":\"rememberme\",\"value\":\"1\",\"data-login-form-input-rememberme\":\"\"},model:{value:(_vm.rememberme),callback:function ($$v) {_vm.rememberme=$$v},expression:\"rememberme\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('core', 'Remember me'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('LoginButton',{attrs:{\"data-login-form-submit\":\"\",\"loading\":_vm.loading}}),_vm._v(\" \"),(_vm.redirectUrl)?_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"redirect_url\"},domProps:{\"value\":_vm.redirectUrl}}):_vm._e(),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"timezone\"},domProps:{\"value\":_vm.timezone}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"timezone_offset\"},domProps:{\"value\":_vm.timezoneOffset}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"requesttoken\"},domProps:{\"value\":_vm.requestToken}}),_vm._v(\" \"),(_vm.directLogin)?_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"direct\",\"value\":\"1\"}}):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * A custom Error used to return a more nuanced error detailing _why_ one of the eight documented\n * errors in the spec was raised after calling `navigator.credentials.create()` or\n * `navigator.credentials.get()`:\n *\n * - `AbortError`\n * - `ConstraintError`\n * - `InvalidStateError`\n * - `NotAllowedError`\n * - `NotSupportedError`\n * - `SecurityError`\n * - `TypeError`\n * - `UnknownError`\n *\n * Error messages were determined through investigation of the spec to determine under which\n * scenarios a given error would be raised.\n */\nexport class WebAuthnError extends Error {\n constructor({ message, code, cause, name, }) {\n // @ts-ignore: help Rollup understand that `cause` is okay to set\n super(message, { cause });\n Object.defineProperty(this, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.name = name ?? cause.name;\n this.code = code;\n }\n}\n","class BaseWebAuthnAbortService {\n constructor() {\n Object.defineProperty(this, \"controller\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n }\n createNewAbortSignal() {\n // Abort any existing calls to navigator.credentials.create() or navigator.credentials.get()\n if (this.controller) {\n const abortError = new Error('Cancelling existing WebAuthn API call for new one');\n abortError.name = 'AbortError';\n this.controller.abort(abortError);\n }\n const newController = new AbortController();\n this.controller = newController;\n return newController.signal;\n }\n cancelCeremony() {\n if (this.controller) {\n const abortError = new Error('Manually cancelling existing WebAuthn API call');\n abortError.name = 'AbortError';\n this.controller.abort(abortError);\n this.controller = undefined;\n }\n }\n}\n/**\n * A service singleton to help ensure that only a single WebAuthn ceremony is active at a time.\n *\n * Users of **@simplewebauthn/browser** shouldn't typically need to use this, but it can help e.g.\n * developers building projects that use client-side routing to better control the behavior of\n * their UX in response to router navigation events.\n */\nexport const WebAuthnAbortService = new BaseWebAuthnAbortService();\n","/**\n * Convert the given array buffer into a Base64URL-encoded string. Ideal for converting various\n * credential response ArrayBuffers to string for sending back to the server as JSON.\n *\n * Helper method to compliment `base64URLStringToBuffer`\n */\nexport function bufferToBase64URLString(buffer) {\n const bytes = new Uint8Array(buffer);\n let str = '';\n for (const charCode of bytes) {\n str += String.fromCharCode(charCode);\n }\n const base64String = btoa(str);\n return base64String.replace(/\\+/g, '-').replace(/\\//g, '_').replace(/=/g, '');\n}\n","/**\n * Convert from a Base64URL-encoded string to an Array Buffer. Best used when converting a\n * credential ID from a JSON string to an ArrayBuffer, like in allowCredentials or\n * excludeCredentials\n *\n * Helper method to compliment `bufferToBase64URLString`\n */\nexport function base64URLStringToBuffer(base64URLString) {\n // Convert from Base64URL to Base64\n const base64 = base64URLString.replace(/-/g, '+').replace(/_/g, '/');\n /**\n * Pad with '=' until it's a multiple of four\n * (4 - (85 % 4 = 1) = 3) % 4 = 3 padding\n * (4 - (86 % 4 = 2) = 2) % 4 = 2 padding\n * (4 - (87 % 4 = 3) = 1) % 4 = 1 padding\n * (4 - (88 % 4 = 0) = 4) % 4 = 0 padding\n */\n const padLength = (4 - (base64.length % 4)) % 4;\n const padded = base64.padEnd(base64.length + padLength, '=');\n // Convert to a binary string\n const binary = atob(padded);\n // Convert binary string to buffer\n const buffer = new ArrayBuffer(binary.length);\n const bytes = new Uint8Array(buffer);\n for (let i = 0; i < binary.length; i++) {\n bytes[i] = binary.charCodeAt(i);\n }\n return buffer;\n}\n","/**\n * Determine if the browser is capable of Webauthn\n */\nexport function browserSupportsWebAuthn() {\n return _browserSupportsWebAuthnInternals.stubThis(globalThis?.PublicKeyCredential !== undefined &&\n typeof globalThis.PublicKeyCredential === 'function');\n}\n/**\n * Make it possible to stub the return value during testing\n * @ignore Don't include this in docs output\n */\nexport const _browserSupportsWebAuthnInternals = {\n stubThis: (value) => value,\n};\n","import { browserSupportsWebAuthn } from './browserSupportsWebAuthn.js';\n/**\n * Determine if the browser supports conditional UI, so that WebAuthn credentials can\n * be shown to the user in the browser's typical password autofill popup.\n */\nexport function browserSupportsWebAuthnAutofill() {\n if (!browserSupportsWebAuthn()) {\n return _browserSupportsWebAuthnAutofillInternals.stubThis(new Promise((resolve) => resolve(false)));\n }\n /**\n * I don't like the `as unknown` here but there's a `declare var PublicKeyCredential` in\n * TS' DOM lib that's making it difficult for me to just go `as PublicKeyCredentialFuture` as I\n * want. I think I'm fine with this for now since it's _supposed_ to be temporary, until TS types\n * have a chance to catch up.\n */\n const globalPublicKeyCredential = globalThis\n .PublicKeyCredential;\n if (globalPublicKeyCredential?.isConditionalMediationAvailable === undefined) {\n return _browserSupportsWebAuthnAutofillInternals.stubThis(new Promise((resolve) => resolve(false)));\n }\n return _browserSupportsWebAuthnAutofillInternals.stubThis(globalPublicKeyCredential.isConditionalMediationAvailable());\n}\n// Make it possible to stub the return value during testing\nexport const _browserSupportsWebAuthnAutofillInternals = {\n stubThis: (value) => value,\n};\n","import { base64URLStringToBuffer } from './base64URLStringToBuffer.js';\nexport function toPublicKeyCredentialDescriptor(descriptor) {\n const { id } = descriptor;\n return {\n ...descriptor,\n id: base64URLStringToBuffer(id),\n /**\n * `descriptor.transports` is an array of our `AuthenticatorTransportFuture` that includes newer\n * transports that TypeScript's DOM lib is ignorant of. Convince TS that our list of transports\n * are fine to pass to WebAuthn since browsers will recognize the new value.\n */\n transports: descriptor.transports,\n };\n}\n","const attachments = ['cross-platform', 'platform'];\n/**\n * If possible coerce a `string` value into a known `AuthenticatorAttachment`\n */\nexport function toAuthenticatorAttachment(attachment) {\n if (!attachment) {\n return;\n }\n if (attachments.indexOf(attachment) < 0) {\n return;\n }\n return attachment;\n}\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./LockOpen.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./LockOpen.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./LockOpen.vue?vue&type=template&id=d7513faa\"\nimport script from \"./LockOpen.vue?vue&type=script&lang=js\"\nexport * from \"./LockOpen.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 lock-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\":\"M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10A2,2 0 0,1 6,8H15V6A3,3 0 0,0 12,3A3,3 0 0,0 9,6H7A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,17A2,2 0 0,0 14,15A2,2 0 0,0 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\n/**\n *\n * @param user\n */\nfunction getLogger(user) {\n\tif (user === null) {\n\t\treturn getLoggerBuilder()\n\t\t\t.setApp('core')\n\t\t\t.build()\n\t}\n\treturn getLoggerBuilder()\n\t\t.setApp('core')\n\t\t.setUid(user.uid)\n\t\t.build()\n}\n\nexport default getLogger(getCurrentUser())\n\nexport const unifiedSearchLogger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Axios from '@nextcloud/axios';\nimport { generateUrl } from '@nextcloud/router';\nimport { startAuthentication as startWebauthnAuthentication } from '@simplewebauthn/browser';\nimport logger from '../logger.js';\nexport class NoValidCredentials extends Error {\n}\n/**\n * Start webautn authentication\n * This loads the challenge, connects to the authenticator and returns the repose that needs to be sent to the server.\n *\n * @param loginName Name to login\n */\nexport async function startAuthentication(loginName) {\n const url = generateUrl('/login/webauthn/start');\n const { data } = await Axios.post(url, { loginName });\n if (!data.allowCredentials || data.allowCredentials.length === 0) {\n logger.error('No valid credentials returned for webauthn');\n throw new NoValidCredentials();\n }\n return await startWebauthnAuthentication({ optionsJSON: data });\n}\n/**\n * Verify webauthn authentication\n *\n * @param authData The authentication data to sent to the server\n */\nexport async function finishAuthentication(authData) {\n const url = generateUrl('/login/webauthn/finish');\n const { data } = await Axios.post(url, { data: JSON.stringify(authData) });\n return data;\n}\n","\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordLessLoginForm.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!./PasswordLessLoginForm.vue?vue&type=script&lang=js\"","import { bufferToBase64URLString } from '../helpers/bufferToBase64URLString.js';\nimport { base64URLStringToBuffer } from '../helpers/base64URLStringToBuffer.js';\nimport { browserSupportsWebAuthn } from '../helpers/browserSupportsWebAuthn.js';\nimport { browserSupportsWebAuthnAutofill } from '../helpers/browserSupportsWebAuthnAutofill.js';\nimport { toPublicKeyCredentialDescriptor } from '../helpers/toPublicKeyCredentialDescriptor.js';\nimport { identifyAuthenticationError } from '../helpers/identifyAuthenticationError.js';\nimport { WebAuthnAbortService } from '../helpers/webAuthnAbortService.js';\nimport { toAuthenticatorAttachment } from '../helpers/toAuthenticatorAttachment.js';\n/**\n * Begin authenticator \"login\" via WebAuthn assertion\n *\n * @param optionsJSON Output from **@simplewebauthn/server**'s `generateAuthenticationOptions()`\n * @param useBrowserAutofill (Optional) Initialize conditional UI to enable logging in via browser autofill prompts. Defaults to `false`.\n * @param verifyBrowserAutofillInput (Optional) Ensure a suitable `` element is present when `useBrowserAutofill` is `true`. Defaults to `true`.\n */\nexport async function startAuthentication(options) {\n // @ts-ignore: Intentionally check for old call structure to warn about improper API call\n if (!options.optionsJSON && options.challenge) {\n console.warn('startAuthentication() was not called correctly. It will try to continue with the provided options, but this call should be refactored to use the expected call structure instead. See https://simplewebauthn.dev/docs/packages/browser#typeerror-cannot-read-properties-of-undefined-reading-challenge for more information.');\n // @ts-ignore: Reassign the options, passed in as a positional argument, to the expected variable\n options = { optionsJSON: options };\n }\n const { optionsJSON, useBrowserAutofill = false, verifyBrowserAutofillInput = true, } = options;\n if (!browserSupportsWebAuthn()) {\n throw new Error('WebAuthn is not supported in this browser');\n }\n // We need to avoid passing empty array to avoid blocking retrieval\n // of public key\n let allowCredentials;\n if (optionsJSON.allowCredentials?.length !== 0) {\n allowCredentials = optionsJSON.allowCredentials?.map(toPublicKeyCredentialDescriptor);\n }\n // We need to convert some values to Uint8Arrays before passing the credentials to the navigator\n const publicKey = {\n ...optionsJSON,\n challenge: base64URLStringToBuffer(optionsJSON.challenge),\n allowCredentials,\n };\n // Prepare options for `.get()`\n const getOptions = {};\n /**\n * Set up the page to prompt the user to select a credential for authentication via the browser's\n * input autofill mechanism.\n */\n if (useBrowserAutofill) {\n if (!(await browserSupportsWebAuthnAutofill())) {\n throw Error('Browser does not support WebAuthn autofill');\n }\n // Check for an with \"webauthn\" in its `autocomplete` attribute\n const eligibleInputs = document.querySelectorAll(\"input[autocomplete$='webauthn']\");\n // WebAuthn autofill requires at least one valid input\n if (eligibleInputs.length < 1 && verifyBrowserAutofillInput) {\n throw Error('No with \"webauthn\" as the only or last value in its `autocomplete` attribute was detected');\n }\n // `CredentialMediationRequirement` doesn't know about \"conditional\" yet as of\n // typescript@4.6.3\n getOptions.mediation = 'conditional';\n // Conditional UI requires an empty allow list\n publicKey.allowCredentials = [];\n }\n // Finalize options\n getOptions.publicKey = publicKey;\n // Set up the ability to cancel this request if the user attempts another\n getOptions.signal = WebAuthnAbortService.createNewAbortSignal();\n // Wait for the user to complete assertion\n let credential;\n try {\n credential = (await navigator.credentials.get(getOptions));\n }\n catch (err) {\n throw identifyAuthenticationError({ error: err, options: getOptions });\n }\n if (!credential) {\n throw new Error('Authentication was not completed');\n }\n const { id, rawId, response, type } = credential;\n let userHandle = undefined;\n if (response.userHandle) {\n userHandle = bufferToBase64URLString(response.userHandle);\n }\n // Convert values to base64 to make it easier to send back to the server\n return {\n id,\n rawId: bufferToBase64URLString(rawId),\n response: {\n authenticatorData: bufferToBase64URLString(response.authenticatorData),\n clientDataJSON: bufferToBase64URLString(response.clientDataJSON),\n signature: bufferToBase64URLString(response.signature),\n userHandle,\n },\n type,\n clientExtensionResults: credential.getClientExtensionResults(),\n authenticatorAttachment: toAuthenticatorAttachment(credential.authenticatorAttachment),\n };\n}\n","import { isValidDomain } from './isValidDomain.js';\nimport { WebAuthnError } from './webAuthnError.js';\n/**\n * Attempt to intuit _why_ an error was raised after calling `navigator.credentials.get()`\n */\nexport function identifyAuthenticationError({ error, options, }) {\n const { publicKey } = options;\n if (!publicKey) {\n throw Error('options was missing required publicKey property');\n }\n if (error.name === 'AbortError') {\n if (options.signal instanceof AbortSignal) {\n // https://www.w3.org/TR/webauthn-2/#sctn-createCredential (Step 16)\n return new WebAuthnError({\n message: 'Authentication ceremony was sent an abort signal',\n code: 'ERROR_CEREMONY_ABORTED',\n cause: error,\n });\n }\n }\n else if (error.name === 'NotAllowedError') {\n /**\n * Pass the error directly through. Platforms are overloading this error beyond what the spec\n * defines and we don't want to overwrite potentially useful error messages.\n */\n return new WebAuthnError({\n message: error.message,\n code: 'ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY',\n cause: error,\n });\n }\n else if (error.name === 'SecurityError') {\n const effectiveDomain = globalThis.location.hostname;\n if (!isValidDomain(effectiveDomain)) {\n // https://www.w3.org/TR/webauthn-2/#sctn-discover-from-external-source (Step 5)\n return new WebAuthnError({\n message: `${globalThis.location.hostname} is an invalid domain`,\n code: 'ERROR_INVALID_DOMAIN',\n cause: error,\n });\n }\n else if (publicKey.rpId !== effectiveDomain) {\n // https://www.w3.org/TR/webauthn-2/#sctn-discover-from-external-source (Step 6)\n return new WebAuthnError({\n message: `The RP ID \"${publicKey.rpId}\" is invalid for this domain`,\n code: 'ERROR_INVALID_RP_ID',\n cause: error,\n });\n }\n }\n else if (error.name === 'UnknownError') {\n // https://www.w3.org/TR/webauthn-2/#sctn-op-get-assertion (Step 1)\n // https://www.w3.org/TR/webauthn-2/#sctn-op-get-assertion (Step 12)\n return new WebAuthnError({\n message: 'The authenticator was unable to process the specified options, or could not create a new assertion signature',\n code: 'ERROR_AUTHENTICATOR_GENERAL_ERROR',\n cause: error,\n });\n }\n return error;\n}\n","/**\n * A simple test to determine if a hostname is a properly-formatted domain name\n *\n * A \"valid domain\" is defined here: https://url.spec.whatwg.org/#valid-domain\n *\n * Regex was originally sourced from here, then remixed to add punycode support:\n * https://www.oreilly.com/library/view/regular-expressions-cookbook/9781449327453/ch08s15.html\n */\nexport function isValidDomain(hostname) {\n return (\n // Consider localhost valid as well since it's okay wrt Secure Contexts\n hostname === 'localhost' ||\n // Support punycode (ACE) or ascii labels and domains\n /^((xn--[a-z0-9-]+|[a-z0-9]+(-[a-z0-9]+)*)\\.)+([a-z]{2,}|xn--[a-z0-9-]+)$/i.test(hostname));\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordLessLoginForm.vue?vue&type=style&index=0&id=25758ef3&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./PasswordLessLoginForm.vue?vue&type=style&index=0&id=25758ef3&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./PasswordLessLoginForm.vue?vue&type=template&id=25758ef3&scoped=true\"\nimport script from \"./PasswordLessLoginForm.vue?vue&type=script&lang=js\"\nexport * from \"./PasswordLessLoginForm.vue?vue&type=script&lang=js\"\nimport style0 from \"./PasswordLessLoginForm.vue?vue&type=style&index=0&id=25758ef3&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 \"25758ef3\",\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.isHttps || _vm.isLocalhost) && _vm.supportsWebauthn)?_c('form',{ref:\"loginForm\",staticClass:\"password-less-login-form\",attrs:{\"aria-labelledby\":\"password-less-login-form-title\",\"method\":\"post\",\"name\":\"login\"},on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('h2',{attrs:{\"id\":\"password-less-login-form-title\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Log in with a device'))+\"\\n\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"required\":\"\",\"model-value\":_vm.user,\"autocomplete\":_vm.autoCompleteAllowed ? 'on' : 'off',\"error\":!_vm.validCredentials,\"label\":_vm.t('core', 'Login or email'),\"placeholder\":_vm.t('core', 'Login or email'),\"helper-text\":!_vm.validCredentials ? _vm.t('core', 'Your account is not setup for passwordless login.') : ''},on:{\"update:value\":_vm.changeUsername}}),_vm._v(\" \"),(_vm.validCredentials)?_c('LoginButton',{attrs:{\"loading\":_vm.loading},on:{\"click\":_vm.authenticate}}):_vm._e()],1):(!_vm.isHttps && !_vm.isLocalhost)?_c('NcEmptyContent',{attrs:{\"name\":_vm.t('core', 'Your connection is not secure'),\"description\":_vm.t('core', 'Passwordless authentication is only available over a secure connection.')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('LockOpenIcon')]},proxy:true}])}):_c('NcEmptyContent',{attrs:{\"name\":_vm.t('core', 'Browser not supported'),\"description\":_vm.t('core', 'Passwordless authentication is not supported in your browser.')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('InformationIcon')]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.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-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('form',{staticClass:\"reset-password-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('h2',[_vm._v(_vm._s(_vm.t('core', 'Reset password')))]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"id\":\"user\",\"name\":\"user\",\"maxlength\":255,\"autocapitalize\":\"off\",\"label\":_vm.t('core', 'Login or email'),\"error\":_vm.userNameInputLengthIs255,\"helper-text\":_vm.userInputHelperText,\"required\":\"\"},on:{\"change\":_vm.updateUsername},model:{value:(_vm.user),callback:function ($$v) {_vm.user=$$v},expression:\"user\"}}),_vm._v(\" \"),_c('LoginButton',{attrs:{\"loading\":_vm.loading,\"value\":_vm.t('core', 'Reset password')}}),_vm._v(\" \"),_c('NcButton',{attrs:{\"variant\":\"tertiary\",\"wide\":\"\"},on:{\"click\":function($event){return _vm.$emit('abort')}}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Back to login'))+\"\\n\\t\")]),_vm._v(\" \"),(_vm.message === 'send-success')?_c('NcNoteCard',{attrs:{\"type\":\"success\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help.'))+\"\\n\\t\")]):(_vm.message === 'send-error')?_c('NcNoteCard',{attrs:{\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Couldn\\'t send reset email. Please contact your administrator.'))+\"\\n\\t\")]):(_vm.message === 'reset-error')?_c('NcNoteCard',{attrs:{\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Password cannot be changed. Please contact your administrator.'))+\"\\n\\t\")]):_vm._e()],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!./ResetPassword.vue?vue&type=style&index=0&id=759a0fdd&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./ResetPassword.vue?vue&type=style&index=0&id=759a0fdd&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ResetPassword.vue?vue&type=template&id=759a0fdd&scoped=true\"\nimport script from \"./ResetPassword.vue?vue&type=script&lang=ts\"\nexport * from \"./ResetPassword.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ResetPassword.vue?vue&type=style&index=0&id=759a0fdd&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 \"759a0fdd\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.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!./UpdatePassword.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.vue?vue&type=style&index=0&id=2c0ecaf9&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.vue?vue&type=style&index=0&id=2c0ecaf9&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UpdatePassword.vue?vue&type=template&id=2c0ecaf9&scoped=true\"\nimport script from \"./UpdatePassword.vue?vue&type=script&lang=js\"\nexport * from \"./UpdatePassword.vue?vue&type=script&lang=js\"\nimport style0 from \"./UpdatePassword.vue?vue&type=style&index=0&id=2c0ecaf9&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c0ecaf9\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('fieldset',[_c('p',[_c('label',{staticClass:\"infield\",attrs:{\"for\":\"password\"}},[_vm._v(_vm._s(_vm.t('core', 'New password')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.password),expression:\"password\"}],attrs:{\"id\":\"password\",\"type\":\"password\",\"name\":\"password\",\"autocomplete\":\"new-password\",\"autocapitalize\":\"none\",\"spellcheck\":\"false\",\"required\":\"\",\"placeholder\":_vm.t('core', 'New password')},domProps:{\"value\":(_vm.password)},on:{\"input\":function($event){if($event.target.composing)return;_vm.password=$event.target.value}}})]),_vm._v(\" \"),(_vm.encrypted)?_c('div',{staticClass:\"update\"},[_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.proceed),expression:\"proceed\"}],staticClass:\"checkbox\",attrs:{\"id\":\"encrypted-continue\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.proceed)?_vm._i(_vm.proceed,null)>-1:(_vm.proceed)},on:{\"change\":function($event){var $$a=_vm.proceed,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.proceed=$$a.concat([$$v]))}else{$$i>-1&&(_vm.proceed=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.proceed=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"encrypted-continue\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'I know what I\\'m doing'))+\"\\n\\t\\t\\t\")])]):_vm._e(),_vm._v(\" \"),_c('LoginButton',{attrs:{\"loading\":_vm.loading,\"value\":_vm.t('core', 'Reset password'),\"value-loading\":_vm.t('core', 'Resetting password')}}),_vm._v(\" \"),(_vm.error && _vm.message)?_c('p',{class:{ warning: _vm.error }},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.message)+\"\\n\\t\\t\")]):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { generateUrl, getRootUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\n/**\n *\n * @param {string} url the URL to check\n * @return {boolean}\n */\nfunction isRelativeUrl(url) {\n\treturn !url.startsWith('https://') && !url.startsWith('http://')\n}\n\n/**\n * @param {string} url The URL to check\n * @return {boolean} true if the URL points to this nextcloud instance\n */\nfunction isNextcloudUrl(url) {\n\tconst nextcloudBaseUrl = window.location.protocol + '//' + window.location.host + getRootUrl()\n\t// if the URL is absolute and starts with the baseUrl+rootUrl\n\t// OR if the URL is relative and starts with rootUrl\n\treturn url.startsWith(nextcloudBaseUrl)\n\t\t|| (isRelativeUrl(url) && url.startsWith(getRootUrl()))\n}\n\n/**\n * Check if a user was logged in but is now logged-out.\n * If this is the case then the user will be forwarded to the login page.\n *\n * @return {Promise}\n */\nasync function checkLoginStatus() {\n\t// skip if no logged in user\n\tif (getCurrentUser() === null) {\n\t\treturn\n\t}\n\n\t// skip if already running\n\tif (checkLoginStatus.running === true) {\n\t\treturn\n\t}\n\n\t// only run one request in parallel\n\tcheckLoginStatus.running = true\n\n\ttry {\n\t\t// We need to check this as a 401 in the first place could also come from other reasons\n\t\tconst { status } = await window.fetch(generateUrl('/apps/files'))\n\t\tif (status === 401) {\n\t\t\tlogger.warn('User session was terminated, forwarding to login page.')\n\t\t\tawait wipeBrowserStorages()\n\t\t\twindow.location = generateUrl('/login?redirect_url={url}', {\n\t\t\t\turl: window.location.pathname + window.location.search + window.location.hash,\n\t\t\t})\n\t\t}\n\t} catch (error) {\n\t\tlogger.warn('Could not check login-state', { error })\n\t} finally {\n\t\tdelete checkLoginStatus.running\n\t}\n}\n\n/**\n * Clear all Browser storages connected to current origin.\n *\n * @return {Promise}\n */\nexport async function wipeBrowserStorages() {\n\ttry {\n\t\twindow.localStorage.clear()\n\t\twindow.sessionStorage.clear()\n\t\tconst indexedDBList = await window.indexedDB.databases()\n\t\tfor (const indexedDB of indexedDBList) {\n\t\t\tawait window.indexedDB.deleteDatabase(indexedDB.name)\n\t\t}\n\t\tlogger.debug('Browser storages cleared')\n\t} catch (error) {\n\t\tlogger.error('Could not clear browser storages', { error })\n\t}\n}\n\n/**\n * Intercept XMLHttpRequest and fetch API calls to add X-Requested-With header\n *\n * This is also done in @nextcloud/axios but not all requests pass through that\n */\nexport function interceptRequests() {\n\tXMLHttpRequest.prototype.open = (function(open) {\n\t\treturn function(method, url) {\n\t\t\topen.apply(this, arguments)\n\t\t\tif (isNextcloudUrl(url)) {\n\t\t\t\tif (!this.getResponseHeader('X-Requested-With')) {\n\t\t\t\t\tthis.setRequestHeader('X-Requested-With', 'XMLHttpRequest')\n\t\t\t\t}\n\t\t\t\tthis.addEventListener('loadend', function() {\n\t\t\t\t\tif (this.status === 401) {\n\t\t\t\t\t\tcheckLoginStatus()\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t})(XMLHttpRequest.prototype.open)\n\n\twindow.fetch = (function(fetch) {\n\t\treturn async (resource, options) => {\n\t\t\t// fetch allows the `input` to be either a Request object or any stringifyable value\n\t\t\tif (!isNextcloudUrl(resource.url ?? resource.toString())) {\n\t\t\t\treturn await fetch(resource, options)\n\t\t\t}\n\t\t\tif (!options) {\n\t\t\t\toptions = {}\n\t\t\t}\n\t\t\tif (!options.headers) {\n\t\t\t\toptions.headers = new Headers()\n\t\t\t}\n\n\t\t\tif (options.headers instanceof Headers && !options.headers.has('X-Requested-With')) {\n\t\t\t\toptions.headers.append('X-Requested-With', 'XMLHttpRequest')\n\t\t\t} else if (options.headers instanceof Object && !options.headers['X-Requested-With']) {\n\t\t\t\toptions.headers['X-Requested-With'] = 'XMLHttpRequest'\n\t\t\t}\n\n\t\t\tconst response = await fetch(resource, options)\n\t\t\tif (response.status === 401) {\n\t\t\t\tcheckLoginStatus()\n\t\t\t}\n\t\t\treturn response\n\t\t}\n\t})(window.fetch)\n}\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.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!./Login.vue?vue&type=script&lang=js\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&id=518c0816&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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!./Login.vue?vue&type=style&index=0&id=518c0816&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=518c0816&scoped=true\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\nimport style0 from \"./Login.vue?vue&type=style&index=0&id=518c0816&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 \"518c0816\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"guest-box login-box\"},[(!_vm.hideLoginForm || _vm.directLogin)?[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(!_vm.passwordlessLogin && !_vm.resetPassword && _vm.resetPasswordTarget === '')?_c('div',{staticClass:\"login-box__wrapper\"},[_c('LoginForm',{attrs:{\"username\":_vm.user,\"redirect-url\":_vm.redirectUrl,\"direct-login\":_vm.directLogin,\"messages\":_vm.messages,\"errors\":_vm.errors,\"throttle-delay\":_vm.throttleDelay,\"auto-complete-allowed\":_vm.autoCompleteAllowed,\"rememberme-allowed\":_vm.remembermeAllowed,\"email-states\":_vm.emailStates},on:{\"update:username\":function($event){_vm.user=$event},\"submit\":function($event){_vm.loading = true}}}),_vm._v(\" \"),(_vm.hasPasswordless)?_c('NcButton',{attrs:{\"variant\":\"tertiary\",\"wide\":\"\"},on:{\"click\":function($event){$event.preventDefault();_vm.passwordlessLogin = true}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Log in with a device'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.canResetPassword && _vm.resetPasswordLink !== '')?_c('NcButton',{attrs:{\"id\":\"lost-password\",\"href\":_vm.resetPasswordLink,\"variant\":\"tertiary-no-background\",\"wide\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Forgot password?'))+\"\\n\\t\\t\\t\\t\")]):(_vm.canResetPassword && !_vm.resetPassword)?_c('NcButton',{attrs:{\"id\":\"lost-password\",\"variant\":\"tertiary\",\"wide\":\"\"},on:{\"click\":function($event){$event.preventDefault();_vm.resetPassword = true}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Forgot password?'))+\"\\n\\t\\t\\t\\t\")]):_vm._e()],1):(!_vm.loading && _vm.passwordlessLogin)?_c('div',{key:\"reset-pw-less\",staticClass:\"login-additional login-box__wrapper\"},[_c('PasswordLessLoginForm',{attrs:{\"username\":_vm.user,\"redirect-url\":_vm.redirectUrl,\"auto-complete-allowed\":_vm.autoCompleteAllowed,\"is-https\":_vm.isHttps,\"is-localhost\":_vm.isLocalhost},on:{\"update:username\":function($event){_vm.user=$event},\"submit\":function($event){_vm.loading = true}}}),_vm._v(\" \"),_c('NcButton',{attrs:{\"variant\":\"tertiary\",\"aria-label\":_vm.t('core', 'Back to login form'),\"wide\":true},on:{\"click\":function($event){_vm.passwordlessLogin = false}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Back'))+\"\\n\\t\\t\\t\\t\")])],1):(!_vm.loading && _vm.canResetPassword)?_c('div',{key:\"reset-can-reset\",staticClass:\"login-additional\"},[_c('div',{staticClass:\"lost-password-container\"},[(_vm.resetPassword)?_c('ResetPassword',{attrs:{\"username\":_vm.user,\"reset-password-link\":_vm.resetPasswordLink},on:{\"update:username\":function($event){_vm.user=$event},\"abort\":function($event){_vm.resetPassword = false}}}):_vm._e()],1)]):(_vm.resetPasswordTarget !== '')?_c('div',[_c('UpdatePassword',{attrs:{\"username\":_vm.user,\"reset-password-target\":_vm.resetPasswordTarget},on:{\"update:username\":function($event){_vm.user=$event},\"done\":_vm.passwordResetFinished}})],1):_vm._e()])]:[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('NcNoteCard',{attrs:{\"type\":\"info\",\"title\":_vm.t('core', 'Login form is disabled.')}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'The Nextcloud login form is disabled. Use another login option if available or contact your administration.'))+\"\\n\\t\\t\\t\")])],1)],_vm._v(\" \"),_c('div',{staticClass:\"login-box__alternative-logins\",attrs:{\"id\":\"alternative-logins\"}},_vm._l((_vm.alternativeLogins),function(alternativeLogin,index){return _c('NcButton',{key:index,class:[alternativeLogin.class],attrs:{\"variant\":\"secondary\",\"wide\":true,\"role\":\"link\",\"href\":alternativeLogin.href}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(alternativeLogin.name)+\"\\n\\t\\t\")])}),1)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst isAdmin = !!window._oc_isadmin\n\n/**\n * Returns whether the current user is an administrator\n *\n * @return {boolean} true if the user is an admin, false otherwise\n * @since 9.0.0\n */\nexport const isUserAdmin = () => isAdmin\n","/*!\n * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2014 ownCloud, Inc.\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * @deprecated 16.0.0 Use OCP.AppConfig instead\n */\nexport const appConfig = window.oc_appconfig || {}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst appswebroots = (window._oc_appswebroots !== undefined) ? window._oc_appswebroots : false\n\nexport default appswebroots\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst config = window._oc_config || {}\n\nexport default config\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst rawUid = document\n\t.getElementsByTagName('head')[0]\n\t.getAttribute('data-user')\nconst displayName = document\n\t.getElementsByTagName('head')[0]\n\t.getAttribute('data-user-displayname')\n\nexport const currentUser = rawUid !== undefined ? rawUid : false\n\n/**\n *\n */\nexport function getCurrentUser() {\n\treturn {\n\t\tuid: currentUser,\n\t\tdisplayName,\n\t}\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst base = window._oc_debug\n\nexport const debug = base\n","/**\n * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2015 ownCloud, Inc.\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport IconMove from '@mdi/svg/svg/folder-move.svg?raw'\nimport IconCopy from '@mdi/svg/svg/folder-multiple-outline.svg?raw'\nimport { DialogBuilder, FilePickerType, getFilePickerBuilder } from '@nextcloud/dialogs'\nimport { t } from '@nextcloud/l10n'\nimport { spawnDialog } from '@nextcloud/vue/functions/dialog'\nimport { basename } from 'path'\nimport { defineAsyncComponent } from 'vue'\nimport logger from '../logger.js'\n\n/**\n * this class to ease the usage of dialogs\n */\nconst Dialogs = {\n\t// dialog button types\n\t/** @deprecated use `@nextcloud/dialogs` */\n\tYES_NO_BUTTONS: 70,\n\t/** @deprecated use `@nextcloud/dialogs` */\n\tOK_BUTTONS: 71,\n\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_CHOOSE: 1,\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_MOVE: 2,\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_COPY: 3,\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_COPY_MOVE: 4,\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_CUSTOM: 5,\n\n\t/**\n\t * displays alert dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK\n\t * @param {boolean} [modal] make the dialog modal\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\talert: function(text, title, callback, modal) {\n\t\tthis.message(\n\t\t\ttext,\n\t\t\ttitle,\n\t\t\t'alert',\n\t\t\tDialogs.OK_BUTTON,\n\t\t\tcallback,\n\t\t\tmodal,\n\t\t)\n\t},\n\n\t/**\n\t * displays info dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK\n\t * @param {boolean} [modal] make the dialog modal\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tinfo: function(text, title, callback, modal) {\n\t\tthis.message(text, title, 'info', Dialogs.OK_BUTTON, callback, modal)\n\t},\n\n\t/**\n\t * displays confirmation dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)\n\t * @param {boolean} [modal] make the dialog modal\n\t * @return {Promise}\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tconfirm: function(text, title, callback, modal) {\n\t\treturn this.message(\n\t\t\ttext,\n\t\t\ttitle,\n\t\t\t'notice',\n\t\t\tDialogs.YES_NO_BUTTONS,\n\t\t\tcallback,\n\t\t\tmodal,\n\t\t)\n\t},\n\t/**\n\t * displays confirmation dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {(number|{type: number, confirm: string, cancel: string, confirmClasses: string})} buttons text content of buttons\n\t * @param {Function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)\n\t * @return {Promise}\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tconfirmDestructive: function(text, title, buttons = Dialogs.OK_BUTTONS, callback = () => {}) {\n\t\treturn (new DialogBuilder())\n\t\t\t.setName(title)\n\t\t\t.setText(text)\n\t\t\t.setButtons(buttons === Dialogs.OK_BUTTONS\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: t('core', 'Yes'),\n\t\t\t\t\t\t\tvariant: 'error',\n\t\t\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\t\t\tcallback.clicked = true\n\t\t\t\t\t\t\t\tcallback(true)\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: Dialogs._getLegacyButtons(buttons, callback))\n\t\t\t.build()\n\t\t\t.show()\n\t\t\t.then(() => {\n\t\t\t\tif (!callback.clicked) {\n\t\t\t\t\tcallback(false)\n\t\t\t\t}\n\t\t\t})\n\t},\n\t/**\n\t * displays confirmation dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)\n\t * @return {Promise}\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tconfirmHtml: function(text, title, callback) {\n\t\treturn (new DialogBuilder())\n\t\t\t.setName(title)\n\t\t\t.setText('')\n\t\t\t.setButtons([\n\t\t\t\t{\n\t\t\t\t\tlabel: t('core', 'No'),\n\t\t\t\t\tcallback: () => {},\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: t('core', 'Yes'),\n\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tcallback.clicked = true\n\t\t\t\t\t\tcallback(true)\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t])\n\t\t\t.build()\n\t\t\t.setHTML(text)\n\t\t\t.show()\n\t\t\t.then(() => {\n\t\t\t\tif (!callback.clicked) {\n\t\t\t\t\tcallback(false)\n\t\t\t\t}\n\t\t\t})\n\t},\n\t/**\n\t * displays prompt dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)\n\t * @param {boolean} [modal] make the dialog modal\n\t * @param {string} name name of the input field\n\t * @param {boolean} password whether the input should be a password input\n\t * @return {Promise}\n\t *\n\t * @deprecated Use NcDialog from `@nextcloud/vue` instead\n\t */\n\tprompt: function(text, title, callback, modal, name, password) {\n\t\treturn new Promise((resolve) => {\n\t\t\tspawnDialog(\n\t\t\t\tdefineAsyncComponent(() => import('../components/LegacyDialogPrompt.vue')),\n\t\t\t\t{\n\t\t\t\t\ttext,\n\t\t\t\t\tname: title,\n\t\t\t\t\tcallback,\n\t\t\t\t\tinputName: name,\n\t\t\t\t\tisPassword: !!password,\n\t\t\t\t},\n\t\t\t\t(...args) => {\n\t\t\t\t\tcallback(...args)\n\t\t\t\t\tresolve()\n\t\t\t\t},\n\t\t\t)\n\t\t})\n\t},\n\n\t/**\n\t * Legacy wrapper to the new Vue based filepicker from `@nextcloud/dialogs`\n\t *\n\t * Prefer to use the Vue filepicker directly instead.\n\t *\n\t * In order to pick several types of mime types they need to be passed as an\n\t * array of strings.\n\t *\n\t * When no mime type filter is given only files can be selected. In order to\n\t * be able to select both files and folders \"['*', 'httpd/unix-directory']\"\n\t * should be used instead.\n\t *\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses Choose\n\t * @param {boolean} [multiselect] whether it should be possible to select multiple files\n\t * @param {string[]} [mimetype] mimetype to filter by - directories will always be included\n\t * @param {boolean} [_modal] do not use\n\t * @param {string} [type] Type of file picker : Choose, copy, move, copy and move\n\t * @param {string} [path] path to the folder that the the file can be picket from\n\t * @param {object} [options] additonal options that need to be set\n\t * @param {Function} [options.filter] filter function for advanced filtering\n\t * @param {boolean} [options.allowDirectoryChooser] Allow to select directories\n\t * @deprecated since 27.1.0 use the filepicker from `@nextcloud/dialogs` instead\n\t */\n\t// eslint-disable-next-line no-unused-vars\n\tfilepicker(title, callback, multiselect = false, mimetype = undefined, _modal = undefined, type = FilePickerType.Choose, path = undefined, options = undefined) {\n\t\t/**\n\t\t * Create legacy callback wrapper to support old filepicker syntax\n\t\t *\n\t\t * @param fn The original callback\n\t\t * @param type The file picker type which was used to pick the file(s)\n\t\t */\n\t\tconst legacyCallback = (fn, type) => {\n\t\t\tconst getPath = (node) => {\n\t\t\t\tconst root = node?.root || ''\n\t\t\t\tlet path = node?.path || ''\n\t\t\t\t// TODO: Fix this in @nextcloud/files\n\t\t\t\tif (path.startsWith(root)) {\n\t\t\t\t\tpath = path.slice(root.length) || '/'\n\t\t\t\t}\n\t\t\t\treturn path\n\t\t\t}\n\n\t\t\tif (multiselect) {\n\t\t\t\treturn (nodes) => fn(nodes.map(getPath), type)\n\t\t\t} else {\n\t\t\t\treturn (nodes) => fn(getPath(nodes[0]), type)\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Coverting a Node into a legacy file info to support the OC.dialogs.filepicker filter function\n\t\t *\n\t\t * @param node The node to convert\n\t\t */\n\t\tconst nodeToLegacyFile = (node) => ({\n\t\t\tid: node.fileid || null,\n\t\t\tpath: node.path,\n\t\t\tmimetype: node.mime || null,\n\t\t\tmtime: node.mtime?.getTime() || null,\n\t\t\tpermissions: node.permissions,\n\t\t\tname: node.attributes?.displayName || node.basename,\n\t\t\tetag: node.attributes?.etag || null,\n\t\t\thasPreview: node.attributes?.hasPreview || null,\n\t\t\tmountType: node.attributes?.mountType || null,\n\t\t\tquotaAvailableBytes: node.attributes?.quotaAvailableBytes || null,\n\t\t\ticon: null,\n\t\t\tsharePermissions: null,\n\t\t})\n\n\t\tconst builder = getFilePickerBuilder(title)\n\n\t\t// Setup buttons\n\t\tif (type === this.FILEPICKER_TYPE_CUSTOM) {\n\t\t\t(options.buttons || []).forEach((button) => {\n\t\t\t\tbuilder.addButton({\n\t\t\t\t\tcallback: legacyCallback(callback, button.type),\n\t\t\t\t\tlabel: button.text,\n\t\t\t\t\tvariant: button.defaultButton ? 'primary' : 'secondary',\n\t\t\t\t})\n\t\t\t})\n\t\t} else {\n\t\t\tbuilder.setButtonFactory((nodes, path) => {\n\t\t\t\tconst buttons = []\n\t\t\t\tconst [node] = nodes\n\t\t\t\tconst target = node?.displayname || node?.basename || basename(path)\n\n\t\t\t\tif (type === FilePickerType.Choose) {\n\t\t\t\t\tbuttons.push({\n\t\t\t\t\t\tcallback: legacyCallback(callback, FilePickerType.Choose),\n\t\t\t\t\t\tlabel: node && !this.multiSelect ? t('core', 'Choose {file}', { file: target }) : t('core', 'Choose'),\n\t\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (type === FilePickerType.CopyMove || type === FilePickerType.Copy) {\n\t\t\t\t\tbuttons.push({\n\t\t\t\t\t\tcallback: legacyCallback(callback, FilePickerType.Copy),\n\t\t\t\t\t\tlabel: target ? t('core', 'Copy to {target}', { target }) : t('core', 'Copy'),\n\t\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\t\ticon: IconCopy,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (type === FilePickerType.Move || type === FilePickerType.CopyMove) {\n\t\t\t\t\tbuttons.push({\n\t\t\t\t\t\tcallback: legacyCallback(callback, FilePickerType.Move),\n\t\t\t\t\t\tlabel: target ? t('core', 'Move to {target}', { target }) : t('core', 'Move'),\n\t\t\t\t\t\tvariant: type === FilePickerType.Move ? 'primary' : 'secondary',\n\t\t\t\t\t\ticon: IconMove,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\treturn buttons\n\t\t\t})\n\t\t}\n\n\t\tif (mimetype) {\n\t\t\tbuilder.setMimeTypeFilter(typeof mimetype === 'string' ? [mimetype] : (mimetype || []))\n\t\t}\n\t\tif (typeof options?.filter === 'function') {\n\t\t\tbuilder.setFilter((node) => options.filter(nodeToLegacyFile(node)))\n\t\t}\n\t\tbuilder.allowDirectories(options?.allowDirectoryChooser === true || mimetype?.includes('httpd/unix-directory') || false)\n\t\t\t.setMultiSelect(multiselect)\n\t\t\t.startAt(path)\n\t\t\t.build()\n\t\t\t.pick()\n\t},\n\n\t/**\n\t * Displays raw dialog\n\t * You better use a wrapper instead ...\n\t *\n\t * @param content\n\t * @param title\n\t * @param dialogType\n\t * @param buttons\n\t * @param callback\n\t * @param modal\n\t * @param allowHtml\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tmessage: function(content, title, dialogType, buttons, callback = () => {}, modal, allowHtml) {\n\t\tconst builder = (new DialogBuilder())\n\t\t\t.setName(title)\n\t\t\t.setText(allowHtml ? '' : content)\n\t\t\t.setButtons(Dialogs._getLegacyButtons(buttons, callback))\n\n\t\tswitch (dialogType) {\n\t\t\tcase 'alert':\n\t\t\t\tbuilder.setSeverity('warning')\n\t\t\t\tbreak\n\t\t\tcase 'notice':\n\t\t\t\tbuilder.setSeverity('info')\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tbreak\n\t\t}\n\n\t\tconst dialog = builder.build()\n\n\t\tif (allowHtml) {\n\t\t\tdialog.setHTML(content)\n\t\t}\n\n\t\treturn dialog.show().then(() => {\n\t\t\tif (!callback._clicked) {\n\t\t\t\tcallback(false)\n\t\t\t}\n\t\t})\n\t},\n\n\t/**\n\t * Helper for legacy API\n\t *\n\t * @param buttons\n\t * @param callback\n\t * @deprecated\n\t */\n\t_getLegacyButtons(buttons, callback) {\n\t\tconst buttonList = []\n\n\t\tswitch (typeof buttons === 'object' ? buttons.type : buttons) {\n\t\t\tcase Dialogs.YES_NO_BUTTONS:\n\t\t\t\tbuttonList.push({\n\t\t\t\t\tlabel: buttons?.cancel ?? t('core', 'No'),\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tcallback._clicked = true\n\t\t\t\t\t\tcallback(false)\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tbuttonList.push({\n\t\t\t\t\tlabel: buttons?.confirm ?? t('core', 'Yes'),\n\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tcallback._clicked = true\n\t\t\t\t\t\tcallback(true)\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tbreak\n\t\t\tcase Dialogs.OK_BUTTONS:\n\t\t\t\tbuttonList.push({\n\t\t\t\t\tlabel: buttons?.confirm ?? t('core', 'OK'),\n\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tcallback._clicked = true\n\t\t\t\t\t\tcallback(true)\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tlogger.error('Invalid call to OC.dialogs')\n\t\t\t\tbreak\n\t\t}\n\t\treturn buttonList\n\t},\n}\n\nexport default Dialogs\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\n/**\n * Get the current CSRF token.\n */\nexport function getRequestToken() {\n return document.head.dataset.requesttoken;\n}\n/**\n * Set a new CSRF token (e.g. because of session refresh).\n * This also emits an event bus event for the updated token.\n *\n * @param token - The new token\n * @fires Error - If the passed token is not a potential valid token\n */\nexport function setRequestToken(token) {\n if (!token || typeof token !== 'string') {\n throw new Error('Invalid CSRF token given', { cause: { token } });\n }\n document.head.dataset.requesttoken = token;\n emit('csrf-token-update', { token });\n}\n/**\n * Fetch the request token from the API.\n * This does also set it on the current context, see `setRequestToken`.\n *\n * @fires Error - If the request failed\n */\nexport async function fetchRequestToken() {\n const url = generateUrl('/csrftoken');\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error('Could not fetch CSRF token from API', { cause: response });\n }\n const { token } = await response.json();\n setRequestToken(token);\n return token;\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2015 ownCloud, Inc.\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getRequestToken } from './requesttoken.ts'\n\n/**\n * Create a new event source\n *\n * @param {string} src\n * @param {object} [data] to be send as GET\n *\n * @constructs OCEventSource\n */\nfunction OCEventSource(src, data) {\n\tlet dataStr = ''\n\tlet name\n\tlet joinChar\n\tthis.typelessListeners = []\n\tthis.closed = false\n\tif (data) {\n\t\tfor (name in data) {\n\t\t\tdataStr += name + '=' + encodeURIComponent(data[name]) + '&'\n\t\t}\n\t}\n\tdataStr += 'requesttoken=' + encodeURIComponent(getRequestToken())\n\tjoinChar = '&'\n\tif (src.indexOf('?') === -1) {\n\t\tjoinChar = '?'\n\t}\n\tthis.source = new EventSource(src + joinChar + dataStr)\n\tthis.source.onmessage = function(e) {\n\t\tfor (let i = 0; i < this.typelessListeners.length; i++) {\n\t\t\tthis.typelessListeners[i](JSON.parse(e.data))\n\t\t}\n\t}.bind(this)\n\t// add close listener\n\tthis.listen('__internal__', function(data) {\n\t\tif (data === 'close') {\n\t\t\tthis.close()\n\t\t}\n\t}.bind(this))\n}\nOCEventSource.prototype = {\n\ttypelessListeners: [],\n\t/**\n\t * Listen to a given type of events.\n\t *\n\t * @param {string} type event type\n\t * @param {Function} callback event callback\n\t */\n\tlisten: function(type, callback) {\n\t\tif (callback && callback.call) {\n\t\t\tif (type) {\n\t\t\t\tthis.source.addEventListener(type, function(e) {\n\t\t\t\t\tif (typeof e.data !== 'undefined') {\n\t\t\t\t\t\tcallback(JSON.parse(e.data))\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcallback('')\n\t\t\t\t\t}\n\t\t\t\t}, false)\n\t\t\t} else {\n\t\t\t\tthis.typelessListeners.push(callback)\n\t\t\t}\n\t\t}\n\t},\n\t/**\n\t * Closes this event source.\n\t */\n\tclose: function() {\n\t\tthis.closed = true\n\t\tthis.source.close()\n\t},\n}\n\nexport default OCEventSource\n","/**\n * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2014 ownCloud, Inc.\n * SPDX-FileCopyrightText: 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport {\n\tloadTranslations,\n\tregister,\n\ttranslate,\n\ttranslatePlural,\n\tunregister,\n} from '@nextcloud/l10n'\n\n/**\n * L10N namespace with localization functions.\n *\n * @namespace OC.L10n\n * @deprecated 26.0.0 use https://www.npmjs.com/package/@nextcloud/l10n\n */\nconst L10n = {\n\n\t/**\n\t * Load an app's translation bundle if not loaded already.\n\t *\n\t * @deprecated 26.0.0 use `loadTranslations` from https://www.npmjs.com/package/@nextcloud/l10n\n\t *\n\t * @param {string} appName name of the app\n\t * @param {Function} callback callback to be called when\n\t * the translations are loaded\n\t * @return {Promise} promise\n\t */\n\tload: loadTranslations,\n\n\t/**\n\t * Register an app's translation bundle.\n\t *\n\t * @deprecated 26.0.0 use `register` from https://www.npmjs.com/package/@nextcloud/l10\n\t *\n\t * @param {string} appName name of the app\n\t * @param {Record} bundle bundle\n\t */\n\tregister,\n\n\t/**\n\t * @private\n\t * @deprecated 26.0.0 use `unregister` from https://www.npmjs.com/package/@nextcloud/l10n\n\t */\n\t_unregister: unregister,\n\n\t/**\n\t * Translate a string\n\t *\n\t * @deprecated 26.0.0 use `translate` from https://www.npmjs.com/package/@nextcloud/l10n\n\t *\n\t * @param {string} app the id of the app for which to translate the string\n\t * @param {string} text the string to translate\n\t * @param {object} [vars] map of placeholder key to value\n\t * @param {number} [count] number to replace %n with\n\t * @param {Array} [options] options array\n\t * @param {boolean} [options.escape=true] enable/disable auto escape of placeholders (by default enabled)\n\t * @param {boolean} [options.sanitize=true] enable/disable sanitization (by default enabled)\n\t * @return {string}\n\t */\n\ttranslate,\n\n\t/**\n\t * Translate a plural string\n\t *\n\t * @deprecated 26.0.0 use `translatePlural` from https://www.npmjs.com/package/@nextcloud/l10n\n\t *\n\t * @param {string} app the id of the app for which to translate the string\n\t * @param {string} textSingular the string to translate for exactly one object\n\t * @param {string} textPlural the string to translate for n objects\n\t * @param {number} count number to determine whether to use singular or plural\n\t * @param {object} [vars] map of placeholder key to value\n\t * @param {Array} [options] options array\n\t * @param {boolean} [options.escape=true] enable/disable auto escape of placeholders (by default enabled)\n\t * @return {string} Translated string\n\t */\n\ttranslatePlural,\n}\n\nexport default L10n\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { generateUrl, getRootUrl } from '@nextcloud/router'\n\nconst iconCache = new Map()\n\n/**\n * Return the url to icon of the given mimeType\n *\n * @param {string} mimeType The mimeType to get the icon for\n * @return {string} Url to the icon for mimeType\n */\nexport function getIconUrl(mimeType) {\n\tif (typeof mimeType === 'undefined') {\n\t\treturn undefined\n\t}\n\n\twhile (mimeType in window.OC.MimeTypeList.aliases) {\n\t\tmimeType = window.OC.MimeTypeList.aliases[mimeType]\n\t}\n\n\tif (!iconCache.has(mimeType)) {\n\t\tlet gotIcon = false\n\t\tlet path = ''\n\t\t// First try to get the correct icon from the current legacy-theme\n\t\tif (OC.theme.folder !== '' && Array.isArray(OC.MimeTypeList.themes[OC.theme.folder])) {\n\t\t\tpath = getRootUrl() + '/themes/' + window.OC.theme.folder + '/core/img/filetypes/'\n\t\t\tconst icon = getMimeTypeIcon(mimeType, window.OC.MimeTypeList.themes[OC.theme.folder])\n\t\t\tif (icon) {\n\t\t\t\tgotIcon = true\n\t\t\t\tpath += icon + '.svg'\n\t\t\t}\n\t\t}\n\n\t\t// theming is always enabled since Nextcloud 20 so we get it from that\n\t\tif (!gotIcon) {\n\t\t\tpath = generateUrl('/apps/theming/img/core/filetypes/' + getMimeTypeIcon(mimeType, window.OC.MimeTypeList.files) + '.svg')\n\t\t}\n\n\t\tpath += '?v=' + window.OCA.Theming.cacheBuster\n\t\t// Cache the result\n\t\ticonCache.set(mimeType, path)\n\t}\n\n\treturn iconCache.get(mimeType)\n}\n\n/**\n * Return the file icon we want to use for the given mimeType.\n * The file needs to be present in the supplied file list\n *\n * @param {string} mimeType The mimeType we want an icon for\n * @param {string[]} files The available icons in this theme\n * @return {string | null} The icon to use or null if there is no match\n */\nfunction getMimeTypeIcon(mimeType, files) {\n\tconst icon = mimeType.replace(new RegExp('/', 'g'), '-')\n\n\t// Generate path\n\tif (mimeType === 'dir' && files.includes('folder')) {\n\t\treturn 'folder'\n\t} else if (mimeType === 'dir-encrypted' && files.includes('folder-encrypted')) {\n\t\treturn 'folder-encrypted'\n\t} else if (mimeType === 'dir-shared' && files.includes('folder-shared')) {\n\t\treturn 'folder-shared'\n\t} else if (mimeType === 'dir-public' && files.includes('folder-public')) {\n\t\treturn 'folder-public'\n\t} else if ((mimeType === 'dir-external' || mimeType === 'dir-external-root') && files.includes('folder-external')) {\n\t\treturn 'folder-external'\n\t} else if (files.includes(icon)) {\n\t\treturn icon\n\t} else if (files.includes(icon.split('-')[0])) {\n\t\treturn icon.split('-')[0]\n\t} else if (files.includes('file')) {\n\t\treturn 'file'\n\t}\n\n\treturn null\n}\n\n/**\n * Clear the icon cache\n */\nexport function clearIconCache() {\n\ticonCache.clear()\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { t } from '@nextcloud/l10n';\n/**\n * A little class to manage a status field for a \"saving\" process.\n * It can be used to display a starting message (e.g. \"Saving...\") and then\n * replace it with a green success message or a red error message.\n */\nexport default {\n /**\n * Displayes a \"Saving...\" message in the given message placeholder\n *\n * @param selector - Query selectior for the element to display the message in\n */\n startSaving(selector) {\n this.startAction(selector, t('core', 'Saving …'));\n },\n /**\n * Displayes a custom message in the given message placeholder\n *\n * @param selector - Query selectior for the element to display the message in\n * @param message - Plain text message to display (no HTML allowed)\n */\n startAction(selector, message) {\n const el = document.querySelector(selector);\n if (!el || !(el instanceof HTMLElement)) {\n return;\n }\n el.textContent = message;\n el.classList.remove('success');\n el.classList.remove('error');\n el.getAnimations?.().forEach((animation) => animation.cancel());\n el.style.display = 'block';\n },\n /**\n * Displayes an success/error message in the given selector\n *\n * @param selector - Query selectior for the element to display the message in\n * @param response - Response of the server\n * @param response.data - Data of the servers response\n * @param response.data.message - Plain text message to display (no HTML allowed)\n * @param response.status - is being used to decide whether the message is displayed as an error/success\n */\n finishedSaving(selector, response) {\n this.finishedAction(selector, response);\n },\n /**\n * Displayes an success/error message in the given selector\n *\n * @param selector - Query selector for the element to display the message in\n * @param response - Response of the server\n * @param response.data - Data of the servers response\n * @param response.data.message - Plain text message to display (no HTML allowed)\n * @param response.status . Is being used to decide whether the message is displayed as an error/success\n */\n finishedAction(selector, response) {\n if (response.status === 'success') {\n this.finishedSuccess(selector, response.data.message);\n }\n else {\n this.finishedError(selector, response.data.message);\n }\n },\n /**\n * Displayes an success message in the given selector\n *\n * @param selector - Query selector for the element to display the message in\n * @param message - Plain text success message to display (no HTML allowed)\n */\n finishedSuccess(selector, message) {\n const el = document.querySelector(selector);\n if (!el || !(el instanceof HTMLElement)) {\n return;\n }\n el.textContent = message;\n el.classList.remove('error');\n el.classList.add('success');\n el.getAnimations?.().forEach((animation) => animation.cancel());\n window.setTimeout(fadeOut, 3000);\n el.style.display = 'block';\n /**\n * Fades out the message element\n */\n function fadeOut() {\n if (!el || !(el instanceof HTMLElement)) {\n return;\n }\n // eslint-disable-next-line @stylistic/exp-list-style\n const animation = el.animate?.([\n { opacity: 1 },\n { opacity: 0 },\n ], {\n duration: 900,\n fill: 'forwards',\n });\n if (animation) {\n animation.addEventListener('finish', () => {\n el.style.display = 'none';\n });\n }\n else {\n window.setTimeout(() => {\n el.style.display = 'none';\n }, 900);\n }\n }\n },\n /**\n * Displayes an error message in the given selector\n *\n * @param selector - Query selector for the element to display the message in\n * @param message - Plain text error message to display (no HTML allowed)\n */\n finishedError(selector, message) {\n const el = document.querySelector(selector);\n if (!el || !(el instanceof HTMLElement)) {\n return;\n }\n el.textContent = message;\n el.classList.remove('success');\n el.classList.add('error');\n el.style.display = 'block';\n },\n};\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { confirmPassword, isPasswordConfirmationRequired } from '@nextcloud/password-confirmation'\n\n/**\n * @namespace OC.PasswordConfirmation\n */\nexport default {\n\n\t/**\n\t * @deprecated 28.0.0 use methods from '@nextcloud/password-confirmation'\n\t */\n\trequiresPasswordConfirmation() {\n\t\treturn isPasswordConfirmationRequired()\n\t},\n\n\t/**\n\t * @param {Function} callback success callback function\n\t * @param {object} options options currently not used by confirmPassword\n\t * @param {Function} rejectCallback error callback function\n\t *\n\t * @deprecated 28.0.0 use methods from '@nextcloud/password-confirmation'\n\t */\n\trequirePasswordConfirmation(callback, options, rejectCallback) {\n\t\tconfirmPassword().then(callback, rejectCallback)\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default {\n\n\t/**\n\t * @type {Array.}\n\t */\n\t_plugins: {},\n\n\t/**\n\t * Register plugin\n\t *\n\t * @param {string} targetName app name / class name to hook into\n\t * @param {OC.Plugin} plugin plugin\n\t */\n\tregister(targetName, plugin) {\n\t\tlet plugins = this._plugins[targetName]\n\t\tif (!plugins) {\n\t\t\tplugins = this._plugins[targetName] = []\n\t\t}\n\t\tplugins.push(plugin)\n\t},\n\n\t/**\n\t * Returns all plugin registered to the given target\n\t * name / app name / class name.\n\t *\n\t * @param {string} targetName app name / class name to hook into\n\t * @return {Array.} array of plugins\n\t */\n\tgetPlugins(targetName) {\n\t\treturn this._plugins[targetName] || []\n\t},\n\n\t/**\n\t * Call attach() on all plugins registered to the given target name.\n\t *\n\t * @param {string} targetName app name / class name\n\t * @param {object} targetObject to be extended\n\t * @param {object} [options] options\n\t */\n\tattach(targetName, targetObject, options) {\n\t\tconst plugins = this.getPlugins(targetName)\n\t\tfor (let i = 0; i < plugins.length; i++) {\n\t\t\tif (plugins[i].attach) {\n\t\t\t\tplugins[i].attach(targetObject, options)\n\t\t\t}\n\t\t}\n\t},\n\n\t/**\n\t * Call detach() on all plugins registered to the given target name.\n\t *\n\t * @param {string} targetName app name / class name\n\t * @param {object} targetObject to be extended\n\t * @param {object} [options] options\n\t */\n\tdetach(targetName, targetObject, options) {\n\t\tconst plugins = this.getPlugins(targetName)\n\t\tfor (let i = 0; i < plugins.length; i++) {\n\t\t\tif (plugins[i].detach) {\n\t\t\t\tplugins[i].detach(targetObject, options)\n\t\t\t}\n\t\t}\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 const theme = window._theme || {}\n","// Current version.\nexport var VERSION = '1.13.8';\n\n// Establish the root object, `window` (`self`) in the browser, `global`\n// on the server, or `this` in some virtual machines. We use `self`\n// instead of `window` for `WebWorker` support.\nexport var root = (typeof self == 'object' && self.self === self && self) ||\n (typeof global == 'object' && global.global === global && global) ||\n Function('return this')() ||\n {};\n\n// Save bytes in the minified (but not gzipped) version:\nexport var ArrayProto = Array.prototype, ObjProto = Object.prototype;\nexport var SymbolProto = typeof Symbol !== 'undefined' ? Symbol.prototype : null;\n\n// Create quick reference variables for speed access to core prototypes.\nexport var push = ArrayProto.push,\n slice = ArrayProto.slice,\n toString = ObjProto.toString,\n hasOwnProperty = ObjProto.hasOwnProperty;\n\n// Modern feature detection.\nexport var supportsArrayBuffer = typeof ArrayBuffer !== 'undefined',\n supportsDataView = typeof DataView !== 'undefined';\n\n// All **ECMAScript 5+** native function implementations that we hope to use\n// are declared here.\nexport var nativeIsArray = Array.isArray,\n nativeKeys = Object.keys,\n nativeCreate = Object.create,\n nativeIsView = supportsArrayBuffer && ArrayBuffer.isView;\n\n// Create references to these builtin functions because we override them.\nexport var _isNaN = isNaN,\n _isFinite = isFinite;\n\n// Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed.\nexport var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString');\nexport var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString',\n 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString'];\n\n// The largest integer that can be represented exactly.\nexport var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1;\n","// Some functions take a variable number of arguments, or a few expected\n// arguments at the beginning and then a variable number of values to operate\n// on. This helper accumulates all remaining arguments past the function’s\n// argument length (or an explicit `startIndex`), into an array that becomes\n// the last argument. Similar to ES6’s \"rest parameter\".\nexport default function restArguments(func, startIndex) {\n startIndex = startIndex == null ? func.length - 1 : +startIndex;\n return function() {\n var length = Math.max(arguments.length - startIndex, 0),\n rest = Array(length),\n index = 0;\n for (; index < length; index++) {\n rest[index] = arguments[index + startIndex];\n }\n switch (startIndex) {\n case 0: return func.call(this, rest);\n case 1: return func.call(this, arguments[0], rest);\n case 2: return func.call(this, arguments[0], arguments[1], rest);\n }\n var args = Array(startIndex + 1);\n for (index = 0; index < startIndex; index++) {\n args[index] = arguments[index];\n }\n args[startIndex] = rest;\n return func.apply(this, args);\n };\n}\n","// Is a given variable an object?\nexport default function isObject(obj) {\n var type = typeof obj;\n return type === 'function' || (type === 'object' && !!obj);\n}\n","// Is a given value equal to null?\nexport default function isNull(obj) {\n return obj === null;\n}\n","// Is a given variable undefined?\nexport default function isUndefined(obj) {\n return obj === void 0;\n}\n","import { toString } from './_setup.js';\n\n// Is a given value a boolean?\nexport default function isBoolean(obj) {\n return obj === true || obj === false || toString.call(obj) === '[object Boolean]';\n}\n","// Is a given value a DOM element?\nexport default function isElement(obj) {\n return !!(obj && obj.nodeType === 1);\n}\n","import { toString } from './_setup.js';\n\n// Internal function for creating a `toString`-based type tester.\nexport default function tagTester(name) {\n var tag = '[object ' + name + ']';\n return function(obj) {\n return toString.call(obj) === tag;\n };\n}\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('String');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Number');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Date');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('RegExp');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Error');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Symbol');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('ArrayBuffer');\n","import tagTester from './_tagTester.js';\nimport { root } from './_setup.js';\n\nvar isFunction = tagTester('Function');\n\n// Optimize `isFunction` if appropriate. Work around some `typeof` bugs in old\n// v8, IE 11 (#1621), Safari 8 (#1929), and PhantomJS (#2236).\nvar nodelist = root.document && root.document.childNodes;\nif (typeof /./ != 'function' && typeof Int8Array != 'object' && typeof nodelist != 'function') {\n isFunction = function(obj) {\n return typeof obj == 'function' || false;\n };\n}\n\nexport default isFunction;\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Object');\n","import { supportsDataView } from './_setup.js';\nimport hasObjectTag from './_hasObjectTag.js';\n\n// In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.\n// In IE 11, the most common among them, this problem also applies to\n// `Map`, `WeakMap` and `Set`.\n// Also, there are cases where an application can override the native\n// `DataView` object, in cases like that we can't use the constructor\n// safely and should just rely on alternate `DataView` checks\nexport var hasDataViewBug = (\n supportsDataView && (!/\\[native code\\]/.test(String(DataView)) || hasObjectTag(new DataView(new ArrayBuffer(8))))\n ),\n isIE11 = (typeof Map !== 'undefined' && hasObjectTag(new Map));\n","import tagTester from './_tagTester.js';\nimport isFunction from './isFunction.js';\nimport isArrayBuffer from './isArrayBuffer.js';\nimport { hasDataViewBug } from './_stringTagBug.js';\n\nvar isDataView = tagTester('DataView');\n\n// In IE 10 - Edge 13, we need a different heuristic\n// to determine whether an object is a `DataView`.\n// Also, in cases where the native `DataView` is\n// overridden we can't rely on the tag itself.\nfunction alternateIsDataView(obj) {\n return obj != null && isFunction(obj.getInt8) && isArrayBuffer(obj.buffer);\n}\n\nexport default (hasDataViewBug ? alternateIsDataView : isDataView);\n","import { nativeIsArray } from './_setup.js';\nimport tagTester from './_tagTester.js';\n\n// Is a given value an array?\n// Delegates to ECMA5's native `Array.isArray`.\nexport default nativeIsArray || tagTester('Array');\n","import { hasOwnProperty } from './_setup.js';\n\n// Internal function to check whether `key` is an own property name of `obj`.\nexport default function has(obj, key) {\n return obj != null && hasOwnProperty.call(obj, key);\n}\n","import tagTester from './_tagTester.js';\nimport has from './_has.js';\n\nvar isArguments = tagTester('Arguments');\n\n// Define a fallback version of the method in browsers (ahem, IE < 9), where\n// there isn't any inspectable \"Arguments\" type.\n(function() {\n if (!isArguments(arguments)) {\n isArguments = function(obj) {\n return has(obj, 'callee');\n };\n }\n}());\n\nexport default isArguments;\n","import { _isFinite } from './_setup.js';\nimport isSymbol from './isSymbol.js';\n\n// Is a given object a finite number?\nexport default function isFinite(obj) {\n return !isSymbol(obj) && _isFinite(obj) && !isNaN(parseFloat(obj));\n}\n","import { _isNaN } from './_setup.js';\nimport isNumber from './isNumber.js';\n\n// Is the given value `NaN`?\nexport default function isNaN(obj) {\n return isNumber(obj) && _isNaN(obj);\n}\n","// Predicate-generating function. Often useful outside of Underscore.\nexport default function constant(value) {\n return function() {\n return value;\n };\n}\n","import { MAX_ARRAY_INDEX } from './_setup.js';\n\n// Common internal logic for `isArrayLike` and `isBufferLike`.\nexport default function createSizePropertyCheck(getSizeProperty) {\n return function(collection) {\n var sizeProperty = getSizeProperty(collection);\n return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX;\n }\n}\n","// Internal helper to generate a function to obtain property `key` from `obj`.\nexport default function shallowProperty(key) {\n return function(obj) {\n return obj == null ? void 0 : obj[key];\n };\n}\n","import shallowProperty from './_shallowProperty.js';\n\n// Internal helper to obtain the `byteLength` property of an object.\nexport default shallowProperty('byteLength');\n","import createSizePropertyCheck from './_createSizePropertyCheck.js';\nimport getByteLength from './_getByteLength.js';\n\n// Internal helper to determine whether we should spend extensive checks against\n// `ArrayBuffer` et al.\nexport default createSizePropertyCheck(getByteLength);\n","import { supportsArrayBuffer, nativeIsView, toString } from './_setup.js';\nimport isDataView from './isDataView.js';\nimport constant from './constant.js';\nimport isBufferLike from './_isBufferLike.js';\n\n// Is a given value a typed array?\nvar typedArrayPattern = /\\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\\]/;\nfunction isTypedArray(obj) {\n // `ArrayBuffer.isView` is the most future-proof, so use it when available.\n // Otherwise, fall back on the above regular expression.\n return nativeIsView ? (nativeIsView(obj) && !isDataView(obj)) :\n isBufferLike(obj) && typedArrayPattern.test(toString.call(obj));\n}\n\nexport default supportsArrayBuffer ? isTypedArray : constant(false);\n","import shallowProperty from './_shallowProperty.js';\n\n// Internal helper to obtain the `length` property of an object.\nexport default shallowProperty('length');\n","import { nonEnumerableProps, ObjProto } from './_setup.js';\nimport isFunction from './isFunction.js';\nimport has from './_has.js';\n\n// Internal helper to create a simple lookup structure.\n// `collectNonEnumProps` used to depend on `_.contains`, but this led to\n// circular imports. `emulatedSet` is a one-off solution that only works for\n// arrays of strings.\nfunction emulatedSet(keys) {\n var hash = {};\n for (var l = keys.length, i = 0; i < l; ++i) hash[keys[i]] = true;\n return {\n contains: function(key) { return hash[key] === true; },\n push: function(key) {\n hash[key] = true;\n return keys.push(key);\n }\n };\n}\n\n// Internal helper. Checks `keys` for the presence of keys in IE < 9 that won't\n// be iterated by `for key in ...` and thus missed. Extends `keys` in place if\n// needed.\nexport default function collectNonEnumProps(obj, keys) {\n keys = emulatedSet(keys);\n var nonEnumIdx = nonEnumerableProps.length;\n var constructor = obj.constructor;\n var proto = (isFunction(constructor) && constructor.prototype) || ObjProto;\n\n // Constructor is a special case.\n var prop = 'constructor';\n if (has(obj, prop) && !keys.contains(prop)) keys.push(prop);\n\n while (nonEnumIdx--) {\n prop = nonEnumerableProps[nonEnumIdx];\n if (prop in obj && obj[prop] !== proto[prop] && !keys.contains(prop)) {\n keys.push(prop);\n }\n }\n}\n","import isObject from './isObject.js';\nimport { nativeKeys, hasEnumBug } from './_setup.js';\nimport has from './_has.js';\nimport collectNonEnumProps from './_collectNonEnumProps.js';\n\n// Retrieve the names of an object's own properties.\n// Delegates to **ECMAScript 5**'s native `Object.keys`.\nexport default function keys(obj) {\n if (!isObject(obj)) return [];\n if (nativeKeys) return nativeKeys(obj);\n var keys = [];\n for (var key in obj) if (has(obj, key)) keys.push(key);\n // Ahem, IE < 9.\n if (hasEnumBug) collectNonEnumProps(obj, keys);\n return keys;\n}\n","import getLength from './_getLength.js';\nimport isArray from './isArray.js';\nimport isString from './isString.js';\nimport isArguments from './isArguments.js';\nimport keys from './keys.js';\n\n// Is a given array, string, or object empty?\n// An \"empty\" object has no enumerable own-properties.\nexport default function isEmpty(obj) {\n if (obj == null) return true;\n // Skip the more expensive `toString`-based type checks if `obj` has no\n // `.length`.\n var length = getLength(obj);\n if (typeof length == 'number' && (\n isArray(obj) || isString(obj) || isArguments(obj)\n )) return length === 0;\n return getLength(keys(obj)) === 0;\n}\n","import keys from './keys.js';\n\n// Returns whether an object has a given set of `key:value` pairs.\nexport default function isMatch(object, attrs) {\n var _keys = keys(attrs), length = _keys.length;\n if (object == null) return !length;\n var obj = Object(object);\n for (var i = 0; i < length; i++) {\n var key = _keys[i];\n if (attrs[key] !== obj[key] || !(key in obj)) return false;\n }\n return true;\n}\n","import { VERSION } from './_setup.js';\n\n// If Underscore is called as a function, it returns a wrapped object that can\n// be used OO-style. This wrapper holds altered versions of all functions added\n// through `_.mixin`. Wrapped objects may be chained.\nexport default function _(obj) {\n if (obj instanceof _) return obj;\n if (!(this instanceof _)) return new _(obj);\n this._wrapped = obj;\n}\n\n_.VERSION = VERSION;\n\n// Extracts the result from a wrapped and chained object.\n_.prototype.value = function() {\n return this._wrapped;\n};\n\n// Provide unwrapping proxies for some methods used in engine operations\n// such as arithmetic and JSON stringification.\n_.prototype.valueOf = _.prototype.toJSON = _.prototype.value;\n\n_.prototype.toString = function() {\n return String(this._wrapped);\n};\n","import getByteLength from './_getByteLength.js';\n\n// Internal function to wrap or shallow-copy an ArrayBuffer,\n// typed array or DataView to a new view, reusing the buffer.\nexport default function toBufferView(bufferSource) {\n return new Uint8Array(\n bufferSource.buffer || bufferSource,\n bufferSource.byteOffset || 0,\n getByteLength(bufferSource)\n );\n}\n","import _ from './underscore.js';\nimport { toString, SymbolProto } from './_setup.js';\nimport getByteLength from './_getByteLength.js';\nimport isTypedArray from './isTypedArray.js';\nimport isFunction from './isFunction.js';\nimport { hasDataViewBug } from './_stringTagBug.js';\nimport isDataView from './isDataView.js';\nimport keys from './keys.js';\nimport has from './_has.js';\nimport toBufferView from './_toBufferView.js';\n\n// We use this string twice, so give it a name for minification.\nvar tagDataView = '[object DataView]';\n\n// Perform a deep comparison to check if two objects are equal.\nexport default function isEqual(a, b) {\n var todo = [{a: a, b: b}];\n // Initializing stacks of traversed objects for cycle detection.\n var aStack = [], bStack = [];\n\n while (todo.length) {\n var frame = todo.pop();\n if (frame === true) {\n // Remove the first object from the stack of traversed objects.\n aStack.pop();\n bStack.pop();\n continue;\n }\n a = frame.a;\n b = frame.b;\n\n // Identical objects are equal. `0 === -0`, but they aren't identical.\n // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal).\n if (a === b) {\n if (a !== 0 || 1 / a === 1 / b) continue;\n return false;\n }\n // `null` or `undefined` only equal to itself (strict comparison).\n if (a == null || b == null) return false;\n // `NaN`s are equivalent, but non-reflexive.\n if (a !== a) {\n if (b !== b) continue;\n return false;\n }\n // Exhaust primitive checks\n var type = typeof a;\n if (type !== 'function' && type !== 'object' && typeof b != 'object') return false;\n\n// Internal recursive comparison function for `_.isEqual`.\n // Unwrap any wrapped objects.\n if (a instanceof _) a = a._wrapped;\n if (b instanceof _) b = b._wrapped;\n // Compare `[[Class]]` names.\n var className = toString.call(a);\n if (className !== toString.call(b)) return false;\n // Work around a bug in IE 10 - Edge 13.\n if (hasDataViewBug && className == '[object Object]' && isDataView(a)) {\n if (!isDataView(b)) return false;\n className = tagDataView;\n }\n switch (className) {\n // These types are compared by value.\n case '[object RegExp]':\n // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')\n case '[object String]':\n // Primitives and their corresponding object wrappers are equivalent; thus, `\"5\"` is\n // equivalent to `new String(\"5\")`.\n if ('' + a === '' + b) continue;\n return false;\n case '[object Number]':\n todo.push({a: +a, b: +b});\n continue;\n case '[object Date]':\n case '[object Boolean]':\n // Coerce dates and booleans to numeric primitive values. Dates are compared by their\n // millisecond representations. Note that invalid dates with millisecond representations\n // of `NaN` are not equivalent.\n if (+a === +b) continue;\n return false;\n case '[object Symbol]':\n if (SymbolProto.valueOf.call(a) === SymbolProto.valueOf.call(b)) continue;\n return false;\n case '[object ArrayBuffer]':\n case tagDataView:\n // Coerce to typed array so we can fall through.\n todo.push({a: toBufferView(a), b: toBufferView(b)});\n continue;\n }\n\n var areArrays = className === '[object Array]';\n if (!areArrays && isTypedArray(a)) {\n var byteLength = getByteLength(a);\n if (byteLength !== getByteLength(b)) return false;\n if (a.buffer === b.buffer && a.byteOffset === b.byteOffset) continue;\n areArrays = true;\n }\n if (!areArrays) {\n if (typeof a != 'object' || typeof b != 'object') return false;\n\n // Objects with different constructors are not equivalent, but `Object`s or `Array`s\n // from different frames are.\n var aCtor = a.constructor, bCtor = b.constructor;\n if (aCtor !== bCtor && !(isFunction(aCtor) && aCtor instanceof aCtor &&\n isFunction(bCtor) && bCtor instanceof bCtor)\n && ('constructor' in a && 'constructor' in b)) {\n return false;\n }\n }\n\n // Assume equality for cyclic structures. The algorithm for detecting cyclic\n // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.\n\n var length = aStack.length;\n while (length--) {\n // Linear search. Performance is inversely proportional to the number of\n // unique nested structures.\n if (aStack[length] === a) {\n if (bStack[length] === b) break;\n return false;\n }\n }\n if (length >= 0) continue;\n\n // Add the first object to the stack of traversed objects.\n aStack.push(a);\n bStack.push(b);\n todo.push(true);\n\n // Recursively compare objects and arrays.\n if (areArrays) {\n // Compare array lengths to determine if a deep comparison is necessary.\n length = a.length;\n if (length !== b.length) return false;\n // Deep compare the contents, ignoring non-numeric properties.\n while (length--) {\n todo.push({a: a[length], b: b[length]});\n }\n } else {\n // Deep compare objects.\n var _keys = keys(a), key;\n length = _keys.length;\n // Ensure that both objects contain the same number of properties before comparing deep equality.\n if (keys(b).length !== length) return false;\n while (length--) {\n // Deep compare each member\n key = _keys[length];\n if (!has(b, key)) return false;\n todo.push({a: a[key], b: b[key]});\n }\n }\n }\n return true;\n}\n","import isObject from './isObject.js';\nimport { hasEnumBug } from './_setup.js';\nimport collectNonEnumProps from './_collectNonEnumProps.js';\n\n// Retrieve all the enumerable property names of an object.\nexport default function allKeys(obj) {\n if (!isObject(obj)) return [];\n var keys = [];\n for (var key in obj) keys.push(key);\n // Ahem, IE < 9.\n if (hasEnumBug) collectNonEnumProps(obj, keys);\n return keys;\n}\n","import getLength from './_getLength.js';\nimport isFunction from './isFunction.js';\nimport allKeys from './allKeys.js';\n\n// Since the regular `Object.prototype.toString` type tests don't work for\n// some types in IE 11, we use a fingerprinting heuristic instead, based\n// on the methods. It's not great, but it's the best we got.\n// The fingerprint method lists are defined below.\nexport function ie11fingerprint(methods) {\n var length = getLength(methods);\n return function(obj) {\n if (obj == null) return false;\n // `Map`, `WeakMap` and `Set` have no enumerable keys.\n var keys = allKeys(obj);\n if (getLength(keys)) return false;\n for (var i = 0; i < length; i++) {\n if (!isFunction(obj[methods[i]])) return false;\n }\n // If we are testing against `WeakMap`, we need to ensure that\n // `obj` doesn't have a `forEach` method in order to distinguish\n // it from a regular `Map`.\n return methods !== weakMapMethods || !isFunction(obj[forEachName]);\n };\n}\n\n// In the interest of compact minification, we write\n// each string in the fingerprints only once.\nvar forEachName = 'forEach',\n hasName = 'has',\n commonInit = ['clear', 'delete'],\n mapTail = ['get', hasName, 'set'];\n\n// `Map`, `WeakMap` and `Set` each have slightly different\n// combinations of the above sublists.\nexport var mapMethods = commonInit.concat(forEachName, mapTail),\n weakMapMethods = commonInit.concat(mapTail),\n setMethods = ['add'].concat(commonInit, forEachName, hasName);\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, mapMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(mapMethods) : tagTester('Map');\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, weakMapMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(weakMapMethods) : tagTester('WeakMap');\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, setMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(setMethods) : tagTester('Set');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('WeakSet');\n","import keys from './keys.js';\n\n// Retrieve the values of an object's properties.\nexport default function values(obj) {\n var _keys = keys(obj);\n var length = _keys.length;\n var values = Array(length);\n for (var i = 0; i < length; i++) {\n values[i] = obj[_keys[i]];\n }\n return values;\n}\n","import keys from './keys.js';\n\n// Convert an object into a list of `[key, value]` pairs.\n// The opposite of `_.object` with one argument.\nexport default function pairs(obj) {\n var _keys = keys(obj);\n var length = _keys.length;\n var pairs = Array(length);\n for (var i = 0; i < length; i++) {\n pairs[i] = [_keys[i], obj[_keys[i]]];\n }\n return pairs;\n}\n","import keys from './keys.js';\n\n// Invert the keys and values of an object. The values must be serializable.\nexport default function invert(obj) {\n var result = {};\n var _keys = keys(obj);\n for (var i = 0, length = _keys.length; i < length; i++) {\n result[obj[_keys[i]]] = _keys[i];\n }\n return result;\n}\n","import isFunction from './isFunction.js';\n\n// Return a sorted list of the function names available on the object.\nexport default function functions(obj) {\n var names = [];\n for (var key in obj) {\n if (isFunction(obj[key])) names.push(key);\n }\n return names.sort();\n}\n","// An internal function for creating assigner functions.\nexport default function createAssigner(keysFunc, defaults) {\n return function(obj) {\n var length = arguments.length;\n if (defaults) obj = Object(obj);\n if (length < 2 || obj == null) return obj;\n for (var index = 1; index < length; index++) {\n var source = arguments[index],\n keys = keysFunc(source),\n l = keys.length;\n for (var i = 0; i < l; i++) {\n var key = keys[i];\n if (!defaults || obj[key] === void 0) obj[key] = source[key];\n }\n }\n return obj;\n };\n}\n","import createAssigner from './_createAssigner.js';\nimport allKeys from './allKeys.js';\n\n// Extend a given object with all the properties in passed-in object(s).\nexport default createAssigner(allKeys);\n","import createAssigner from './_createAssigner.js';\nimport keys from './keys.js';\n\n// Assigns a given object with all the own properties in the passed-in\n// object(s).\n// (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)\nexport default createAssigner(keys);\n","import createAssigner from './_createAssigner.js';\nimport allKeys from './allKeys.js';\n\n// Fill in a given object with default properties.\nexport default createAssigner(allKeys, true);\n","import isObject from './isObject.js';\nimport { nativeCreate } from './_setup.js';\n\n// Create a naked function reference for surrogate-prototype-swapping.\nfunction ctor() {\n return function(){};\n}\n\n// An internal function for creating a new object that inherits from another.\nexport default function baseCreate(prototype) {\n if (!isObject(prototype)) return {};\n if (nativeCreate) return nativeCreate(prototype);\n var Ctor = ctor();\n Ctor.prototype = prototype;\n var result = new Ctor;\n Ctor.prototype = null;\n return result;\n}\n","import baseCreate from './_baseCreate.js';\nimport extendOwn from './extendOwn.js';\n\n// Creates an object that inherits from the given prototype object.\n// If additional properties are provided then they will be added to the\n// created object.\nexport default function create(prototype, props) {\n var result = baseCreate(prototype);\n if (props) extendOwn(result, props);\n return result;\n}\n","import isObject from './isObject.js';\nimport isArray from './isArray.js';\nimport extend from './extend.js';\n\n// Create a (shallow-cloned) duplicate of an object.\nexport default function clone(obj) {\n if (!isObject(obj)) return obj;\n return isArray(obj) ? obj.slice() : extend({}, obj);\n}\n","// Invokes `interceptor` with the `obj` and then returns `obj`.\n// The primary purpose of this method is to \"tap into\" a method chain, in\n// order to perform operations on intermediate results within the chain.\nexport default function tap(obj, interceptor) {\n interceptor(obj);\n return obj;\n}\n","import _ from './underscore.js';\nimport isArray from './isArray.js';\n\n// Normalize a (deep) property `path` to array.\n// Like `_.iteratee`, this function can be customized.\nexport default function toPath(path) {\n return isArray(path) ? path : [path];\n}\n_.toPath = toPath;\n","import _ from './underscore.js';\nimport './toPath.js';\n\n// Internal wrapper for `_.toPath` to enable minification.\n// Similar to `cb` for `_.iteratee`.\nexport default function toPath(path) {\n return _.toPath(path);\n}\n","// Internal function to obtain a nested property in `obj` along `path`.\nexport default function deepGet(obj, path) {\n var length = path.length;\n for (var i = 0; i < length; i++) {\n if (obj == null) return void 0;\n obj = obj[path[i]];\n }\n return length ? obj : void 0;\n}\n","import toPath from './_toPath.js';\nimport deepGet from './_deepGet.js';\nimport isUndefined from './isUndefined.js';\n\n// Get the value of the (deep) property on `path` from `object`.\n// If any property in `path` does not exist or if the value is\n// `undefined`, return `defaultValue` instead.\n// The `path` is normalized through `_.toPath`.\nexport default function get(object, path, defaultValue) {\n var value = deepGet(object, toPath(path));\n return isUndefined(value) ? defaultValue : value;\n}\n","import _has from './_has.js';\nimport toPath from './_toPath.js';\n\n// Shortcut function for checking if an object has a given property directly on\n// itself (in other words, not on a prototype). Unlike the internal `has`\n// function, this public version can also traverse nested properties.\nexport default function has(obj, path) {\n path = toPath(path);\n var length = path.length;\n for (var i = 0; i < length; i++) {\n var key = path[i];\n if (!_has(obj, key)) return false;\n obj = obj[key];\n }\n return !!length;\n}\n","// Keep the identity function around for default iteratees.\nexport default function identity(value) {\n return value;\n}\n","import extendOwn from './extendOwn.js';\nimport isMatch from './isMatch.js';\n\n// Returns a predicate for checking whether an object has a given set of\n// `key:value` pairs.\nexport default function matcher(attrs) {\n attrs = extendOwn({}, attrs);\n return function(obj) {\n return isMatch(obj, attrs);\n };\n}\n","import deepGet from './_deepGet.js';\nimport toPath from './_toPath.js';\n\n// Creates a function that, when passed an object, will traverse that object’s\n// properties down the given `path`, specified as an array of keys or indices.\nexport default function property(path) {\n path = toPath(path);\n return function(obj) {\n return deepGet(obj, path);\n };\n}\n","// Internal function that returns an efficient (for current engines) version\n// of the passed-in callback, to be repeatedly applied in other Underscore\n// functions.\nexport default function optimizeCb(func, context, argCount) {\n if (context === void 0) return func;\n switch (argCount == null ? 3 : argCount) {\n case 1: return function(value) {\n return func.call(context, value);\n };\n // The 2-argument case is omitted because we’re not using it.\n case 3: return function(value, index, collection) {\n return func.call(context, value, index, collection);\n };\n case 4: return function(accumulator, value, index, collection) {\n return func.call(context, accumulator, value, index, collection);\n };\n }\n return function() {\n return func.apply(context, arguments);\n };\n}\n","import identity from './identity.js';\nimport isFunction from './isFunction.js';\nimport isObject from './isObject.js';\nimport isArray from './isArray.js';\nimport matcher from './matcher.js';\nimport property from './property.js';\nimport optimizeCb from './_optimizeCb.js';\n\n// An internal function to generate callbacks that can be applied to each\n// element in a collection, returning the desired result — either `_.identity`,\n// an arbitrary callback, a property matcher, or a property accessor.\nexport default function baseIteratee(value, context, argCount) {\n if (value == null) return identity;\n if (isFunction(value)) return optimizeCb(value, context, argCount);\n if (isObject(value) && !isArray(value)) return matcher(value);\n return property(value);\n}\n","import _ from './underscore.js';\nimport baseIteratee from './_baseIteratee.js';\n\n// External wrapper for our callback generator. Users may customize\n// `_.iteratee` if they want additional predicate/iteratee shorthand styles.\n// This abstraction hides the internal-only `argCount` argument.\nexport default function iteratee(value, context) {\n return baseIteratee(value, context, Infinity);\n}\n_.iteratee = iteratee;\n","import _ from './underscore.js';\nimport baseIteratee from './_baseIteratee.js';\nimport iteratee from './iteratee.js';\n\n// The function we call internally to generate a callback. It invokes\n// `_.iteratee` if overridden, otherwise `baseIteratee`.\nexport default function cb(value, context, argCount) {\n if (_.iteratee !== iteratee) return _.iteratee(value, context);\n return baseIteratee(value, context, argCount);\n}\n","import cb from './_cb.js';\nimport keys from './keys.js';\n\n// Returns the results of applying the `iteratee` to each element of `obj`.\n// In contrast to `_.map` it returns an object.\nexport default function mapObject(obj, iteratee, context) {\n iteratee = cb(iteratee, context);\n var _keys = keys(obj),\n length = _keys.length,\n results = {};\n for (var index = 0; index < length; index++) {\n var currentKey = _keys[index];\n results[currentKey] = iteratee(obj[currentKey], currentKey, obj);\n }\n return results;\n}\n","// Predicate-generating function. Often useful outside of Underscore.\nexport default function noop(){}\n","import noop from './noop.js';\nimport get from './get.js';\n\n// Generates a function for a given object that returns a given property.\nexport default function propertyOf(obj) {\n if (obj == null) return noop;\n return function(path) {\n return get(obj, path);\n };\n}\n","import optimizeCb from './_optimizeCb.js';\n\n// Run a function **n** times.\nexport default function times(n, iteratee, context) {\n var accum = Array(Math.max(0, n));\n iteratee = optimizeCb(iteratee, context, 1);\n for (var i = 0; i < n; i++) accum[i] = iteratee(i);\n return accum;\n}\n","// Return a random integer between `min` and `max` (inclusive).\nexport default function random(min, max) {\n if (max == null) {\n max = min;\n min = 0;\n }\n return min + Math.floor(Math.random() * (max - min + 1));\n}\n","// A (possibly faster) way to get the current timestamp as an integer.\nexport default Date.now || function() {\n return new Date().getTime();\n};\n","import keys from './keys.js';\n\n// Internal helper to generate functions for escaping and unescaping strings\n// to/from HTML interpolation.\nexport default function createEscaper(map) {\n var escaper = function(match) {\n return map[match];\n };\n // Regexes for identifying a key that needs to be escaped.\n var source = '(?:' + keys(map).join('|') + ')';\n var testRegexp = RegExp(source);\n var replaceRegexp = RegExp(source, 'g');\n return function(string) {\n string = string == null ? '' : '' + string;\n return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;\n };\n}\n","// Internal list of HTML entities for escaping.\nexport default {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '`': '`'\n};\n","import createEscaper from './_createEscaper.js';\nimport escapeMap from './_escapeMap.js';\n\n// Function for escaping strings to HTML interpolation.\nexport default createEscaper(escapeMap);\n","import createEscaper from './_createEscaper.js';\nimport unescapeMap from './_unescapeMap.js';\n\n// Function for unescaping strings from HTML interpolation.\nexport default createEscaper(unescapeMap);\n","import invert from './invert.js';\nimport escapeMap from './_escapeMap.js';\n\n// Internal list of HTML entities for unescaping.\nexport default invert(escapeMap);\n","import _ from './underscore.js';\n\n// By default, Underscore uses ERB-style template delimiters. Change the\n// following template settings to use alternative delimiters.\nexport default _.templateSettings = {\n evaluate: /<%([\\s\\S]+?)%>/g,\n interpolate: /<%=([\\s\\S]+?)%>/g,\n escape: /<%-([\\s\\S]+?)%>/g\n};\n","import defaults from './defaults.js';\nimport _ from './underscore.js';\nimport './templateSettings.js';\n\n// When customizing `_.templateSettings`, if you don't want to define an\n// interpolation, evaluation or escaping regex, we need one that is\n// guaranteed not to match.\nvar noMatch = /(.)^/;\n\n// Certain characters need to be escaped so that they can be put into a\n// string literal.\nvar escapes = {\n \"'\": \"'\",\n '\\\\': '\\\\',\n '\\r': 'r',\n '\\n': 'n',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n};\n\nvar escapeRegExp = /\\\\|'|\\r|\\n|\\u2028|\\u2029/g;\n\nfunction escapeChar(match) {\n return '\\\\' + escapes[match];\n}\n\n// In order to prevent third-party code injection through\n// `_.templateSettings.variable`, we test it against the following regular\n// expression. It is intentionally a bit more liberal than just matching valid\n// identifiers, but still prevents possible loopholes through defaults or\n// destructuring assignment.\nvar bareIdentifier = /^\\s*(\\w|\\$)+\\s*$/;\n\n// JavaScript micro-templating, similar to John Resig's implementation.\n// Underscore templating handles arbitrary delimiters, preserves whitespace,\n// and correctly escapes quotes within interpolated code.\n// NB: `oldSettings` only exists for backwards compatibility.\nexport default function template(text, settings, oldSettings) {\n if (!settings && oldSettings) settings = oldSettings;\n settings = defaults({}, settings, _.templateSettings);\n\n // Combine delimiters into one regular expression via alternation.\n var matcher = RegExp([\n (settings.escape || noMatch).source,\n (settings.interpolate || noMatch).source,\n (settings.evaluate || noMatch).source\n ].join('|') + '|$', 'g');\n\n // Compile the template source, escaping string literals appropriately.\n var index = 0;\n var source = \"__p+='\";\n text.replace(matcher, function(match, escape, interpolate, evaluate, offset) {\n source += text.slice(index, offset).replace(escapeRegExp, escapeChar);\n index = offset + match.length;\n\n if (escape) {\n source += \"'+\\n((__t=(\" + escape + \"))==null?'':_.escape(__t))+\\n'\";\n } else if (interpolate) {\n source += \"'+\\n((__t=(\" + interpolate + \"))==null?'':__t)+\\n'\";\n } else if (evaluate) {\n source += \"';\\n\" + evaluate + \"\\n__p+='\";\n }\n\n // Adobe VMs need the match returned to produce the correct offset.\n return match;\n });\n source += \"';\\n\";\n\n var argument = settings.variable;\n if (argument) {\n // Insure against third-party code injection. (CVE-2021-23358)\n if (!bareIdentifier.test(argument)) throw new Error(\n 'variable is not a bare identifier: ' + argument\n );\n } else {\n // If a variable is not specified, place data values in local scope.\n source = 'with(obj||{}){\\n' + source + '}\\n';\n argument = 'obj';\n }\n\n source = \"var __t,__p='',__j=Array.prototype.join,\" +\n \"print=function(){__p+=__j.call(arguments,'');};\\n\" +\n source + 'return __p;\\n';\n\n var render;\n try {\n render = new Function(argument, '_', source);\n } catch (e) {\n e.source = source;\n throw e;\n }\n\n var template = function(data) {\n return render.call(this, data, _);\n };\n\n // Provide the compiled source as a convenience for precompilation.\n template.source = 'function(' + argument + '){\\n' + source + '}';\n\n return template;\n}\n","import isFunction from './isFunction.js';\nimport toPath from './_toPath.js';\n\n// Traverses the children of `obj` along `path`. If a child is a function, it\n// is invoked with its parent as context. Returns the value of the final\n// child, or `fallback` if any child is undefined.\nexport default function result(obj, path, fallback) {\n path = toPath(path);\n var length = path.length;\n if (!length) {\n return isFunction(fallback) ? fallback.call(obj) : fallback;\n }\n for (var i = 0; i < length; i++) {\n var prop = obj == null ? void 0 : obj[path[i]];\n if (prop === void 0) {\n prop = fallback;\n i = length; // Ensure we don't continue iterating.\n }\n obj = isFunction(prop) ? prop.call(obj) : prop;\n }\n return obj;\n}\n","// Generate a unique integer id (unique within the entire client session).\n// Useful for temporary DOM ids.\nvar idCounter = 0;\nexport default function uniqueId(prefix) {\n var id = ++idCounter + '';\n return prefix ? prefix + id : id;\n}\n","import _ from './underscore.js';\n\n// Start chaining a wrapped Underscore object.\nexport default function chain(obj) {\n var instance = _(obj);\n instance._chain = true;\n return instance;\n}\n","import baseCreate from './_baseCreate.js';\nimport isObject from './isObject.js';\n\n// Internal function to execute `sourceFunc` bound to `context` with optional\n// `args`. Determines whether to execute a function as a constructor or as a\n// normal function.\nexport default function executeBound(sourceFunc, boundFunc, context, callingContext, args) {\n if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);\n var self = baseCreate(sourceFunc.prototype);\n var result = sourceFunc.apply(self, args);\n if (isObject(result)) return result;\n return self;\n}\n","import restArguments from './restArguments.js';\nimport executeBound from './_executeBound.js';\nimport _ from './underscore.js';\n\n// Partially apply a function by creating a version that has had some of its\n// arguments pre-filled, without changing its dynamic `this` context. `_` acts\n// as a placeholder by default, allowing any combination of arguments to be\n// pre-filled. Set `_.partial.placeholder` for a custom placeholder argument.\nvar partial = restArguments(function(func, boundArgs) {\n var placeholder = partial.placeholder;\n var bound = function() {\n var position = 0, length = boundArgs.length;\n var args = Array(length);\n for (var i = 0; i < length; i++) {\n args[i] = boundArgs[i] === placeholder ? arguments[position++] : boundArgs[i];\n }\n while (position < arguments.length) args.push(arguments[position++]);\n return executeBound(func, bound, this, this, args);\n };\n return bound;\n});\n\npartial.placeholder = _;\nexport default partial;\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport executeBound from './_executeBound.js';\n\n// Create a function bound to a given object (assigning `this`, and arguments,\n// optionally).\nexport default restArguments(function(func, context, args) {\n if (!isFunction(func)) throw new TypeError('Bind must be called on a function');\n var bound = restArguments(function(callArgs) {\n return executeBound(func, bound, context, this, args.concat(callArgs));\n });\n return bound;\n});\n","import createSizePropertyCheck from './_createSizePropertyCheck.js';\nimport getLength from './_getLength.js';\n\n// Internal helper for collection methods to determine whether a collection\n// should be iterated as an array or as an object.\n// Related: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength\n// Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094\nexport default createSizePropertyCheck(getLength);\n","import getLength from './_getLength.js';\nimport isArrayLike from './_isArrayLike.js';\nimport isArray from './isArray.js';\nimport isArguments from './isArguments.js';\n\n// Internal implementation of a recursive `flatten` function.\nexport default function flatten(input, depth, strict) {\n if (!depth && depth !== 0) depth = Infinity;\n var output = [], idx = 0, i = 0, length = getLength(input) || 0, stack = [];\n while (true) {\n if (i >= length) {\n if (!stack.length) break;\n var frame = stack.pop();\n i = frame.i;\n input = frame.v;\n length = getLength(input);\n continue;\n }\n var value = input[i++];\n if (stack.length >= depth) {\n output[idx++] = value;\n } else if (isArrayLike(value) && (isArray(value) || isArguments(value))) {\n // Flatten current level of array or arguments object.\n stack.push({i: i, v: input});\n i = 0;\n input = value;\n length = getLength(input);\n } else if (!strict) {\n output[idx++] = value;\n }\n }\n return output;\n}\n","import restArguments from './restArguments.js';\nimport flatten from './_flatten.js';\nimport bind from './bind.js';\n\n// Bind a number of an object's methods to that object. Remaining arguments\n// are the method names to be bound. Useful for ensuring that all callbacks\n// defined on an object belong to it.\nexport default restArguments(function(obj, keys) {\n keys = flatten(keys, false, false);\n var index = keys.length;\n if (index < 1) throw new Error('bindAll must be passed function names');\n while (index--) {\n var key = keys[index];\n obj[key] = bind(obj[key], obj);\n }\n return obj;\n});\n","import has from './_has.js';\n\n// Memoize an expensive function by storing its results.\nexport default function memoize(func, hasher) {\n var memoize = function(key) {\n var cache = memoize.cache;\n var address = '' + (hasher ? hasher.apply(this, arguments) : key);\n if (!has(cache, address)) cache[address] = func.apply(this, arguments);\n return cache[address];\n };\n memoize.cache = {};\n return memoize;\n}\n","import restArguments from './restArguments.js';\n\n// Delays a function for the given number of milliseconds, and then calls\n// it with the arguments supplied.\nexport default restArguments(function(func, wait, args) {\n return setTimeout(function() {\n return func.apply(null, args);\n }, wait);\n});\n","import partial from './partial.js';\nimport delay from './delay.js';\nimport _ from './underscore.js';\n\n// Defers a function, scheduling it to run after the current call stack has\n// cleared.\nexport default partial(delay, _, 1);\n","import now from './now.js';\n\n// Returns a function, that, when invoked, will only be triggered at most once\n// during a given window of time. Normally, the throttled function will run\n// as much as it can, without ever going more than once per `wait` duration;\n// but if you'd like to disable the execution on the leading edge, pass\n// `{leading: false}`. To disable execution on the trailing edge, ditto.\nexport default function throttle(func, wait, options) {\n var timeout, context, args, result;\n var previous = 0;\n if (!options) options = {};\n\n var later = function() {\n previous = options.leading === false ? 0 : now();\n timeout = null;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n };\n\n var throttled = function() {\n var _now = now();\n if (!previous && options.leading === false) previous = _now;\n var remaining = wait - (_now - previous);\n context = this;\n args = arguments;\n if (remaining <= 0 || remaining > wait) {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n previous = _now;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n } else if (!timeout && options.trailing !== false) {\n timeout = setTimeout(later, remaining);\n }\n return result;\n };\n\n throttled.cancel = function() {\n clearTimeout(timeout);\n previous = 0;\n timeout = context = args = null;\n };\n\n return throttled;\n}\n","import restArguments from './restArguments.js';\nimport now from './now.js';\n\n// When a sequence of calls of the returned function ends, the argument\n// function is triggered. The end of a sequence is defined by the `wait`\n// parameter. If `immediate` is passed, the argument function will be\n// triggered at the beginning of the sequence instead of at the end.\nexport default function debounce(func, wait, immediate) {\n var timeout, previous, args, result, context;\n\n var later = function() {\n var passed = now() - previous;\n if (wait > passed) {\n timeout = setTimeout(later, wait - passed);\n } else {\n timeout = null;\n if (!immediate) result = func.apply(context, args);\n // This check is needed because `func` can recursively invoke `debounced`.\n if (!timeout) args = context = null;\n }\n };\n\n var debounced = restArguments(function(_args) {\n context = this;\n args = _args;\n previous = now();\n if (!timeout) {\n timeout = setTimeout(later, wait);\n if (immediate) result = func.apply(context, args);\n }\n return result;\n });\n\n debounced.cancel = function() {\n clearTimeout(timeout);\n timeout = args = context = null;\n };\n\n return debounced;\n}\n","import partial from './partial.js';\n\n// Returns the first function passed as an argument to the second,\n// allowing you to adjust arguments, run code before and after, and\n// conditionally execute the original function.\nexport default function wrap(func, wrapper) {\n return partial(wrapper, func);\n}\n","// Returns a negated version of the passed-in predicate.\nexport default function negate(predicate) {\n return function() {\n return !predicate.apply(this, arguments);\n };\n}\n","// Returns a function that is the composition of a list of functions, each\n// consuming the return value of the function that follows.\nexport default function compose() {\n var args = arguments;\n var start = args.length - 1;\n return function() {\n var i = start;\n var result = args[start].apply(this, arguments);\n while (i--) result = args[i].call(this, result);\n return result;\n };\n}\n","// Returns a function that will only be executed on and after the Nth call.\nexport default function after(times, func) {\n return function() {\n if (--times < 1) {\n return func.apply(this, arguments);\n }\n };\n}\n","// Returns a function that will only be executed up to (but not including) the\n// Nth call.\nexport default function before(times, func) {\n var memo;\n return function() {\n if (--times > 0) {\n memo = func.apply(this, arguments);\n }\n if (times <= 1) func = null;\n return memo;\n };\n}\n","import partial from './partial.js';\nimport before from './before.js';\n\n// Returns a function that will be executed at most one time, no matter how\n// often you call it. Useful for lazy initialization.\nexport default partial(before, 2);\n","import cb from './_cb.js';\nimport keys from './keys.js';\n\n// Returns the first key on an object that passes a truth test.\nexport default function findKey(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = keys(obj), key;\n for (var i = 0, length = _keys.length; i < length; i++) {\n key = _keys[i];\n if (predicate(obj[key], key, obj)) return key;\n }\n}\n","import cb from './_cb.js';\nimport getLength from './_getLength.js';\n\n// Internal function to generate `_.findIndex` and `_.findLastIndex`.\nexport default function createPredicateIndexFinder(dir) {\n return function(array, predicate, context) {\n predicate = cb(predicate, context);\n var length = getLength(array);\n var index = dir > 0 ? 0 : length - 1;\n for (; index >= 0 && index < length; index += dir) {\n if (predicate(array[index], index, array)) return index;\n }\n return -1;\n };\n}\n","import createPredicateIndexFinder from './_createPredicateIndexFinder.js';\n\n// Returns the first index on an array-like that passes a truth test.\nexport default createPredicateIndexFinder(1);\n","import createPredicateIndexFinder from './_createPredicateIndexFinder.js';\n\n// Returns the last index on an array-like that passes a truth test.\nexport default createPredicateIndexFinder(-1);\n","import cb from './_cb.js';\nimport getLength from './_getLength.js';\n\n// Use a comparator function to figure out the smallest index at which\n// an object should be inserted so as to maintain order. Uses binary search.\nexport default function sortedIndex(array, obj, iteratee, context) {\n iteratee = cb(iteratee, context, 1);\n var value = iteratee(obj);\n var low = 0, high = getLength(array);\n while (low < high) {\n var mid = Math.floor((low + high) / 2);\n if (iteratee(array[mid]) < value) low = mid + 1; else high = mid;\n }\n return low;\n}\n","import getLength from './_getLength.js';\nimport { slice } from './_setup.js';\nimport isNaN from './isNaN.js';\n\n// Internal function to generate the `_.indexOf` and `_.lastIndexOf` functions.\nexport default function createIndexFinder(dir, predicateFind, sortedIndex) {\n return function(array, item, idx) {\n var i = 0, length = getLength(array);\n if (typeof idx == 'number') {\n if (dir > 0) {\n i = idx >= 0 ? idx : Math.max(idx + length, i);\n } else {\n length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1;\n }\n } else if (sortedIndex && idx && length) {\n idx = sortedIndex(array, item);\n return array[idx] === item ? idx : -1;\n }\n if (item !== item) {\n idx = predicateFind(slice.call(array, i, length), isNaN);\n return idx >= 0 ? idx + i : -1;\n }\n for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) {\n if (array[idx] === item) return idx;\n }\n return -1;\n };\n}\n","import sortedIndex from './sortedIndex.js';\nimport findIndex from './findIndex.js';\nimport createIndexFinder from './_createIndexFinder.js';\n\n// Return the position of the first occurrence of an item in an array,\n// or -1 if the item is not included in the array.\n// If the array is large and already in sort order, pass `true`\n// for **isSorted** to use binary search.\nexport default createIndexFinder(1, findIndex, sortedIndex);\n","import findLastIndex from './findLastIndex.js';\nimport createIndexFinder from './_createIndexFinder.js';\n\n// Return the position of the last occurrence of an item in an array,\n// or -1 if the item is not included in the array.\nexport default createIndexFinder(-1, findLastIndex);\n","import isArrayLike from './_isArrayLike.js';\nimport findIndex from './findIndex.js';\nimport findKey from './findKey.js';\n\n// Return the first value which passes a truth test.\nexport default function find(obj, predicate, context) {\n var keyFinder = isArrayLike(obj) ? findIndex : findKey;\n var key = keyFinder(obj, predicate, context);\n if (key !== void 0 && key !== -1) return obj[key];\n}\n","import find from './find.js';\nimport matcher from './matcher.js';\n\n// Convenience version of a common use case of `_.find`: getting the first\n// object containing specific `key:value` pairs.\nexport default function findWhere(obj, attrs) {\n return find(obj, matcher(attrs));\n}\n","import optimizeCb from './_optimizeCb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// The cornerstone for collection functions, an `each`\n// implementation, aka `forEach`.\n// Handles raw objects in addition to array-likes. Treats all\n// sparse array-likes as if they were dense.\nexport default function each(obj, iteratee, context) {\n iteratee = optimizeCb(iteratee, context);\n var i, length;\n if (isArrayLike(obj)) {\n for (i = 0, length = obj.length; i < length; i++) {\n iteratee(obj[i], i, obj);\n }\n } else {\n var _keys = keys(obj);\n for (i = 0, length = _keys.length; i < length; i++) {\n iteratee(obj[_keys[i]], _keys[i], obj);\n }\n }\n return obj;\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Return the results of applying the iteratee to each element.\nexport default function map(obj, iteratee, context) {\n iteratee = cb(iteratee, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length,\n results = Array(length);\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n results[index] = iteratee(obj[currentKey], currentKey, obj);\n }\n return results;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\nimport optimizeCb from './_optimizeCb.js';\n\n// Internal helper to create a reducing function, iterating left or right.\nexport default function createReduce(dir) {\n // Wrap code that reassigns argument variables in a separate function than\n // the one that accesses `arguments.length` to avoid a perf hit. (#1991)\n var reducer = function(obj, iteratee, memo, initial) {\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length,\n index = dir > 0 ? 0 : length - 1;\n if (!initial) {\n memo = obj[_keys ? _keys[index] : index];\n index += dir;\n }\n for (; index >= 0 && index < length; index += dir) {\n var currentKey = _keys ? _keys[index] : index;\n memo = iteratee(memo, obj[currentKey], currentKey, obj);\n }\n return memo;\n };\n\n return function(obj, iteratee, memo, context) {\n var initial = arguments.length >= 3;\n return reducer(obj, optimizeCb(iteratee, context, 4), memo, initial);\n };\n}\n","import createReduce from './_createReduce.js';\n\n// **Reduce** builds up a single result from a list of values, aka `inject`,\n// or `foldl`.\nexport default createReduce(1);\n","import createReduce from './_createReduce.js';\n\n// The right-associative version of reduce, also known as `foldr`.\nexport default createReduce(-1);\n","import cb from './_cb.js';\nimport each from './each.js';\n\n// Return all the elements that pass a truth test.\nexport default function filter(obj, predicate, context) {\n var results = [];\n predicate = cb(predicate, context);\n each(obj, function(value, index, list) {\n if (predicate(value, index, list)) results.push(value);\n });\n return results;\n}\n","import filter from './filter.js';\nimport negate from './negate.js';\nimport cb from './_cb.js';\n\n// Return all the elements for which a truth test fails.\nexport default function reject(obj, predicate, context) {\n return filter(obj, negate(cb(predicate)), context);\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Determine whether all of the elements pass a truth test.\nexport default function every(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length;\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n if (!predicate(obj[currentKey], currentKey, obj)) return false;\n }\n return true;\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Determine if at least one element in the object passes a truth test.\nexport default function some(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length;\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n if (predicate(obj[currentKey], currentKey, obj)) return true;\n }\n return false;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport indexOf from './indexOf.js';\n\n// Determine if the array or object contains a given item (using `===`).\nexport default function contains(obj, item, fromIndex, guard) {\n if (!isArrayLike(obj)) obj = values(obj);\n if (typeof fromIndex != 'number' || guard) fromIndex = 0;\n return indexOf(obj, item, fromIndex) >= 0;\n}\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport map from './map.js';\nimport deepGet from './_deepGet.js';\nimport toPath from './_toPath.js';\n\n// Invoke a method (with arguments) on every item in a collection.\nexport default restArguments(function(obj, path, args) {\n var contextPath, func;\n if (isFunction(path)) {\n func = path;\n } else {\n path = toPath(path);\n contextPath = path.slice(0, -1);\n path = path[path.length - 1];\n }\n return map(obj, function(context) {\n var method = func;\n if (!method) {\n if (contextPath && contextPath.length) {\n context = deepGet(context, contextPath);\n }\n if (context == null) return void 0;\n method = context[path];\n }\n return method == null ? method : method.apply(context, args);\n });\n});\n","import map from './map.js';\nimport property from './property.js';\n\n// Convenience version of a common use case of `_.map`: fetching a property.\nexport default function pluck(obj, key) {\n return map(obj, property(key));\n}\n","import filter from './filter.js';\nimport matcher from './matcher.js';\n\n// Convenience version of a common use case of `_.filter`: selecting only\n// objects containing specific `key:value` pairs.\nexport default function where(obj, attrs) {\n return filter(obj, matcher(attrs));\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport cb from './_cb.js';\nimport each from './each.js';\n\n// Return the maximum element (or element-based computation).\nexport default function max(obj, iteratee, context) {\n var result = -Infinity, lastComputed = -Infinity,\n value, computed;\n if (iteratee == null || (typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null)) {\n obj = isArrayLike(obj) ? obj : values(obj);\n for (var i = 0, length = obj.length; i < length; i++) {\n value = obj[i];\n if (value != null && value > result) {\n result = value;\n }\n }\n } else {\n iteratee = cb(iteratee, context);\n each(obj, function(v, index, list) {\n computed = iteratee(v, index, list);\n if (computed > lastComputed || (computed === -Infinity && result === -Infinity)) {\n result = v;\n lastComputed = computed;\n }\n });\n }\n return result;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport cb from './_cb.js';\nimport each from './each.js';\n\n// Return the minimum element (or element-based computation).\nexport default function min(obj, iteratee, context) {\n var result = Infinity, lastComputed = Infinity,\n value, computed;\n if (iteratee == null || (typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null)) {\n obj = isArrayLike(obj) ? obj : values(obj);\n for (var i = 0, length = obj.length; i < length; i++) {\n value = obj[i];\n if (value != null && value < result) {\n result = value;\n }\n }\n } else {\n iteratee = cb(iteratee, context);\n each(obj, function(v, index, list) {\n computed = iteratee(v, index, list);\n if (computed < lastComputed || (computed === Infinity && result === Infinity)) {\n result = v;\n lastComputed = computed;\n }\n });\n }\n return result;\n}\n","import isArray from './isArray.js';\nimport { slice } from './_setup.js';\nimport isString from './isString.js';\nimport isArrayLike from './_isArrayLike.js';\nimport map from './map.js';\nimport identity from './identity.js';\nimport values from './values.js';\n\n// Safely create a real, live array from anything iterable.\nvar reStrSymbol = /[^\\ud800-\\udfff]|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff]/g;\nexport default function toArray(obj) {\n if (!obj) return [];\n if (isArray(obj)) return slice.call(obj);\n if (isString(obj)) {\n // Keep surrogate pair characters together.\n return obj.match(reStrSymbol);\n }\n if (isArrayLike(obj)) return map(obj, identity);\n return values(obj);\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport getLength from './_getLength.js';\nimport random from './random.js';\nimport toArray from './toArray.js';\n\n// Sample **n** random values from a collection using the modern version of the\n// [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher–Yates_shuffle).\n// If **n** is not specified, returns a single random element.\n// The internal `guard` argument allows it to work with `_.map`.\nexport default function sample(obj, n, guard) {\n if (n == null || guard) {\n if (!isArrayLike(obj)) obj = values(obj);\n return obj[random(obj.length - 1)];\n }\n var sample = toArray(obj);\n var length = getLength(sample);\n n = Math.max(Math.min(n, length), 0);\n var last = length - 1;\n for (var index = 0; index < n; index++) {\n var rand = random(index, last);\n var temp = sample[index];\n sample[index] = sample[rand];\n sample[rand] = temp;\n }\n return sample.slice(0, n);\n}\n","import sample from './sample.js';\n\n// Shuffle a collection.\nexport default function shuffle(obj) {\n return sample(obj, Infinity);\n}\n","import cb from './_cb.js';\nimport pluck from './pluck.js';\nimport map from './map.js';\n\n// Sort the object's values by a criterion produced by an iteratee.\nexport default function sortBy(obj, iteratee, context) {\n var index = 0;\n iteratee = cb(iteratee, context);\n return pluck(map(obj, function(value, key, list) {\n return {\n value: value,\n index: index++,\n criteria: iteratee(value, key, list)\n };\n }).sort(function(left, right) {\n var a = left.criteria;\n var b = right.criteria;\n if (a !== b) {\n if (a > b || a === void 0) return 1;\n if (a < b || b === void 0) return -1;\n }\n return left.index - right.index;\n }), 'value');\n}\n","import cb from './_cb.js';\nimport each from './each.js';\n\n// An internal function used for aggregate \"group by\" operations.\nexport default function group(behavior, partition) {\n return function(obj, iteratee, context) {\n var result = partition ? [[], []] : {};\n iteratee = cb(iteratee, context);\n each(obj, function(value, index) {\n var key = iteratee(value, index, obj);\n behavior(result, value, key);\n });\n return result;\n };\n}\n","import group from './_group.js';\nimport has from './_has.js';\n\n// Groups the object's values by a criterion. Pass either a string attribute\n// to group by, or a function that returns the criterion.\nexport default group(function(result, value, key) {\n if (has(result, key)) result[key].push(value); else result[key] = [value];\n});\n","import group from './_group.js';\n\n// Indexes the object's values by a criterion, similar to `_.groupBy`, but for\n// when you know that your index values will be unique.\nexport default group(function(result, value, key) {\n result[key] = value;\n});\n","import group from './_group.js';\nimport has from './_has.js';\n\n// Counts instances of an object that group by a certain criterion. Pass\n// either a string attribute to count by, or a function that returns the\n// criterion.\nexport default group(function(result, value, key) {\n if (has(result, key)) result[key]++; else result[key] = 1;\n});\n","import group from './_group.js';\n\n// Split a collection into two arrays: one whose elements all pass the given\n// truth test, and one whose elements all do not pass the truth test.\nexport default group(function(result, value, pass) {\n result[pass ? 0 : 1].push(value);\n}, true);\n","import isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Return the number of elements in a collection.\nexport default function size(obj) {\n if (obj == null) return 0;\n return isArrayLike(obj) ? obj.length : keys(obj).length;\n}\n","// Internal `_.pick` helper function to determine whether `key` is an enumerable\n// property name of `obj`.\nexport default function keyInObj(value, key, obj) {\n return key in obj;\n}\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport optimizeCb from './_optimizeCb.js';\nimport allKeys from './allKeys.js';\nimport keyInObj from './_keyInObj.js';\nimport flatten from './_flatten.js';\n\n// Return a copy of the object only containing the allowed properties.\nexport default restArguments(function(obj, keys) {\n var result = {}, iteratee = keys[0];\n if (obj == null) return result;\n if (isFunction(iteratee)) {\n if (keys.length > 1) iteratee = optimizeCb(iteratee, keys[1]);\n keys = allKeys(obj);\n } else {\n iteratee = keyInObj;\n keys = flatten(keys, false, false);\n obj = Object(obj);\n }\n for (var i = 0, length = keys.length; i < length; i++) {\n var key = keys[i];\n var value = obj[key];\n if (iteratee(value, key, obj)) result[key] = value;\n }\n return result;\n});\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport negate from './negate.js';\nimport map from './map.js';\nimport flatten from './_flatten.js';\nimport contains from './contains.js';\nimport pick from './pick.js';\n\n// Return a copy of the object without the disallowed properties.\nexport default restArguments(function(obj, keys) {\n var iteratee = keys[0], context;\n if (isFunction(iteratee)) {\n iteratee = negate(iteratee);\n if (keys.length > 1) context = keys[1];\n } else {\n keys = map(flatten(keys, false, false), String);\n iteratee = function(value, key) {\n return !contains(keys, key);\n };\n }\n return pick(obj, iteratee, context);\n});\n","import { slice } from './_setup.js';\n\n// Returns everything but the last entry of the array. Especially useful on\n// the arguments object. Passing **n** will return all the values in\n// the array, excluding the last N.\nexport default function initial(array, n, guard) {\n return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n)));\n}\n","import initial from './initial.js';\n\n// Get the first element of an array. Passing **n** will return the first N\n// values in the array. The **guard** check allows it to work with `_.map`.\nexport default function first(array, n, guard) {\n if (array == null || array.length < 1) return n == null || guard ? void 0 : [];\n if (n == null || guard) return array[0];\n return initial(array, array.length - n);\n}\n","import { slice } from './_setup.js';\n\n// Returns everything but the first entry of the `array`. Especially useful on\n// the `arguments` object. Passing an **n** will return the rest N values in the\n// `array`.\nexport default function rest(array, n, guard) {\n return slice.call(array, n == null || guard ? 1 : n);\n}\n","import rest from './rest.js';\n\n// Get the last element of an array. Passing **n** will return the last N\n// values in the array.\nexport default function last(array, n, guard) {\n if (array == null || array.length < 1) return n == null || guard ? void 0 : [];\n if (n == null || guard) return array[array.length - 1];\n return rest(array, Math.max(0, array.length - n));\n}\n","import filter from './filter.js';\n\n// Trim out all falsy values from an array.\nexport default function compact(array) {\n return filter(array, Boolean);\n}\n","import _flatten from './_flatten.js';\n\n// Flatten out an array, either recursively (by default), or up to `depth`.\n// Passing `true` or `false` as `depth` means `1` or `Infinity`, respectively.\nexport default function flatten(array, depth) {\n return _flatten(array, depth, false);\n}\n","import restArguments from './restArguments.js';\nimport flatten from './_flatten.js';\nimport filter from './filter.js';\nimport contains from './contains.js';\n\n// Take the difference between one array and a number of other arrays.\n// Only the elements present in just the first array will remain.\nexport default restArguments(function(array, rest) {\n rest = flatten(rest, true, true);\n return filter(array, function(value){\n return !contains(rest, value);\n });\n});\n","import restArguments from './restArguments.js';\nimport difference from './difference.js';\n\n// Return a version of the array that does not contain the specified value(s).\nexport default restArguments(function(array, otherArrays) {\n return difference(array, otherArrays);\n});\n","import isBoolean from './isBoolean.js';\nimport cb from './_cb.js';\nimport getLength from './_getLength.js';\nimport contains from './contains.js';\n\n// Produce a duplicate-free version of the array. If the array has already\n// been sorted, you have the option of using a faster algorithm.\n// The faster algorithm will not work with an iteratee if the iteratee\n// is not a one-to-one function, so providing an iteratee will disable\n// the faster algorithm.\nexport default function uniq(array, isSorted, iteratee, context) {\n if (!isBoolean(isSorted)) {\n context = iteratee;\n iteratee = isSorted;\n isSorted = false;\n }\n if (iteratee != null) iteratee = cb(iteratee, context);\n var result = [];\n var seen = [];\n for (var i = 0, length = getLength(array); i < length; i++) {\n var value = array[i],\n computed = iteratee ? iteratee(value, i, array) : value;\n if (isSorted && !iteratee) {\n if (!i || seen !== computed) result.push(value);\n seen = computed;\n } else if (iteratee) {\n if (!contains(seen, computed)) {\n seen.push(computed);\n result.push(value);\n }\n } else if (!contains(result, value)) {\n result.push(value);\n }\n }\n return result;\n}\n","import restArguments from './restArguments.js';\nimport uniq from './uniq.js';\nimport flatten from './_flatten.js';\n\n// Produce an array that contains the union: each distinct element from all of\n// the passed-in arrays.\nexport default restArguments(function(arrays) {\n return uniq(flatten(arrays, true, true));\n});\n","import getLength from './_getLength.js';\nimport contains from './contains.js';\n\n// Produce an array that contains every item shared between all the\n// passed-in arrays.\nexport default function intersection(array) {\n var result = [];\n var argsLength = arguments.length;\n for (var i = 0, length = getLength(array); i < length; i++) {\n var item = array[i];\n if (contains(result, item)) continue;\n var j;\n for (j = 1; j < argsLength; j++) {\n if (!contains(arguments[j], item)) break;\n }\n if (j === argsLength) result.push(item);\n }\n return result;\n}\n","import max from './max.js';\nimport getLength from './_getLength.js';\nimport pluck from './pluck.js';\n\n// Complement of zip. Unzip accepts an array of arrays and groups\n// each array's elements on shared indices.\nexport default function unzip(array) {\n var length = (array && max(array, getLength).length) || 0;\n var result = Array(length);\n\n for (var index = 0; index < length; index++) {\n result[index] = pluck(array, index);\n }\n return result;\n}\n","import restArguments from './restArguments.js';\nimport unzip from './unzip.js';\n\n// Zip together multiple lists into a single array -- elements that share\n// an index go together.\nexport default restArguments(unzip);\n","import getLength from './_getLength.js';\n\n// Converts lists into objects. Pass either a single array of `[key, value]`\n// pairs, or two parallel arrays of the same length -- one of keys, and one of\n// the corresponding values. Passing by pairs is the reverse of `_.pairs`.\nexport default function object(list, values) {\n var result = {};\n for (var i = 0, length = getLength(list); i < length; i++) {\n if (values) {\n result[list[i]] = values[i];\n } else {\n result[list[i][0]] = list[i][1];\n }\n }\n return result;\n}\n","// Generate an integer Array containing an arithmetic progression. A port of\n// the native Python `range()` function. See\n// [the Python documentation](https://docs.python.org/library/functions.html#range).\nexport default function range(start, stop, step) {\n if (stop == null) {\n stop = start || 0;\n start = 0;\n }\n if (!step) {\n step = stop < start ? -1 : 1;\n }\n\n var length = Math.max(Math.ceil((stop - start) / step), 0);\n var range = Array(length);\n\n for (var idx = 0; idx < length; idx++, start += step) {\n range[idx] = start;\n }\n\n return range;\n}\n","import { slice } from './_setup.js';\n\n// Chunk a single array into multiple arrays, each containing `count` or fewer\n// items.\nexport default function chunk(array, count) {\n if (count == null || count < 1) return [];\n var result = [];\n var i = 0, length = array.length;\n while (i < length) {\n result.push(slice.call(array, i, i += count));\n }\n return result;\n}\n","import _ from './underscore.js';\n\n// Helper function to continue chaining intermediate results.\nexport default function chainResult(instance, obj) {\n return instance._chain ? _(obj).chain() : obj;\n}\n","import _ from './underscore.js';\nimport each from './each.js';\nimport functions from './functions.js';\nimport { push } from './_setup.js';\nimport chainResult from './_chainResult.js';\n\n// Add your own custom functions to the Underscore object.\nexport default function mixin(obj) {\n each(functions(obj), function(name) {\n var func = _[name] = obj[name];\n _.prototype[name] = function() {\n var args = [this._wrapped];\n push.apply(args, arguments);\n return chainResult(this, func.apply(_, args));\n };\n });\n return _;\n}\n","import _ from './underscore.js';\nimport each from './each.js';\nimport { ArrayProto } from './_setup.js';\nimport chainResult from './_chainResult.js';\n\n// Add all mutator `Array` functions to the wrapper.\neach(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {\n var method = ArrayProto[name];\n _.prototype[name] = function() {\n var obj = this._wrapped;\n if (obj != null) {\n method.apply(obj, arguments);\n if ((name === 'shift' || name === 'splice') && obj.length === 0) {\n delete obj[0];\n }\n }\n return chainResult(this, obj);\n };\n});\n\n// Add all accessor `Array` functions to the wrapper.\neach(['concat', 'join', 'slice'], function(name) {\n var method = ArrayProto[name];\n _.prototype[name] = function() {\n var obj = this._wrapped;\n if (obj != null) obj = method.apply(obj, arguments);\n return chainResult(this, obj);\n };\n});\n\nexport default _;\n","// Default Export\n// ==============\n// In this module, we mix our bundled exports into the `_` object and export\n// the result. This is analogous to setting `module.exports = _` in CommonJS.\n// Hence, this module is also the entry point of our UMD bundle and the package\n// entry point for CommonJS and AMD users. In other words, this is (the source\n// of) the module you are interfacing with when you do any of the following:\n//\n// ```js\n// // CommonJS\n// var _ = require('underscore');\n//\n// // AMD\n// define(['underscore'], function(_) {...});\n//\n// // UMD in the browser\n// // _ is available as a global variable\n// ```\nimport * as allExports from './index.js';\nimport { mixin } from './index.js';\n\n// Add all of the Underscore functions to the wrapper object.\nvar _ = mixin(allExports);\n// Legacy Node.js API.\n_._ = _;\n// Export the Underscore API.\nexport default _;\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport _ from 'underscore'\nimport OC from './index.js'\n\n/**\n * Utility class for the history API,\n * includes fallback to using the URL hash when\n * the browser doesn't support the history API.\n *\n * @namespace OC.Util.History\n */\nexport default {\n\n\t_handlers: [],\n\n\t/**\n\t * Push the current URL parameters to the history stack\n\t * and change the visible URL.\n\t * Note: this includes a workaround for IE8/IE9 that uses\n\t * the hash part instead of the search part.\n\t *\n\t * @param {object | string} params to append to the URL, can be either a string\n\t * or a map\n\t * @param {string} [url] URL to be used, otherwise the current URL will be used,\n\t * using the params as query string\n\t * @param {boolean} [replace] whether to replace instead of pushing\n\t */\n\t_pushState(params, url, replace) {\n\t\tlet strParams\n\t\tif (typeof (params) === 'string') {\n\t\t\tstrParams = params\n\t\t} else {\n\t\t\tstrParams = OC.buildQueryString(params)\n\t\t}\n\n\t\tif (window.history.pushState) {\n\t\t\turl = url || location.pathname + '?' + strParams\n\t\t\t// Workaround for bug with SVG and window.history.pushState on Firefox < 51\n\t\t\t// https://bugzilla.mozilla.org/show_bug.cgi?id=652991\n\t\t\tconst isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1\n\t\t\tif (isFirefox && parseInt(navigator.userAgent.split('/').pop()) < 51) {\n\t\t\t\tconst patterns = document.querySelectorAll('[fill^=\"url(#\"], [stroke^=\"url(#\"], [filter^=\"url(#invert\"]')\n\t\t\t\tfor (let i = 0, ii = patterns.length, pattern; i < ii; i++) {\n\t\t\t\t\tpattern = patterns[i]\n\t\t\t\t\t// eslint-disable-next-line no-self-assign\n\t\t\t\t\tpattern.style.fill = pattern.style.fill\n\t\t\t\t\t// eslint-disable-next-line no-self-assign\n\t\t\t\t\tpattern.style.stroke = pattern.style.stroke\n\t\t\t\t\tpattern.removeAttribute('filter')\n\t\t\t\t\tpattern.setAttribute('filter', 'url(#invert)')\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (replace) {\n\t\t\t\twindow.history.replaceState(params, '', url)\n\t\t\t} else {\n\t\t\t\twindow.history.pushState(params, '', url)\n\t\t\t}\n\t\t} else {\n\t\t\t// use URL hash for IE8\n\t\t\twindow.location.hash = '?' + strParams\n\t\t\t// inhibit next onhashchange that just added itself\n\t\t\t// to the event queue\n\t\t\tthis._cancelPop = true\n\t\t}\n\t},\n\n\t/**\n\t * Push the current URL parameters to the history stack\n\t * and change the visible URL.\n\t * Note: this includes a workaround for IE8/IE9 that uses\n\t * the hash part instead of the search part.\n\t *\n\t * @param {object | string} params to append to the URL, can be either a string or a map\n\t * @param {string} [url] URL to be used, otherwise the current URL will be used, using the params as query string\n\t */\n\tpushState(params, url) {\n\t\tthis._pushState(params, url, false)\n\t},\n\n\t/**\n\t * Push the current URL parameters to the history stack\n\t * and change the visible URL.\n\t * Note: this includes a workaround for IE8/IE9 that uses\n\t * the hash part instead of the search part.\n\t *\n\t * @param {object | string} params to append to the URL, can be either a string\n\t * or a map\n\t * @param {string} [url] URL to be used, otherwise the current URL will be used,\n\t * using the params as query string\n\t */\n\treplaceState(params, url) {\n\t\tthis._pushState(params, url, true)\n\t},\n\n\t/**\n\t * Add a popstate handler\n\t *\n\t * @param {Function} handler handler\n\t */\n\taddOnPopStateHandler(handler) {\n\t\tthis._handlers.push(handler)\n\t},\n\n\t/**\n\t * Parse a query string from the hash part of the URL.\n\t * (workaround for IE8 / IE9)\n\t *\n\t * @return {string}\n\t */\n\t_parseHashQuery() {\n\t\tconst hash = window.location.hash\n\t\tconst pos = hash.indexOf('?')\n\t\tif (pos >= 0) {\n\t\t\treturn hash.substr(pos + 1)\n\t\t}\n\t\tif (hash.length) {\n\t\t\t// remove hash sign\n\t\t\treturn hash.substr(1)\n\t\t}\n\t\treturn ''\n\t},\n\n\t_decodeQuery(query) {\n\t\treturn query.replace(/\\+/g, ' ')\n\t},\n\n\t/**\n\t * Parse the query/search part of the URL.\n\t * Also try and parse it from the URL hash (for IE8)\n\t *\n\t * @return {object} map of parameters\n\t */\n\tparseUrlQuery() {\n\t\tconst query = this._parseHashQuery()\n\t\tlet params\n\t\t// try and parse from URL hash first\n\t\tif (query) {\n\t\t\tparams = OC.parseQueryString(this._decodeQuery(query))\n\t\t}\n\t\t// else read from query attributes\n\t\tparams = _.extend(params || {}, OC.parseQueryString(this._decodeQuery(location.search)))\n\t\treturn params || {}\n\t},\n\n\t_onPopState(e) {\n\t\tif (this._cancelPop) {\n\t\t\tthis._cancelPop = false\n\t\t\treturn\n\t\t}\n\t\tlet params\n\t\tif (!this._handlers.length) {\n\t\t\treturn\n\t\t}\n\t\tparams = (e && e.state)\n\t\tif (_.isString(params)) {\n\t\t\tparams = OC.parseQueryString(params)\n\t\t} else if (!params) {\n\t\t\tparams = this.parseUrlQuery() || {}\n\t\t}\n\t\tfor (let i = 0; i < this._handlers.length; i++) {\n\t\t\tthis._handlers[i](params)\n\t\t}\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { formatFileSize as humanFileSize } from '@nextcloud/files'\nimport moment from 'moment'\nimport logger from '../logger.js'\nimport OC from './index.js'\nimport History from './util-history.js'\n\n/**\n * @param {any} t -\n */\nfunction chunkify(t) {\n\t// Adapted from http://my.opera.com/GreyWyvern/blog/show.dml/1671288\n\tconst tz = []\n\tlet x = 0\n\tlet y = -1\n\tlet n = 0\n\tlet c\n\n\twhile (x < t.length) {\n\t\tc = t.charAt(x)\n\t\t// only include the dot in strings\n\t\tconst m = ((!n && c === '.') || (c >= '0' && c <= '9'))\n\t\tif (m !== n) {\n\t\t\t// next chunk\n\t\t\ty++\n\t\t\ttz[y] = ''\n\t\t\tn = m\n\t\t}\n\t\ttz[y] += c\n\t\tx++\n\t}\n\treturn tz\n}\n\n/**\n * Utility functions\n *\n * @namespace OC.Util\n */\nexport default {\n\n\tHistory,\n\n\t/**\n\t * @deprecated use https://nextcloud.github.io/nextcloud-files/functions/formatFileSize.html\n\t */\n\thumanFileSize,\n\n\t/**\n\t * Returns a file size in bytes from a humanly readable string\n\t * Makes 2kB to 2048.\n\t * Inspired by computerFileSize in helper.php\n\t *\n\t * @param {string} string file size in human-readable format\n\t * @return {number} or null if string could not be parsed\n\t */\n\tcomputerFileSize(string) {\n\t\tif (typeof string !== 'string') {\n\t\t\treturn null\n\t\t}\n\n\t\tconst s = string.toLowerCase().trim()\n\t\tconst bytesArray = {\n\t\t\tb: 1,\n\t\t\tk: 1024,\n\t\t\tkb: 1024,\n\t\t\tmb: 1024 * 1024,\n\t\t\tm: 1024 * 1024,\n\t\t\tgb: 1024 * 1024 * 1024,\n\t\t\tg: 1024 * 1024 * 1024,\n\t\t\ttb: 1024 * 1024 * 1024 * 1024,\n\t\t\tt: 1024 * 1024 * 1024 * 1024,\n\t\t\tpb: 1024 * 1024 * 1024 * 1024 * 1024,\n\t\t\tp: 1024 * 1024 * 1024 * 1024 * 1024,\n\t\t}\n\n\t\tlet bytes\n\t\tconst matches = s.match(/^[\\s+]?([0-9]*)(\\.([0-9]+))?( +)?([kmgtp]?b?)$/i)\n\t\tif (matches !== null) {\n\t\t\tbytes = parseFloat(s)\n\t\t\tif (!isFinite(bytes)) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t} else {\n\t\t\treturn null\n\t\t}\n\t\tif (matches[5]) {\n\t\t\tbytes = bytes * bytesArray[matches[5]]\n\t\t}\n\n\t\tbytes = Math.round(bytes)\n\t\treturn bytes\n\t},\n\n\t/**\n\t * @param {string|number} timestamp timestamp\n\t * @param {string} format date format, see momentjs docs\n\t * @return {string} timestamp formatted as requested\n\t */\n\tformatDate(timestamp, format) {\n\t\tif (window.TESTING === undefined && OC.debug) {\n\t\t\tlogger.warn('OC.Util.formatDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment')\n\t\t}\n\t\tformat = format || 'LLL'\n\t\treturn moment(timestamp).format(format)\n\t},\n\n\t/**\n\t * @param {string|number} timestamp timestamp\n\t * @return {string} human readable difference from now\n\t */\n\trelativeModifiedDate(timestamp) {\n\t\tif (window.TESTING === undefined && OC.debug) {\n\t\t\tlogger.warn('OC.Util.relativeModifiedDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment')\n\t\t}\n\t\tconst diff = moment().diff(moment(timestamp))\n\t\tif (diff >= 0 && diff < 45000) {\n\t\t\treturn t('core', 'seconds ago')\n\t\t}\n\t\treturn moment(timestamp).fromNow()\n\t},\n\n\t/**\n\t * Returns the width of a generic browser scrollbar\n\t *\n\t * @return {number} width of scrollbar\n\t */\n\tgetScrollBarWidth() {\n\t\tif (this._scrollBarWidth) {\n\t\t\treturn this._scrollBarWidth\n\t\t}\n\n\t\tconst inner = document.createElement('p')\n\t\tinner.style.width = '100%'\n\t\tinner.style.height = '200px'\n\n\t\tconst outer = document.createElement('div')\n\t\touter.style.position = 'absolute'\n\t\touter.style.top = '0px'\n\t\touter.style.left = '0px'\n\t\touter.style.visibility = 'hidden'\n\t\touter.style.width = '200px'\n\t\touter.style.height = '150px'\n\t\touter.style.overflow = 'hidden'\n\t\touter.appendChild(inner)\n\n\t\tdocument.body.appendChild(outer)\n\t\tconst w1 = inner.offsetWidth\n\t\touter.style.overflow = 'scroll'\n\t\tlet w2 = inner.offsetWidth\n\t\tif (w1 === w2) {\n\t\t\tw2 = outer.clientWidth\n\t\t}\n\n\t\tdocument.body.removeChild(outer)\n\n\t\tthis._scrollBarWidth = (w1 - w2)\n\n\t\treturn this._scrollBarWidth\n\t},\n\n\t/**\n\t * Remove the time component from a given date\n\t *\n\t * @param {Date} date date\n\t * @return {Date} date with stripped time\n\t */\n\tstripTime(date) {\n\t\t// FIXME: likely to break when crossing DST\n\t\t// would be better to use a library like momentJS\n\t\treturn new Date(date.getFullYear(), date.getMonth(), date.getDate())\n\t},\n\n\t/**\n\t * Compare two strings to provide a natural sort\n\t *\n\t * @param {string} a first string to compare\n\t * @param {string} b second string to compare\n\t * @return {number} -1 if b comes before a, 1 if a comes before b\n\t * or 0 if the strings are identical\n\t */\n\tnaturalSortCompare(a, b) {\n\t\tlet x\n\t\tconst aa = chunkify(a)\n\t\tconst bb = chunkify(b)\n\n\t\tfor (x = 0; aa[x] && bb[x]; x++) {\n\t\t\tif (aa[x] !== bb[x]) {\n\t\t\t\tconst aNum = Number(aa[x])\n\t\t\t\tconst bNum = Number(bb[x])\n\t\t\t\t// note: == is correct here to include null == undefined\n\t\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\t\tif (aNum == aa[x] && bNum == bb[x]) {\n\t\t\t\t\treturn aNum - bNum\n\t\t\t\t} else {\n\t\t\t\t\t// Note: This locale setting isn't supported by all browsers but for the ones\n\t\t\t\t\t// that do there will be more consistency between client-server sorting\n\t\t\t\t\treturn aa[x].localeCompare(bb[x], OC.getLanguage())\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn aa.length - bb.length\n\t},\n\n\t/**\n\t * Calls the callback in a given interval until it returns true\n\t *\n\t * @param {Function} callback function to call on success\n\t * @param {number} interval in milliseconds\n\t */\n\twaitFor(callback, interval) {\n\t\tconst internalCallback = function() {\n\t\t\tif (callback() !== true) {\n\t\t\t\tsetTimeout(internalCallback, interval)\n\t\t\t}\n\t\t}\n\n\t\tinternalCallback()\n\t},\n\n\t/**\n\t * Checks if a cookie with the given name is present and is set to the provided value.\n\t *\n\t * @param {string} name name of the cookie\n\t * @param {string} value value of the cookie\n\t * @return {boolean} true if the cookie with the given name has the given value\n\t */\n\tisCookieSetToValue(name, value) {\n\t\tconst cookies = document.cookie.split(';')\n\t\tfor (let i = 0; i < cookies.length; i++) {\n\t\t\tconst cookie = cookies[i].split('=')\n\t\t\tif (cookie[0].trim() === name && cookie[1].trim() === value) {\n\t\t\t\treturn true\n\t\t\t}\n\t\t}\n\t\treturn false\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nlet webroot = window._oc_webroot\n\nif (typeof webroot === 'undefined') {\n\twebroot = location.pathname\n\tconst pos = webroot.indexOf('/index.php/')\n\tif (pos !== -1) {\n\t\twebroot = webroot.substr(0, pos)\n\t} else {\n\t\twebroot = webroot.substr(0, webroot.lastIndexOf('/'))\n\t}\n}\n\nexport default webroot\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { subscribe } from '@nextcloud/event-bus'\nimport {\n\tgetCanonicalLocale,\n\tgetLanguage,\n\tgetLocale,\n} from '@nextcloud/l10n'\nimport {\n\tbasename,\n\tdirname,\n\tencodePath,\n\tisSamePath,\n\tjoin,\n} from '@nextcloud/paths'\nimport {\n\tgenerateFilePath,\n\tgenerateOcsUrl,\n\tgenerateRemoteUrl,\n\tgenerateUrl,\n\tgetRootUrl,\n\timagePath,\n\tlinkTo,\n} from '@nextcloud/router'\nimport logger from '../logger.js'\nimport { isUserAdmin } from './admin.js'\nimport { appConfig } from './appconfig.js'\nimport appswebroots from './appswebroots.js'\nimport { getCapabilities } from './capabilities.js'\nimport Config from './config.js'\nimport {\n\tcoreApps,\n\tmenuSpeed,\n\tPERMISSION_ALL,\n\tPERMISSION_CREATE,\n\tPERMISSION_DELETE,\n\tPERMISSION_NONE,\n\tPERMISSION_READ,\n\tPERMISSION_SHARE,\n\tPERMISSION_UPDATE,\n\tTAG_FAVORITE,\n} from './constants.js'\nimport { currentUser, getCurrentUser } from './currentuser.js'\nimport { debug } from './debug.js'\nimport Dialogs from './dialogs.js'\nimport EventSource from './eventsource.js'\nimport L10N from './l10n.js'\nimport * as MimeType from './mimeType.js'\nimport msg from './msg.js'\nimport PasswordConfirmation from './password-confirmation.js'\nimport Plugins from './plugins.js'\nimport {\n\tbuild as buildQueryString,\n\tparse as parseQueryString,\n} from './query-string.ts'\nimport { getRequestToken } from './requesttoken.ts'\nimport {\n\tlinkToRemoteBase,\n} from './routing.js'\nimport { theme } from './theme.js'\nimport Util from './util.js'\nimport webroot from './webroot.js'\n\n/** @namespace OC */\nexport default {\n\t/*\n\t * Constants\n\t */\n\tcoreApps,\n\tmenuSpeed,\n\tPERMISSION_ALL,\n\tPERMISSION_CREATE,\n\tPERMISSION_DELETE,\n\tPERMISSION_NONE,\n\tPERMISSION_READ,\n\tPERMISSION_SHARE,\n\tPERMISSION_UPDATE,\n\tTAG_FAVORITE,\n\n\t/*\n\t * Deprecated helpers to be removed\n\t */\n\tappConfig,\n\tappswebroots,\n\tconfig: Config,\n\t/**\n\t * Currently logged in user or null if none\n\t *\n\t * @type {string}\n\t * @deprecated use `getCurrentUser` from https://www.npmjs.com/package/@nextcloud/auth\n\t */\n\tcurrentUser,\n\tdialogs: Dialogs,\n\tEventSource,\n\tMimeType,\n\t/**\n\t * Returns the currently logged in user or null if there is no logged in\n\t * user (public page mode)\n\t *\n\t * @since 9.0.0\n\t * @deprecated 19.0.0 use `getCurrentUser` from https://www.npmjs.com/package/@nextcloud/auth\n\t */\n\tgetCurrentUser,\n\tisUserAdmin,\n\tL10N,\n\n\t/**\n\t * This is already handled by `interceptRequests` in `core/src/init.js`.\n\t *\n\t * @deprecated 33.0.0 - unused by Nextcloud and only a stub remains. Just remove usage.\n\t */\n\tregisterXHRForErrorProcessing: () => {},\n\n\t/**\n\t * Capabilities\n\t *\n\t * @type {Array}\n\t * @deprecated 20.0.0 use @nextcloud/capabilities instead\n\t */\n\tgetCapabilities,\n\n\t/*\n\t * Path helpers\n\t */\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tbasename,\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tencodePath,\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tdirname,\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tisSamePath,\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tjoinPaths: join,\n\n\t/**\n\t * @deprecated 20.0.0 use `getCanonicalLocale` from https://www.npmjs.com/package/@nextcloud/l10n\n\t */\n\tgetCanonicalLocale,\n\t/**\n\t * @deprecated 26.0.0 use `getLocale` from https://www.npmjs.com/package/@nextcloud/l10n\n\t */\n\tgetLocale,\n\t/**\n\t * @deprecated 26.0.0 use `getLanguage` from https://www.npmjs.com/package/@nextcloud/l10n\n\t */\n\tgetLanguage,\n\n\t// Query string helpers\n\tbuildQueryString,\n\tparseQueryString,\n\n\tmsg,\n\t/**\n\t * @deprecated 28.0.0 use methods from '@nextcloud/password-confirmation'\n\t */\n\tPasswordConfirmation,\n\tPlugins,\n\ttheme,\n\tUtil,\n\tdebug,\n\t/**\n\t * @deprecated 19.0.0 use `generateFilePath` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tfilePath: generateFilePath,\n\t/**\n\t * @deprecated 19.0.0 use `WgenerateUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tgenerateUrl,\n\t/**\n\t * @deprecated 19.0.0 use `getRootUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tgetRootPath: getRootUrl,\n\t/**\n\t * @deprecated 19.0.0 use `imagePath` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\timagePath,\n\trequestToken: getRequestToken(),\n\t/**\n\t * @deprecated 19.0.0 use `linkTo` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tlinkTo,\n\t/**\n\t * @param {string} service service name\n\t * @param {number} version OCS API version\n\t * @return {string} OCS API base path\n\t * @deprecated 19.0.0 use `generateOcsUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tlinkToOCS: (service, version) => {\n\t\treturn generateOcsUrl(service, {}, {\n\t\t\tocsVersion: version || 1,\n\t\t}) + '/'\n\t},\n\t/**\n\t * @deprecated 19.0.0 use `generateRemoteUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tlinkToRemote: generateRemoteUrl,\n\tlinkToRemoteBase,\n\t/**\n\t * Relative path to Nextcloud root.\n\t * For example: \"/nextcloud\"\n\t *\n\t * @type {string}\n\t *\n\t * @deprecated 19.0.0 use `getRootUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t * @see OC#getRootPath\n\t */\n\twebroot,\n}\n\n// Keep the request token prop in sync\nsubscribe('csrf-token-update', (e) => {\n\tOC.requestToken = e.token\n\n\t// Logging might help debug (Sentry) issues\n\tlogger.info('OC.requestToken changed', { token: e.token })\n})\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport const coreApps = ['', 'admin', 'log', 'core/search', 'core', '3rdparty']\nexport const menuSpeed = 50\nexport const PERMISSION_NONE = 0\nexport const PERMISSION_CREATE = 4\nexport const PERMISSION_READ = 1\nexport const PERMISSION_UPDATE = 2\nexport const PERMISSION_DELETE = 8\nexport const PERMISSION_SHARE = 16\nexport const PERMISSION_ALL = 31\nexport const TAG_FAVORITE = '_$!!$_'\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCapabilities as realGetCapabilities } from '@nextcloud/capabilities'\nimport logger from '../logger.js'\n\n/**\n * Returns the capabilities\n *\n * @return {Array} capabilities\n *\n * @since 14.0.0\n */\nexport function getCapabilities() {\n\tif (OC.debug) {\n\t\tlogger.warn('OC.getCapabilities is deprecated and will be removed in Nextcloud 21. See @nextcloud/capabilities')\n\t}\n\treturn realGetCapabilities()\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * Parses a URL query string into a JS map\n *\n * @param queryString - Query string in the format param1=1234¶m2=abcde¶m3=xyz\n * @return Object containing key/values matching the URL parameters\n * @deprecated 33.0.0 - Use `URLSearchParams` instead\n */\nexport function parse(queryString) {\n const params = new URLSearchParams(queryString);\n return Object.fromEntries(params.entries());\n}\n/**\n * Builds a URL query from a JS map.\n *\n * @param params - Object containing key/values matching the URL parameters\n * @return String containing a URL query (without question) mark\n * @deprecated 33.0.0 - Use `URLSearchParams` instead\n */\nexport function build(params) {\n if (!params) {\n return '';\n }\n const search = new URLSearchParams(params);\n return search.toString();\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport {\n\tgetRootUrl as realGetRootUrl,\n} from '@nextcloud/router'\n\n/**\n * Creates a relative url for remote use\n *\n * @param {string} service id\n * @return {string} the url\n */\nexport function linkToRemoteBase(service) {\n\treturn realGetRootUrl() + '/remote.php/' + service\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport OC from '../OC/index.js'\nimport L10n from '../OC/l10n.js'\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tOC,\n\t\t}\n\t},\n\tmethods: {\n\t\tt: L10n.translate.bind(L10n),\n\t\tn: L10n.translatePlural.bind(L10n),\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport Vue from 'vue'\nimport LoginView from './views/Login.vue'\nimport Nextcloud from './mixins/Nextcloud.js'\n// eslint-disable-next-line no-unused-vars\nimport OC from './OC/index.js' // TODO: Not needed but L10n breaks if removed\n\nVue.mixin(Nextcloud)\n\nconst View = Vue.extend(LoginView)\nnew View().$mount('#login')\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, `.button-vue[data-v-bbf83d00]{margin-top:.5rem}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/LoginButton.vue\"],\"names\":[],\"mappings\":\"AACA,6BACC,gBAAA\",\"sourcesContent\":[\"\\n.button-vue {\\n\\tmargin-top: .5rem;\\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, `.login-form[data-v-fac76c6a]{text-align:start;font-size:1rem;margin:0}.login-form__fieldset[data-v-fac76c6a]{width:100%;display:flex;flex-direction:column;gap:.5rem}.login-form__headline[data-v-fac76c6a]{text-align:center;overflow-wrap:anywhere}.login-form[data-v-fac76c6a] input:invalid:not(:user-invalid){border-color:var(--color-border-maxcontrast) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/LoginForm.vue\"],\"names\":[],\"mappings\":\"AACA,6BACC,gBAAA,CACA,cAAA,CACA,QAAA,CAEA,uCACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,SAAA,CAGD,uCACC,iBAAA,CACA,sBAAA,CAID,8DACC,uDAAA\",\"sourcesContent\":[\"\\n.login-form {\\n\\ttext-align: start;\\n\\tfont-size: 1rem;\\n\\tmargin: 0;\\n\\n\\t&__fieldset {\\n\\t\\twidth: 100%;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: .5rem;\\n\\t}\\n\\n\\t&__headline {\\n\\t\\ttext-align: center;\\n\\t\\toverflow-wrap: anywhere;\\n\\t}\\n\\n\\t// Only show the error state if the user interacted with the login box\\n\\t:deep(input:invalid:not(:user-invalid)) {\\n\\t\\tborder-color: var(--color-border-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, `.password-less-login-form[data-v-25758ef3]{display:flex;flex-direction:column;gap:.5rem;margin:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/PasswordLessLoginForm.vue\"],\"names\":[],\"mappings\":\"AACA,2CACC,YAAA,CACA,qBAAA,CACA,SAAA,CACA,QAAA\",\"sourcesContent\":[\"\\n.password-less-login-form {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 0.5rem;\\n\\tmargin: 0;\\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, `.reset-password-form[data-v-759a0fdd]{display:flex;flex-direction:column;gap:.5rem;width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/ResetPassword.vue\"],\"names\":[],\"mappings\":\"AACA,sCACC,YAAA,CACA,qBAAA,CACA,SAAA,CACA,UAAA\",\"sourcesContent\":[\"\\n.reset-password-form {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: .5rem;\\n\\twidth: 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, `.login-box[data-v-518c0816]{width:320px;box-sizing:border-box}.login-box__wrapper[data-v-518c0816]{display:flex;flex-direction:column;gap:calc(2*var(--default-grid-baseline))}.login-box__alternative-logins[data-v-518c0816]{display:flex;flex-direction:column;gap:.75rem}.fade-enter-active[data-v-518c0816],.fade-leave-active[data-v-518c0816]{transition:opacity .3s}.fade-enter[data-v-518c0816],.fade-leave-to[data-v-518c0816]{opacity:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/Login.vue\"],\"names\":[],\"mappings\":\"AACA,4BAEC,WAAA,CACA,qBAAA,CAEA,qCACC,YAAA,CACA,qBAAA,CACA,wCAAA,CAGD,gDACC,YAAA,CACA,qBAAA,CACA,UAAA,CAIF,wEACC,sBAAA,CAGD,6DACC,SAAA\",\"sourcesContent\":[\"\\n.login-box {\\n\\t// Same size as dashboard panels\\n\\twidth: 320px;\\n\\tbox-sizing: border-box;\\n\\n\\t&__wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: calc(2 * var(--default-grid-baseline));\\n\\t}\\n\\n\\t&__alternative-logins {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: 0.75rem;\\n\\t}\\n}\\n\\n.fade-enter-active, .fade-leave-active {\\n\\ttransition: opacity .3s;\\n}\\n\\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\\n\\topacity: 0;\\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, `\nfieldset[data-v-2c0ecaf9] {\n\ttext-align: center;\n}\ninput[type=submit][data-v-2c0ecaf9] {\n\tmargin-top: 20px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/UpdatePassword.vue\"],\"names\":[],\"mappings\":\";AAmIA;CACA,kBAAA;AACA;AAEA;CACA,gBAAA;AACA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","const map = {\n\t\"./af\": 25177,\n\t\"./af.js\": 25177,\n\t\"./ar\": 61509,\n\t\"./ar-dz\": 41488,\n\t\"./ar-dz.js\": 41488,\n\t\"./ar-kw\": 58676,\n\t\"./ar-kw.js\": 58676,\n\t\"./ar-ly\": 42353,\n\t\"./ar-ly.js\": 42353,\n\t\"./ar-ma\": 24496,\n\t\"./ar-ma.js\": 24496,\n\t\"./ar-ps\": 6947,\n\t\"./ar-ps.js\": 6947,\n\t\"./ar-sa\": 82682,\n\t\"./ar-sa.js\": 82682,\n\t\"./ar-tn\": 89756,\n\t\"./ar-tn.js\": 89756,\n\t\"./ar.js\": 61509,\n\t\"./az\": 95533,\n\t\"./az.js\": 95533,\n\t\"./be\": 28959,\n\t\"./be.js\": 28959,\n\t\"./bg\": 47777,\n\t\"./bg.js\": 47777,\n\t\"./bm\": 54903,\n\t\"./bm.js\": 54903,\n\t\"./bn\": 61290,\n\t\"./bn-bd\": 17357,\n\t\"./bn-bd.js\": 17357,\n\t\"./bn.js\": 61290,\n\t\"./bo\": 31545,\n\t\"./bo.js\": 31545,\n\t\"./br\": 11470,\n\t\"./br.js\": 11470,\n\t\"./bs\": 44429,\n\t\"./bs.js\": 44429,\n\t\"./ca\": 7306,\n\t\"./ca.js\": 7306,\n\t\"./cs\": 56464,\n\t\"./cs.js\": 56464,\n\t\"./cv\": 73635,\n\t\"./cv.js\": 73635,\n\t\"./cy\": 64226,\n\t\"./cy.js\": 64226,\n\t\"./da\": 93601,\n\t\"./da.js\": 93601,\n\t\"./de\": 77853,\n\t\"./de-at\": 26111,\n\t\"./de-at.js\": 26111,\n\t\"./de-ch\": 54697,\n\t\"./de-ch.js\": 54697,\n\t\"./de.js\": 77853,\n\t\"./dv\": 60708,\n\t\"./dv.js\": 60708,\n\t\"./el\": 54691,\n\t\"./el.js\": 54691,\n\t\"./en-au\": 53872,\n\t\"./en-au.js\": 53872,\n\t\"./en-ca\": 28298,\n\t\"./en-ca.js\": 28298,\n\t\"./en-gb\": 56195,\n\t\"./en-gb.js\": 56195,\n\t\"./en-ie\": 66584,\n\t\"./en-ie.js\": 66584,\n\t\"./en-il\": 65543,\n\t\"./en-il.js\": 65543,\n\t\"./en-in\": 9033,\n\t\"./en-in.js\": 9033,\n\t\"./en-nz\": 79402,\n\t\"./en-nz.js\": 79402,\n\t\"./en-sg\": 43004,\n\t\"./en-sg.js\": 43004,\n\t\"./eo\": 32934,\n\t\"./eo.js\": 32934,\n\t\"./es\": 97650,\n\t\"./es-do\": 20838,\n\t\"./es-do.js\": 20838,\n\t\"./es-mx\": 17730,\n\t\"./es-mx.js\": 17730,\n\t\"./es-us\": 56575,\n\t\"./es-us.js\": 56575,\n\t\"./es.js\": 97650,\n\t\"./et\": 3035,\n\t\"./et.js\": 3035,\n\t\"./eu\": 3508,\n\t\"./eu.js\": 3508,\n\t\"./fa\": 119,\n\t\"./fa.js\": 119,\n\t\"./fi\": 90527,\n\t\"./fi.js\": 90527,\n\t\"./fil\": 95995,\n\t\"./fil.js\": 95995,\n\t\"./fo\": 52477,\n\t\"./fo.js\": 52477,\n\t\"./fr\": 85498,\n\t\"./fr-ca\": 26435,\n\t\"./fr-ca.js\": 26435,\n\t\"./fr-ch\": 37892,\n\t\"./fr-ch.js\": 37892,\n\t\"./fr.js\": 85498,\n\t\"./fy\": 37071,\n\t\"./fy.js\": 37071,\n\t\"./ga\": 41734,\n\t\"./ga.js\": 41734,\n\t\"./gd\": 70217,\n\t\"./gd.js\": 70217,\n\t\"./gl\": 77329,\n\t\"./gl.js\": 77329,\n\t\"./gom-deva\": 32124,\n\t\"./gom-deva.js\": 32124,\n\t\"./gom-latn\": 93383,\n\t\"./gom-latn.js\": 93383,\n\t\"./gu\": 95050,\n\t\"./gu.js\": 95050,\n\t\"./he\": 11713,\n\t\"./he.js\": 11713,\n\t\"./hi\": 43861,\n\t\"./hi.js\": 43861,\n\t\"./hr\": 26308,\n\t\"./hr.js\": 26308,\n\t\"./hu\": 90609,\n\t\"./hu.js\": 90609,\n\t\"./hy-am\": 17160,\n\t\"./hy-am.js\": 17160,\n\t\"./id\": 74063,\n\t\"./id.js\": 74063,\n\t\"./is\": 89374,\n\t\"./is.js\": 89374,\n\t\"./it\": 88383,\n\t\"./it-ch\": 21827,\n\t\"./it-ch.js\": 21827,\n\t\"./it.js\": 88383,\n\t\"./ja\": 23827,\n\t\"./ja.js\": 23827,\n\t\"./jv\": 89722,\n\t\"./jv.js\": 89722,\n\t\"./ka\": 41794,\n\t\"./ka.js\": 41794,\n\t\"./kk\": 27088,\n\t\"./kk.js\": 27088,\n\t\"./km\": 96870,\n\t\"./km.js\": 96870,\n\t\"./kn\": 84451,\n\t\"./kn.js\": 84451,\n\t\"./ko\": 63164,\n\t\"./ko.js\": 63164,\n\t\"./ku\": 98174,\n\t\"./ku-kmr\": 6181,\n\t\"./ku-kmr.js\": 6181,\n\t\"./ku.js\": 98174,\n\t\"./ky\": 78474,\n\t\"./ky.js\": 78474,\n\t\"./lb\": 79680,\n\t\"./lb.js\": 79680,\n\t\"./lo\": 15867,\n\t\"./lo.js\": 15867,\n\t\"./lt\": 45766,\n\t\"./lt.js\": 45766,\n\t\"./lv\": 69532,\n\t\"./lv.js\": 69532,\n\t\"./me\": 58076,\n\t\"./me.js\": 58076,\n\t\"./mi\": 41848,\n\t\"./mi.js\": 41848,\n\t\"./mk\": 30306,\n\t\"./mk.js\": 30306,\n\t\"./ml\": 73739,\n\t\"./ml.js\": 73739,\n\t\"./mn\": 99053,\n\t\"./mn.js\": 99053,\n\t\"./mr\": 86169,\n\t\"./mr.js\": 86169,\n\t\"./ms\": 73386,\n\t\"./ms-my\": 92297,\n\t\"./ms-my.js\": 92297,\n\t\"./ms.js\": 73386,\n\t\"./mt\": 77075,\n\t\"./mt.js\": 77075,\n\t\"./my\": 72264,\n\t\"./my.js\": 72264,\n\t\"./nb\": 22274,\n\t\"./nb.js\": 22274,\n\t\"./ne\": 8235,\n\t\"./ne.js\": 8235,\n\t\"./nl\": 92572,\n\t\"./nl-be\": 43784,\n\t\"./nl-be.js\": 43784,\n\t\"./nl.js\": 92572,\n\t\"./nn\": 54566,\n\t\"./nn.js\": 54566,\n\t\"./oc-lnc\": 69330,\n\t\"./oc-lnc.js\": 69330,\n\t\"./pa-in\": 29849,\n\t\"./pa-in.js\": 29849,\n\t\"./pl\": 94418,\n\t\"./pl.js\": 94418,\n\t\"./pt\": 79834,\n\t\"./pt-br\": 48303,\n\t\"./pt-br.js\": 48303,\n\t\"./pt.js\": 79834,\n\t\"./ro\": 24457,\n\t\"./ro.js\": 24457,\n\t\"./ru\": 82271,\n\t\"./ru.js\": 82271,\n\t\"./sd\": 1221,\n\t\"./sd.js\": 1221,\n\t\"./se\": 33478,\n\t\"./se.js\": 33478,\n\t\"./si\": 17538,\n\t\"./si.js\": 17538,\n\t\"./sk\": 5784,\n\t\"./sk.js\": 5784,\n\t\"./sl\": 46637,\n\t\"./sl.js\": 46637,\n\t\"./sq\": 86794,\n\t\"./sq.js\": 86794,\n\t\"./sr\": 45719,\n\t\"./sr-cyrl\": 3322,\n\t\"./sr-cyrl.js\": 3322,\n\t\"./sr.js\": 45719,\n\t\"./ss\": 56000,\n\t\"./ss.js\": 56000,\n\t\"./sv\": 41011,\n\t\"./sv.js\": 41011,\n\t\"./sw\": 40748,\n\t\"./sw.js\": 40748,\n\t\"./ta\": 11025,\n\t\"./ta.js\": 11025,\n\t\"./te\": 11885,\n\t\"./te.js\": 11885,\n\t\"./tet\": 28861,\n\t\"./tet.js\": 28861,\n\t\"./tg\": 86571,\n\t\"./tg.js\": 86571,\n\t\"./th\": 55802,\n\t\"./th.js\": 55802,\n\t\"./tk\": 59527,\n\t\"./tk.js\": 59527,\n\t\"./tl-ph\": 29231,\n\t\"./tl-ph.js\": 29231,\n\t\"./tlh\": 31052,\n\t\"./tlh.js\": 31052,\n\t\"./tr\": 85096,\n\t\"./tr.js\": 85096,\n\t\"./tzl\": 79846,\n\t\"./tzl.js\": 79846,\n\t\"./tzm\": 81765,\n\t\"./tzm-latn\": 97711,\n\t\"./tzm-latn.js\": 97711,\n\t\"./tzm.js\": 81765,\n\t\"./ug-cn\": 48414,\n\t\"./ug-cn.js\": 48414,\n\t\"./uk\": 16618,\n\t\"./uk.js\": 16618,\n\t\"./ur\": 57777,\n\t\"./ur.js\": 57777,\n\t\"./uz\": 57609,\n\t\"./uz-latn\": 72475,\n\t\"./uz-latn.js\": 72475,\n\t\"./uz.js\": 57609,\n\t\"./vi\": 21135,\n\t\"./vi.js\": 21135,\n\t\"./x-pseudo\": 64051,\n\t\"./x-pseudo.js\": 64051,\n\t\"./yo\": 82218,\n\t\"./yo.js\": 82218,\n\t\"./zh-cn\": 52648,\n\t\"./zh-cn.js\": 52648,\n\t\"./zh-hk\": 1632,\n\t\"./zh-hk.js\": 1632,\n\t\"./zh-mo\": 31541,\n\t\"./zh-mo.js\": 31541,\n\t\"./zh-tw\": 50304,\n\t\"./zh-tw.js\": 50304\n};\n\n\nfunction webpackContext(req) {\n\tconst id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tconst e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 35358;","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst 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\tconst 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","const 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\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet 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\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst 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/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\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=\" + {\"4005\":\"aee79e7f1049b5e8188f\",\"4017\":\"d1523b8db423fbe47986\",\"5236\":\"295a99f2ba6e3a05a834\",\"7859\":\"0aa7564896cee7ea552c\",\"8259\":\"e914ef6a65a38374620a\",\"8374\":\"e925f5901b71aeaa37db\",\"8689\":\"5fcce4026be999b251c3\",\"9553\":\"3fb3c692ca186ac77c3c\"}[chunkId] + \"\";\n};","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","const inProgress = {};\nconst dataWebpackPrefix = \"nextcloud-ui-legacy:\";\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\tlet script, needAttach;\n\tif(key !== undefined) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tconst 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\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\tconst onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tconst doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode?.removeChild(script);\n\t\tdoneFns?.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tconst 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};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(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 = 1418;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","let scriptUrl;\nif (globalThis.importScripts) scriptUrl = globalThis.location + \"\";\nconst document = globalThis.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript?.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tlet 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(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = (typeof document !== 'undefined' && 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\nconst installedChunks = {\n\t1418: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tlet 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\tconst 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\tconst 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\tconst error = new Error();\n\t\t\t\t\tconst 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\tconst errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tconst 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\terror.event = event;\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\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\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\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\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\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(33354)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["login_LoginButtonvue_type_script_lang_js","name","components","ArrowRight","A","NcButton","props","value","type","String","default","t","valueLoading","loading","Boolean","required","invertedColors","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","LoginButtonvue_type_style_index_0_id_bbf83d00_prod_lang_scss_scoped_true","locals","LoginButton","componentNormalizer","_vm","this","_c","_self","attrs","variant","wide","disabled","on","click","$event","$emit","scopedSlots","_u","key","fn","staticClass","proxy","_v","_s","auth","computed","userNameInputLengthIs255","user","length","userInputHelperText","login_LoginFormvue_type_script_lang_js","NcCheckboxRadioSwitch","NcPasswordField","NcTextField","NcNoteCard","mixins","AuthMixin","username","redirectUrl","errors","Array","messages","throttleDelay","Number","autoCompleteAllowed","remembermeAllowed","directLogin","emailStates","setup","l10n_dist","Tl","headlineText","productName","OC","theme","undefined","sanitize","escape","loginTimeout","loadState","requestToken","window","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","timezoneOffset","Date","getTimezoneOffset","data","password","rememberme","visible","resetFormTimeout","debounce","handleResetForm","isError","invalidPassword","userDisabled","errorLabel","apacheAuthFailed","indexOf","csrfCheckFailed","internalException","loadingIcon","imagePath","loginActionUrl","generateUrl","emailEnabled","every","state","loginText","watch","mounted","$refs","inputField","input","focus","methods","updateUsername","submit","event","preventDefault","LoginFormvue_type_style_index_0_id_fac76c6a_prod_lang_scss_scoped_true_options","LoginFormvue_type_style_index_0_id_fac76c6a_prod_lang_scss_scoped_true","LoginForm","ref","method","action","title","_e","heading","_l","message","index","class","id","alt","src","staticStyle","clear","shake","label","maxlength","autocapitalize","spellchecking","autocomplete","error","change","model","callback","$$v","expression","domProps","WebAuthnError","Error","constructor","code","cause","super","Object","defineProperty","enumerable","configurable","writable","WebAuthnAbortService","createNewAbortSignal","controller","abortError","abort","newController","AbortController","signal","cancelCeremony","bufferToBase64URLString_bufferToBase64URLString","buffer","bytes","Uint8Array","str","charCode","fromCharCode","btoa","replace","base64URLStringToBuffer_base64URLStringToBuffer","base64URLString","base64","padLength","padded","padEnd","binary","atob","ArrayBuffer","i","charCodeAt","browserSupportsWebAuthn_browserSupportsWebAuthn","_browserSupportsWebAuthnInternals","stubThis","globalThis","PublicKeyCredential","_browserSupportsWebAuthnAutofillInternals","toPublicKeyCredentialDescriptor_toPublicKeyCredentialDescriptor","descriptor","transports","attachments","toAuthenticatorAttachment_toAuthenticatorAttachment","attachment","vue_material_design_icons_LockOpenvue_type_script_lang_js","emits","fillColor","size","LockOpen","_b","role","$attrs","fill","width","height","viewBox","d","logger","getCurrentUser","getLoggerBuilder","setApp","build","setUid","uid","detectUser","NoValidCredentials","login_PasswordLessLoginFormvue_type_script_lang_js","defineComponent","InformationIcon","InformationOutline","LockOpenIcon","NcEmptyContent","isHttps","isLocalhost","supportsWebauthn","browserSupportsWebAuthn","validCredentials","authenticate","loginForm","checkValidity","debug","params","async","loginName","url","Axios","post","allowCredentials","optionsJSON","challenge","console","warn","useBrowserAutofill","verifyBrowserAutofillInput","map","publicKey","getOptions","Promise","resolve","globalPublicKeyCredential","isConditionalMediationAvailable","browserSupportsWebAuthnAutofill","document","querySelectorAll","mediation","credential","navigator","credentials","get","err","AbortSignal","effectiveDomain","location","hostname","test","rpId","identifyAuthenticationError","rawId","response","userHandle","authenticatorData","clientDataJSON","signature","clientExtensionResults","getClientExtensionResults","authenticatorAttachment","startWebauthnAuthentication","startAuthentication","completeAuthentication","changeUsername","authData","JSON","stringify","finishAuthentication","then","defaultRedirectUrl","charAt","href","getBaseUrl","catch","PasswordLessLoginFormvue_type_style_index_0_id_25758ef3_prod_lang_scss_scoped_true_options","PasswordLessLoginFormvue_type_style_index_0_id_25758ef3_prod_lang_scss_scoped_true","PasswordLessLoginForm_component","_setupProxy","apply","arguments","placeholder","description","PasswordLessLoginForm","login_ResetPasswordvue_type_script_lang_ts","resetPasswordLink","axios","status","ResetPasswordvue_type_style_index_0_id_759a0fdd_prod_lang_scss_scoped_true_options","ResetPasswordvue_type_style_index_0_id_759a0fdd_prod_lang_scss_scoped_true","ResetPassword_component","ResetPassword","login_UpdatePasswordvue_type_script_lang_js","resetPasswordTarget","encrypted","proceed","encryption","msg","e","UpdatePasswordvue_type_style_index_0_id_2c0ecaf9_prod_scoped_true_lang_css_options","UpdatePasswordvue_type_style_index_0_id_2c0ecaf9_prod_scoped_true_lang_css","UpdatePassword_component","for","directives","rawName","spellcheck","target","composing","checked","isArray","_i","$$a","$$el","$$c","$$i","concat","slice","warning","UpdatePassword","query","queryString","parse","search","localStorage","sessionStorage","indexedDBList","indexedDB","databases","deleteDatabase","wipeBrowserStorages","views_Loginvue_type_script_lang_js","passwordlessLogin","resetPassword","canResetPassword","resetPasswordUser","direct","hasPasswordless","countAlternativeLogins","alternativeLogins","protocol","hideLoginForm","passwordResetFinished","Loginvue_type_style_index_0_id_518c0816_prod_scoped_true_lang_scss_options","Loginvue_type_style_index_0_id_518c0816_prod_scoped_true_lang_scss","Login","mode","done","alternativeLogin","isAdmin","_oc_isadmin","appConfig","oc_appconfig","OC_appswebroots","_oc_appswebroots","OC_config","_oc_config","rawUid","getElementsByTagName","getAttribute","displayName","currentUser","_oc_debug","Dialogs","YES_NO_BUTTONS","OK_BUTTONS","FILEPICKER_TYPE_CHOOSE","FILEPICKER_TYPE_MOVE","FILEPICKER_TYPE_COPY","FILEPICKER_TYPE_COPY_MOVE","FILEPICKER_TYPE_CUSTOM","alert","text","modal","OK_BUTTON","info","confirm","confirmDestructive","buttons","DialogBuilder","setName","setText","setButtons","clicked","_getLegacyButtons","show","confirmHtml","setHTML","prompt","spawnDialog","defineAsyncComponent","all","__webpack_require__","inputName","isPassword","args","filepicker","multiselect","mimetype","_modal","FilePickerType","Choose","path","legacyCallback","getPath","node","root","startsWith","nodes","builder","getFilePickerBuilder","forEach","button","addButton","defaultButton","setButtonFactory","displayname","basename","push","multiSelect","file","CopyMove","Copy","icon","IconCopy","Move","setMimeTypeFilter","filter","setFilter","fileid","mime","mtime","getTime","permissions","attributes","etag","hasPreview","mountType","quotaAvailableBytes","sharePermissions","nodeToLegacyFile","allowDirectories","allowDirectoryChooser","includes","setMultiSelect","startAt","pick","content","dialogType","allowHtml","setSeverity","dialog","_clicked","buttonList","cancel","dialogs","getRequestToken","head","dataset","requesttoken","OCEventSource","joinChar","dataStr","typelessListeners","closed","encodeURIComponent","source","EventSource","onmessage","listen","close","prototype","call","addEventListener","eventsource","l10n","load","loadTranslations","register","kz","_unregister","unregister","translate","translatePlural","iconCache","Map","getIconUrl","mimeType","MimeTypeList","aliases","has","gotIcon","folder","themes","getRootUrl","getMimeTypeIcon","files","OCA","Theming","cacheBuster","set","RegExp","split","clearIconCache","startSaving","selector","startAction","el","querySelector","HTMLElement","textContent","classList","remove","getAnimations","animation","style","display","finishedSaving","finishedAction","finishedSuccess","finishedError","add","setTimeout","animate","opacity","duration","password_confirmation","requiresPasswordConfirmation","isPasswordConfirmationRequired","requirePasswordConfirmation","rejectCallback","confirmPassword","plugins","_plugins","targetName","plugin","getPlugins","attach","targetObject","detach","_theme","VERSION","self","global","Function","ArrayProto","ObjProto","SymbolProto","Symbol","_setup_toString","toString","_setup_hasOwnProperty","hasOwnProperty","supportsArrayBuffer","supportsDataView","DataView","nativeIsArray","nativeKeys","keys","nativeCreate","create","nativeIsView","isView","_isNaN","isNaN","_isFinite","isFinite","hasEnumBug","propertyIsEnumerable","nonEnumerableProps","MAX_ARRAY_INDEX","Math","pow","restArguments","func","startIndex","max","rest","isObject","obj","isNull","isUndefined","isBoolean","isElement","nodeType","tagTester","tag","isString","isNumber","isDate","isRegExp","isSymbol","isArrayBuffer","isFunction","nodelist","childNodes","Int8Array","modules_isFunction","_hasObjectTag","hasDataViewBug","isIE11","isDataView","modules_isDataView","getInt8","isArguments","modules_isArguments","isFinite_isFinite","parseFloat","isNaN_isNaN","constant","createSizePropertyCheck","getSizeProperty","collection","sizeProperty","shallowProperty","_getByteLength","_isBufferLike","typedArrayPattern","modules_isTypedArray","_getLength","collectNonEnumProps","hash","l","contains","emulatedSet","nonEnumIdx","proto","prop","isEmpty","isMatch","object","_keys","_","_wrapped","toBufferView","bufferSource","byteOffset","valueOf","toJSON","tagDataView","isEqual","a","b","todo","aStack","bStack","frame","pop","className","areArrays","aCtor","bCtor","allKeys","ie11fingerprint","weakMapMethods","forEachName","commonInit","mapTail","mapMethods","setMethods","isMap","isWeakMap","isSet","isWeakSet","values","pairs","invert","result","functions","names","sort","createAssigner","keysFunc","defaults","extend","extendOwn","baseCreate","Ctor","clone","tap","interceptor","toPath","_toPath_toPath","deepGet","defaultValue","has_has","identity","matcher","property","optimizeCb","context","argCount","accumulator","baseIteratee","iteratee","Infinity","cb","mapObject","results","currentKey","noop","propertyOf","times","n","accum","random","min","floor","now","createEscaper","escaper","match","join","testRegexp","replaceRegexp","string","_escapeMap","modules_escape","modules_unescape","templateSettings","evaluate","interpolate","noMatch","escapes","escapeRegExp","escapeChar","bareIdentifier","template","settings","oldSettings","offset","render","argument","variable","fallback","idCounter","uniqueId","prefix","chain","instance","_chain","executeBound","sourceFunc","boundFunc","callingContext","partial","boundArgs","bound","position","modules_partial","TypeError","callArgs","_isArrayLike","flatten","depth","strict","output","idx","stack","v","bindAll","memoize","hasher","cache","address","delay","wait","defer","throttle","timeout","previous","later","leading","throttled","_now","remaining","clearTimeout","trailing","debounce_debounce","immediate","passed","debounced","_args","wrap","wrapper","negate","predicate","compose","start","after","before","memo","once","findKey","createPredicateIndexFinder","dir","array","findIndex","findLastIndex","sortedIndex","low","high","mid","createIndexFinder","predicateFind","item","lastIndexOf","find","findWhere","each","createReduce","initial","reducer","reduce","reduceRight","list","reject","some","fromIndex","guard","invoke","contextPath","pluck","where","lastComputed","reStrSymbol","toArray","sample","last","rand","temp","shuffle","sortBy","criteria","left","right","group","behavior","partition","groupBy","indexBy","countBy","pass","keyInObj","omit","first","compact","flatten_flatten","difference","without","otherArrays","uniq","isSorted","seen","union","arrays","intersection","argsLength","j","unzip","zip","range","stop","step","ceil","chunk","count","chainResult","mixin","underscore_array_methods","index_default_","modules_namespaceObject","index_default","util_history","_handlers","_pushState","strParams","buildQueryString","history","pushState","pathname","userAgent","toLowerCase","parseInt","patterns","pattern","ii","stroke","removeAttribute","setAttribute","replaceState","_cancelPop","addOnPopStateHandler","handler","_parseHashQuery","pos","substr","_decodeQuery","parseUrlQuery","parseQueryString","_onPopState","chunkify","tz","c","x","y","m","util","History","humanFileSize","files_dist","v7","computerFileSize","s","trim","matches","k","kb","mb","gb","g","tb","pb","p","round","formatDate","timestamp","format","TESTING","moment","relativeModifiedDate","diff","fromNow","getScrollBarWidth","_scrollBarWidth","inner","createElement","outer","top","visibility","overflow","appendChild","body","w1","offsetWidth","w2","clientWidth","removeChild","stripTime","date","getFullYear","getMonth","getDate","naturalSortCompare","aa","bb","aNum","bNum","localeCompare","getLanguage","waitFor","interval","internalCallback","isCookieSetToValue","cookies","cookie","webroot","_oc_webroot","OC_webroot","src_OC","coreApps","menuSpeed","PERMISSION_ALL","PERMISSION_CREATE","PERMISSION_DELETE","PERMISSION_NONE","PERMISSION_READ","PERMISSION_SHARE","PERMISSION_UPDATE","TAG_FAVORITE","appswebroots","config","Config","MimeType","mimeType_namespaceObject","isUserAdmin","L10N","registerXHRForErrorProcessing","getCapabilities","realGetCapabilities","paths_dist","P8","encodePath","O0","dirname","pD","isSamePath","ys","joinPaths","getCanonicalLocale","lO","getLocale","JK","Z0","URLSearchParams","fromEntries","entries","PasswordConfirmation","Plugins","Util","filePath","generateFilePath","router_dist","Jv","getRootPath","d0","linkTo","uM","linkToOCS","service","version","generateOcsUrl","ocsVersion","linkToRemote","generateRemoteUrl","linkToRemoteBase","realGetRootUrl","subscribe","token","Nextcloud","L10n","Vue","LoginView","$mount","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","module","sources","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","webpackContext","req","webpackContextResolve","o","exports","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","deferred","O","chunkIds","priority","notFulfilled","fulfilled","splice","r","getter","__esModule","definition","binding","f","chunkId","promises","u","hasOwn","inProgress","dataWebpackPrefix","script","needAttach","scripts","charset","nc","onScriptComplete","prev","onerror","onload","doneFns","parentNode","toStringTag","nmd","paths","children","dn","getOwnPropertyDescriptor","cjs","mod","scriptUrl","importScripts","currentScript","tagName","toUpperCase","baseURI","installedChunks","installedChunkData","promise","loadingEnded","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"core-login.js?v=94068dce2ab255e65238","mappings":"y1EAyBA,MCzBuLA,EDyBvL,CACAC,KAAA,cACAC,WAAA,CACAC,oBAAAC,EACAC,SAAAA,EAAAA,GAGAC,MAAA,CACAC,MAAA,CACAC,KAAAC,OACAC,SAAAC,EAAAA,EAAAA,IAAA,kBAGAC,aAAA,CACAJ,KAAAC,OACAC,SAAAC,EAAAA,EAAAA,IAAA,wBAGAE,QAAA,CACAL,KAAAM,QACAC,UAAA,GAGAC,eAAA,CACAR,KAAAM,QACAJ,SAAA,4IEvCAO,EAAA,GAEAA,EAAAC,kBAA4BC,IAC5BF,EAAAG,cAAwBC,IACxBJ,EAAAK,OAAiBC,IAAAC,KAAa,aAC9BP,EAAAQ,OAAiBC,IACjBT,EAAAU,mBAA6BC,IAEhBC,IAAIC,EAAA1B,EAAOa,GAKFa,EAAA1B,GAAW0B,EAAA1B,EAAO2B,QAAUD,EAAA1B,EAAO2B,sBCLzD,MAAAC,GAXgB,EAAAC,EAAA7B,GACdJ,ECTW,WAAkB,IAAIkC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,WAAW,CAACE,MAAM,CAACC,QAAU,UAAU/B,KAAO,SAASgC,MAAO,EAAKC,SAAWP,EAAIrB,SAAS6B,GAAG,CAACC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAAQ,GAAGC,YAAYZ,EAAIa,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAAEf,EAAIrB,QAASuB,EAAG,MAAM,CAACc,YAAY,iDAAiDd,EAAG,aAAa,CAACc,YAAY,yBAAyB,EAAEC,OAAM,MAAS,CAACjB,EAAIkB,GAAG,OAAOlB,EAAImB,GAAInB,EAAIrB,QAAsBqB,EAAItB,aAAhBsB,EAAI3B,OAA0B,SAC/e,EACsB,IDUtB,EACA,KACA,WACA,cEVA+C,EAAA,CAECC,SAAU,CACTC,wBAAAA,GACC,OAAOrB,KAAKsB,KAAKC,QAAU,GAC5B,EACAC,mBAAAA,GACC,GAAIxB,KAAKqB,yBACR,OAAO7C,EAAE,OAAQ,+BAGnB,IChBmLiD,ECyIrL,CACA3D,KAAA,YAEAC,WAAA,CACA8B,YAAAA,EACA6B,sBAAAA,EAAAzD,EACA0D,gBAAAA,EAAA1D,EACA2D,YAAAA,EAAA3D,EACA4D,WAAAA,EAAAA,GAGAC,OAAA,CAAAC,GAEA5D,MAAA,CACA6D,SAAA,CACA3D,KAAAC,OACAC,QAAA,IAGA0D,YAAA,CACA5D,KAAA,CAAAM,QAAAL,QACAC,SAAA,GAGA2D,OAAA,CACA7D,KAAA8D,MACA5D,QAAAA,IAAA,IAGA6D,SAAA,CACA/D,KAAA8D,MACA5D,QAAAA,IAAA,IAGA8D,cAAA,CACAhE,KAAAiE,OACA/D,QAAA,GAGAgE,oBAAA,CACAlE,KAAAM,QACAJ,SAAA,GAGAiE,kBAAA,CACAnE,KAAAM,QACAJ,SAAA,GAGAkE,YAAA,CACApE,KAAAM,QACAJ,SAAA,GAGAmE,YAAA,CACArE,KAAA8D,MACA5D,QAAAA,IACA,KAKAoE,MAAAA,KAEA,CACAnE,EAAAoE,EAAAC,GAIAC,cAAAtE,EAAAA,EAAAA,IAAA,kCAAAuE,YAAAC,GAAAC,MAAAnF,WAAAoF,EAAA,CAAAC,UAAA,EAAAC,QAAA,IAEAC,cAAAC,EAAAA,EAAAA,GAAA,2BACAC,aAAAC,OAAAR,GAAAO,aACAE,UAAA,IAAAC,KAAAC,iBAAAC,mBAAAC,SACAC,iBAAA,IAAAC,MAAAC,oBAAA,KAIAC,KAAA9F,IACA,CACAO,SAAA,EACA4C,KAAAnD,EAAA6D,SACAkC,SAAA,GACAC,WAAA,MACAC,SAAA,IAIAhD,SAAA,CAIAiD,gBAAAA,GAEA,OAAArE,KAAAqD,cAAA,EACA,QAGAiB,EAAAA,EAAAA,GAAAtE,KAAAuE,gBAAA,IAAAvE,KAAAqD,aACA,EAEAmB,OAAAA,GACA,OAAAxE,KAAAyE,iBAAAzE,KAAA0E,cACA1E,KAAAqC,cAAA,GACA,EAEAsC,UAAAA,GACA,OAAA3E,KAAAyE,iBACAjG,EAAAA,EAAAA,IAAA,mCAEAwB,KAAA0E,cACAlG,EAAAA,EAAAA,IAAA,mCAEAwB,KAAAqC,cAAA,KACA7D,EAAAA,EAAAA,IAAA,2FADA,CAIA,EAEAoG,gBAAAA,GACA,WAAA5E,KAAAkC,OAAA2C,QAAA,mBACA,EAEAC,eAAAA,GACA,WAAA9E,KAAAkC,OAAA2C,QAAA,kBACA,EAEAE,iBAAAA,GACA,WAAA/E,KAAAkC,OAAA2C,QAAA,oBACA,EAEAJ,eAAAA,GACA,WAAAzE,KAAAkC,OAAA2C,QAAA,kBACA,EAEAH,YAAAA,GACA,WAAA1E,KAAAkC,OAAA2C,QAAA,eACA,EAEAG,YAAAA,KACAC,EAAAA,EAAAA,IAAA,2BAGAC,eAAAA,KACAC,EAAAA,EAAAA,IAAA,SAGAC,YAAAA,GACA,OAAApF,KAAA0C,YAAA2C,MAAAC,GAAA,MAAAA,EACA,EAEAC,SAAAA,GACA,OAAAvF,KAAAoF,cACA5G,EAAAA,EAAAA,IAAA,iCAEAA,EAAAA,EAAAA,IAAA,sBACA,GAGAgH,MAAA,CAIAtB,QAAAA,GACAlE,KAAAqE,kBACA,GAGAoB,OAAAA,GACA,KAAAzF,KAAAgC,SACAhC,KAAA0F,MAAApE,KAAAoE,MAAAC,WAAAD,MAAAE,MAAAC,QAEA7F,KAAA0F,MAAAxB,SAAAwB,MAAAC,WAAAD,MAAAE,MAAAC,OAEA,EAEAC,QAAA,CAKAvB,eAAAA,GACAvE,KAAAkE,SAAA,EACA,EAEA6B,cAAAA,GACA/F,KAAAU,MAAA,kBAAAV,KAAAsB,KACA,EAEA0E,MAAAA,CAAAC,GACAjG,KAAAoE,SAAA,EAEApE,KAAAtB,QAEAuH,EAAAC,kBAIAlG,KAAAtB,SAAA,EACAsB,KAAAU,MAAA,UACA,mBCtUIyF,EAAO,GAEXA,EAAOpH,kBAAqBC,IAC5BmH,EAAOlH,cAAiBC,IACxBiH,EAAOhH,OAAUC,IAAAC,KAAa,aAC9B8G,EAAO7G,OAAUC,IACjB4G,EAAO3G,mBAAsBC,IAEhBC,IAAI0G,EAAAnI,EAASkI,GAKJC,EAAAnI,GAAWmI,EAAAnI,EAAO2B,QAAUwG,EAAAnI,EAAO2B,OCLzD,MAAAyG,GAXgB,EAAAvG,EAAA7B,GACdwD,ECTW,WAAkB,IAAI1B,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,OAAO,CAACqG,IAAI,YAAYvF,YAAY,aAAaZ,MAAM,CAACoG,OAAS,OAAOzI,KAAO,QAAQ0I,OAASzG,EAAImF,gBAAgB3E,GAAG,CAACyF,OAASjG,EAAIiG,SAAS,CAAC/F,EAAG,WAAW,CAACc,YAAY,uBAAuBZ,MAAM,CAAC,kBAAkB,KAAK,CAAEJ,EAAI6E,iBAAkB3E,EAAG,aAAa,CAACE,MAAM,CAACsG,MAAQ1G,EAAIvB,EAAE,OAAQ,sCAAsCH,KAAO,YAAY,CAAC0B,EAAIkB,GAAG,WAAWlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,uCAAuC,YAAYuB,EAAI2G,KAAK3G,EAAIkB,GAAG,KAAMlB,EAAI+E,gBAAiB7E,EAAG,aAAa,CAACE,MAAM,CAACwG,QAAU5G,EAAIvB,EAAE,OAAQ,iBAAiBH,KAAO,UAAU,CAAC0B,EAAIkB,GAAG,WAAWlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,sFAAsF,YAAYuB,EAAI2G,KAAK3G,EAAIkB,GAAG,KAAMlB,EAAIqC,SAASb,OAAS,EAAGtB,EAAG,aAAaF,EAAI6G,GAAI7G,EAAIqC,SAAU,SAASyE,EAAQC,GAAO,OAAO7G,EAAG,MAAM,CAACY,IAAIiG,GAAO,CAAC/G,EAAIkB,GAAG,aAAalB,EAAImB,GAAG2F,IAAU5G,EAAG,OAAO,GAAG,GAAGF,EAAI2G,KAAK3G,EAAIkB,GAAG,KAAMlB,EAAIgF,kBAAmB9E,EAAG,aAAa,CAAC8G,MAAMhH,EAAIvB,EAAE,OAAQ,+BAA+B2B,MAAM,CAAC9B,KAAO,YAAY,CAAC0B,EAAIkB,GAAG,WAAWlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,oDAAoD,YAAYuB,EAAI2G,KAAK3G,EAAIkB,GAAG,KAAKhB,EAAG,MAAM,CAACc,YAAY,SAASZ,MAAM,CAAC6G,GAAK,YAAY,CAAC/G,EAAG,MAAM,CAACc,YAAY,gBAAgBZ,MAAM,CAAC8G,IAAM,GAAGC,IAAMnH,EAAIiF,eAAejF,EAAIkB,GAAG,KAAKhB,EAAG,OAAO,CAACE,MAAM,CAAC6G,GAAK,iBAAiBjH,EAAIkB,GAAG,KAAKhB,EAAG,MAAM,CAACkH,YAAY,CAACC,MAAQ,YAAYrH,EAAIkB,GAAG,KAAKhB,EAAG,KAAK,CAACc,YAAY,uBAAuBZ,MAAM,CAAC,2BAA2B,KAAK,CAACJ,EAAIkB,GAAG,WAAWlB,EAAImB,GAAGnB,EAAI+C,cAAc,YAAY/C,EAAIkB,GAAG,KAAKhB,EAAG,cAAc,CAACqG,IAAI,OAAOS,MAAM,CAAEM,MAAOtH,EAAI0E,iBAAkBtE,MAAM,CAAC6G,GAAK,OAAOM,MAAQvH,EAAIwF,UAAUzH,KAAO,OAAOyJ,UAAY,IAAIC,eAAiB,OAAOC,eAAgB,EAAMC,aAAe3H,EAAIwC,oBAAsB,WAAa,MAAM3D,SAAW,GAAG+I,MAAQ5H,EAAIsB,yBAAyB,cAActB,EAAIyB,oBAAoB,6BAA6B,IAAIjB,GAAG,CAACqH,OAAS7H,EAAIgG,gBAAgB8B,MAAM,CAACzJ,MAAO2B,EAAIuB,KAAMwG,SAAS,SAAUC,GAAMhI,EAAIuB,KAAKyG,CAAG,EAAEC,WAAW,UAAUjI,EAAIkB,GAAG,KAAKhB,EAAG,kBAAkB,CAACqG,IAAI,WAAWS,MAAM,CAAEM,MAAOtH,EAAI0E,iBAAkBtE,MAAM,CAAC6G,GAAK,WAAWlJ,KAAO,WAAW2J,eAAgB,EAAMD,eAAiB,OAAOE,aAAe3H,EAAIwC,oBAAsB,mBAAqB,MAAM+E,MAAQvH,EAAIvB,EAAE,OAAQ,YAAY,cAAcuB,EAAI4E,WAAWgD,MAAQ5H,EAAIyE,QAAQJ,QAAUrE,EAAIqE,QAAQ,iCAAiC,GAAGxF,SAAW,IAAIiJ,MAAM,CAACzJ,MAAO2B,EAAImE,SAAU4D,SAAS,SAAUC,GAAMhI,EAAImE,SAAS6D,CAAG,EAAEC,WAAW,cAAcjI,EAAIkB,GAAG,KAAMlB,EAAIyC,kBAAmBvC,EAAG,wBAAwB,CAACqG,IAAI,aAAanG,MAAM,CAAC6G,GAAK,aAAalJ,KAAO,aAAaM,MAAQ,IAAI,mCAAmC,IAAIyJ,MAAM,CAACzJ,MAAO2B,EAAIoE,WAAY2D,SAAS,SAAUC,GAAMhI,EAAIoE,WAAW4D,CAAG,EAAEC,WAAW,eAAe,CAACjI,EAAIkB,GAAG,WAAWlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,gBAAgB,YAAYuB,EAAI2G,KAAK3G,EAAIkB,GAAG,KAAKhB,EAAG,cAAc,CAACE,MAAM,CAAC,yBAAyB,GAAGzB,QAAUqB,EAAIrB,WAAWqB,EAAIkB,GAAG,KAAMlB,EAAIkC,YAAahC,EAAG,QAAQ,CAACE,MAAM,CAAC9B,KAAO,SAASP,KAAO,gBAAgBmK,SAAS,CAAC7J,MAAQ2B,EAAIkC,eAAelC,EAAI2G,KAAK3G,EAAIkB,GAAG,KAAKhB,EAAG,QAAQ,CAACE,MAAM,CAAC9B,KAAO,SAASP,KAAO,YAAYmK,SAAS,CAAC7J,MAAQ2B,EAAI0D,YAAY1D,EAAIkB,GAAG,KAAKhB,EAAG,QAAQ,CAACE,MAAM,CAAC9B,KAAO,SAASP,KAAO,mBAAmBmK,SAAS,CAAC7J,MAAQ2B,EAAI+D,kBAAkB/D,EAAIkB,GAAG,KAAKhB,EAAG,QAAQ,CAACE,MAAM,CAAC9B,KAAO,SAASP,KAAO,gBAAgBmK,SAAS,CAAC7J,MAAQ2B,EAAIwD,gBAAgBxD,EAAIkB,GAAG,KAAMlB,EAAI0C,YAAaxC,EAAG,QAAQ,CAACE,MAAM,CAAC9B,KAAO,SAASP,KAAO,SAASM,MAAQ,OAAO2B,EAAI2G,MAAM,IAC/hH,EACsB,IDUtB,EACA,KACA,WACA,cEEO,MAAAwB,UAAAC,MACP,WAAAC,EAAAvB,QAAkBA,EAAAwB,KAAAA,EAAAC,MAAAA,EAAAxK,KAAAA,IAElByK,MAAA1B,EAAA,CAAyByB,UACzBE,OAAAC,eAAAzI,KAAA,QACA0I,YAAA,EACAC,cAAA,EACAC,UAAA,EACAxK,WAAA,IAEA4B,KAAAlC,KAAAA,GAAAwK,EAAAxK,KACAkC,KAAAqI,KAAAA,CACA,ECOO,MAAAQ,EAAA,IApCP,MACA,WAAAT,GACAI,OAAAC,eAAAzI,KAAA,cACA0I,YAAA,EACAC,cAAA,EACAC,UAAA,EACAxK,WAAA,GAEA,CACA,oBAAA0K,GAEA,GAAA9I,KAAA+I,WAAA,CACA,MAAAC,EAAA,IAAAb,MAAA,qDACAa,EAAAlL,KAAA,aACAkC,KAAA+I,WAAAE,MAAAD,EACA,CACA,MAAAE,EAAA,IAAAC,gBAEA,OADAnJ,KAAA+I,WAAAG,EACAA,EAAAE,MACA,CACA,cAAAC,GACA,GAAArJ,KAAA+I,WAAA,CACA,MAAAC,EAAA,IAAAb,MAAA,kDACAa,EAAAlL,KAAA,aACAkC,KAAA+I,WAAAE,MAAAD,GACAhJ,KAAA+I,gBAAA7F,CACA,CACA,GCrBO,SAASoG,EAAuBC,GACvC,MAAAC,EAAA,IAAAC,WAAAF,GACA,IAAAG,EAAA,GACA,UAAAC,KAAAH,EACAE,GAAApL,OAAAsL,aAAAD,GAGA,OADAE,KAAAH,GACAI,QAAA,WAAAA,QAAA,WAAAA,QAAA,QACA,CCPO,SAASC,EAAuBC,GAEvC,MAAAC,EAAAD,EAAAF,QAAA,UAAAA,QAAA,UAQAI,GAAA,EAAAD,EAAA1I,OAAA,KACA4I,EAAAF,EAAAG,OAAAH,EAAA1I,OAAA2I,EAAA,KAEAG,EAAAC,KAAAH,GAEAZ,EAAA,IAAAgB,YAAAF,EAAA9I,QACAiI,EAAA,IAAAC,WAAAF,GACA,QAAAiB,EAAA,EAAoBA,EAAAH,EAAA9I,OAAmBiJ,IACvChB,EAAAgB,GAAAH,EAAAI,WAAAD,GAEA,OAAAjB,CACA,CCzBO,SAASmB,IAChB,OAAAC,EAAAC,cAAA1H,IAAA2H,YAAAC,qBACA,mBAAAD,WAAAC,oBACA,CAKO,MAAAH,EAAA,CACPC,SAAAxM,GAAAA,GCWO2M,EACP3M,GAAAA,ECvBO,SAAS4M,EAA+BC,GAC/C,MAAAjE,GAAYA,GAAKiE,EACjB,UACAA,EACAjE,GAAY+C,EAAuB/C,GAMnCkE,WAAAD,EAAAC,WAEA,CCbA,MAAAC,EAAA,8BAIO,SAASC,EAAyBC,GACzC,GAAAA,KAGAF,EAAAtG,QAAAwG,GAAA,GAGA,OAAAA,CACA,2BCQA,MCpB2GC,EDoB3G,CACAxN,KAAA,eACAyN,MAAA,UACApN,MAAA,CACAsI,MAAA,CACApI,KAAAC,QAEAkN,UAAA,CACAnN,KAAAC,OACAC,QAAA,gBAEAkN,KAAA,CACApN,KAAAiE,OACA/D,QAAA,MEfAmN,GAXgB,EAAA5L,EAAA7B,GACdqN,ECRQ,WAAqB,IAAAvL,EAAAC,KAAAC,EAAAF,EAAAG,MAAAD,GAA6B,OAAAA,EAAA,OAAAF,EAAA4L,GAAA,CAAyB5K,YAAA,sCAAAZ,MAAA,CAAyD,cAAAJ,EAAA0G,MAAA,yBAAA1G,EAAA0G,MAAAmF,KAAA,OAA4ErL,GAAA,CAAKC,MAAA,SAAAC,GAAyB,OAAAV,EAAAW,MAAA,QAAAD,EAAA,IAAoC,OAAAV,EAAA8L,QAAA,IAAA5L,EAAA,OAAqCc,YAAA,4BAAAZ,MAAA,CAA+C2L,KAAA/L,EAAAyL,UAAAO,MAAAhM,EAAA0L,KAAAO,OAAAjM,EAAA0L,KAAAQ,QAAA,cAA+E,CAAAhM,EAAA,QAAaE,MAAA,CAAO+L,EAAA,kOAAqO,CAAAnM,EAAA,MAAAE,EAAA,SAAAF,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAA0G,UAAA1G,EAAA2G,UACxrB,EACmB,IDSnB,EACA,KACA,KACA,yCEUA,MAAAyF,GAXc,QADK7K,IAYM8K,EAAAA,EAAAA,QAVhBC,EAAAA,GAAAA,MACLC,OAAO,QACPC,SAEIF,EAAAA,GAAAA,MACLC,OAAO,QACPE,OAAOlL,GAAKmL,KACZF,QATH,IAAmBjL,IAcgB+K,EAAAA,GAAAA,MACjCC,OAAO,kBACPI,aACAH,wBCrBK,MAAMI,WAA2BxE,OC4DxC,MCpEiMyE,IDoEjMC,EAAAA,EAAAA,IAAA,CACA/O,KAAA,wBACAC,WAAA,CACA8B,YAAAA,EACAiN,gBAAAC,EAAA9O,EACA+O,aAAAtB,EACAuB,eAAAA,EAAAhP,EACA2D,YAAAA,EAAAA,GAGAzD,MAAA,CACA6D,SAAA,CACA3D,KAAAC,OACAC,QAAA,IAGA0D,YAAA,CACA5D,KAAA,CAAAM,QAAAL,QACAC,SAAA,GAGAgE,oBAAA,CACAlE,KAAAM,QACAJ,SAAA,GAGA2O,QAAA,CACA7O,KAAAM,QACAJ,SAAA,GAGA4O,YAAA,CACA9O,KAAAM,QACAJ,SAAA,IAIAoE,MAAAA,KACA,CACAyK,iBAAAC,MAIApJ,IAAAA,GACA,OACA3C,KAAAtB,KAAAgC,SACAtD,SAAA,EACA4O,kBAAA,EAEA,EAEAxH,QAAA,CACA,kBAAAyH,GAEA,GAAAvN,KAAA0F,MAAA8H,UAAAC,gBAAA,CAIAtB,GAAAuB,MAAA,gCAEA,IACA,MAAAC,QDjHOC,eAAmCC,GACtC,MAAMC,GAAM3I,EAAAA,EAAAA,IAAY,0BAClBlB,KAAEA,SAAe8J,GAAAA,GAAMC,KAAKF,EAAK,CAAED,cACzC,IAAK5J,EAAKgK,kBAAqD,IAAjChK,EAAKgK,iBAAiB1M,OAEhD,MADA4K,GAAOxE,MAAM,8CACP,IAAIgF,GAEd,aGRGiB,eAAA9O,IAEPA,EAAAoP,aAAApP,EAAAqP,YACAC,QAAAC,KAAA,gUAEAvP,EAAA,CAAoBoP,YAAApP,IAEpB,MAAAoP,YAAYA,EAAAI,mBAAAA,GAAA,EAAAC,2BAAAA,GAAA,GAA8EzP,EAC1F,IAAS4L,IACT,UAAAvC,MAAA,6CAIA,IAAA8F,EACA,IAAAC,EAAAD,kBAAA1M,SACA0M,EAAAC,EAAAD,kBAAAO,IAA6DxD,IAG7D,MAAAyD,EAAA,IACAP,EACAC,UAAmBpE,EAAuBmE,EAAAC,WAC1CF,oBAGAS,EAAA,GAKA,GAAAJ,EAAA,CACA,UXxCO,WACP,IAAS5D,IACT,OAAAK,EAAA,IAAA4D,QAAAC,GAAAA,GAAA,KAQA,MAAAC,EAAAhE,WACAC,oBACA,OACAC,OADA7H,IAAA2L,GAAAC,gCACA,IAAAH,QAAAC,GAAAA,GAAA,IAEAC,EAAAC,kCACA,CWwBoBC,GACpB,MAAA5G,MAAA,8CAKA,GAFA6G,SAAAC,iBAAA,mCAEA1N,OAAA,GAAAgN,EACA,MAAApG,MAAA,qGAIAuG,EAAAQ,UAAA,cAEAT,EAAAR,iBAAA,EACA,CAMA,IAAAkB,EAJAT,EAAAD,UAAAA,EAEAC,EAAAtF,OAAwBP,EAAoBC,uBAG5C,IACAqG,QAAAC,UAAAC,YAAAC,IAAAZ,EACA,CACA,MAAAa,GACA,MCjEO,UAAA5H,MAAuCA,EAAA7I,QAAAA,IAC9C,MAAA2P,UAAYA,GAAY3P,EACxB,IAAA2P,EACA,MAAAtG,MAAA,mDAEA,kBAAAR,EAAA7J,MACA,GAAAgB,EAAAsK,kBAAAoG,YAEA,WAAuBtH,EAAa,CACpCrB,QAAA,mDACAwB,KAAA,yBACAC,MAAAX,QAIA,wBAAAA,EAAA7J,KAKA,WAAmBoK,EAAa,CAChCrB,QAAAc,EAAAd,QACAwB,KAAA,uCACAC,MAAAX,IAGA,qBAAAA,EAAA7J,KAAA,CACA,MAAA2R,EAAA5E,WAAA6E,SAAAC,SACA,GCtBA,eAH6BA,EDyBHF,KCpB1B,4EAAgEG,KAAAD,GDsBhE,WAAuBzH,EAAa,CACpCrB,QAAA,GAA4BgE,WAAA6E,SAAAC,gCAC5BtH,KAAA,uBACAC,MAAAX,IAGA,GAAA8G,EAAAoB,OAAAJ,EAEA,WAAuBvH,EAAa,CACpCrB,QAAA,cAAuC4H,EAAAoB,mCACvCxH,KAAA,sBACAC,MAAAX,GAGA,MACA,oBAAAA,EAAA7J,KAGA,WAAmBoK,EAAa,CAChCrB,QAAA,+GACAwB,KAAA,oCACAC,MAAAX,GAEA,CClDO,IAAsBgI,EDmD7B,OAAAhI,CACA,CDUcmI,CAA2B,CAAGnI,MAAA4H,EAAAzQ,QAAA4P,GAC5C,CACA,IAAAS,EACA,UAAAhH,MAAA,oCAEA,MAAAnB,GAAYA,EAAA+I,MAAAA,EAAAC,SAAAA,EAAA3R,KAAAA,GAA4B8Q,EACxC,IAAAc,EAKA,OAJAD,EAAAC,aACAA,EAAqB3G,EAAuB0G,EAAAC,aAG5C,CACAjJ,KACA+I,MAAezG,EAAuByG,GACtCC,SAAA,CACAE,kBAA+B5G,EAAuB0G,EAAAE,mBACtDC,eAA4B7G,EAAuB0G,EAAAG,gBACnDC,UAAuB9G,EAAuB0G,EAAAI,WAC9CH,cAEA5R,OACAgS,uBAAAlB,EAAAmB,4BACAC,wBAAiCnF,EAAyB+D,EAAAoB,yBAE1D,CHvEiBC,CAA4B,CAAEtC,YAAajK,GAC5D,CCyGAwM,CAAAzQ,KAAAsB,YACAtB,KAAA0Q,uBAAA/C,EACA,OAAAhG,GACA,GAAAA,aAAAgF,GAEA,YADA3M,KAAAsN,kBAAA,GAGAnB,GAAAuB,MAAA/F,EACA,CAbA,CAcA,EAEAgJ,cAAAA,CAAA3O,GACAhC,KAAAsB,KAAAU,EACAhC,KAAAU,MAAA,kBAAAV,KAAAsB,KACA,EAEAoP,sBAAAA,CAAAvC,GACA,IAAAlM,EAAAjC,KAAAiC,YAEA,ODtHO2L,eAAoCgD,GACvC,MAAM9C,GAAM3I,EAAAA,EAAAA,IAAY,2BAClBlB,KAAEA,SAAe8J,GAAAA,GAAMC,KAAKF,EAAK,CAAE7J,KAAM4M,KAAKC,UAAUF,KAC9D,OAAO3M,CACX,CCkHA8M,CAAA5C,GACA6C,KAAA,EAAAC,yBACA9E,GAAAuB,MAAA,yBACAzL,GACA,MAAAA,EAAAiP,OAAA,KACAjP,EAAA,IAAAA,GAEAuB,OAAAkM,SAAAyB,MAAAC,EAAAA,EAAAA,MAAAnP,GAEAuB,OAAAkM,SAAAyB,KAAAF,IAGAI,MAAA1J,IACAwE,GAAAuB,MAAA,4CAAA/F,WAEA,EAEA3B,MAAAA,GACA,qBK3JIsL,GAAO,GAEXA,GAAOvS,kBAAqBC,IAC5BsS,GAAOrS,cAAiBC,IACxBoS,GAAOnS,OAAUC,IAAAC,KAAa,aAC9BiS,GAAOhS,OAAUC,IACjB+R,GAAO9R,mBAAsBC,IAEhBC,IAAI6R,GAAAtT,EAASqT,IAKJC,GAAAtT,GAAWsT,GAAAtT,EAAO2B,QAAU2R,GAAAtT,EAAO2B,OChBzD,IAAI4R,IAAY,EAAA1R,EAAA7B,GACd2O,GCTW,WAAkB,IAAI7M,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAgC,OAAtBF,EAAIG,MAAMuR,aAAqB1R,EAAImN,SAAWnN,EAAIoN,cAAgBpN,EAAIqN,iBAAkBnN,EAAG,OAAO,CAACqG,IAAI,YAAYvF,YAAY,2BAA2BZ,MAAM,CAAC,kBAAkB,iCAAiCoG,OAAS,OAAOzI,KAAO,SAASyC,GAAG,CAACyF,OAAS,SAASvF,GAAgC,OAAxBA,EAAOyF,iBAAwBnG,EAAIiG,OAAO0L,MAAM,KAAMC,UAAU,IAAI,CAAC1R,EAAG,KAAK,CAACE,MAAM,CAAC6G,GAAK,mCAAmC,CAACjH,EAAIkB,GAAG,SAASlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,yBAAyB,UAAUuB,EAAIkB,GAAG,KAAKhB,EAAG,cAAc,CAACE,MAAM,CAACvB,SAAW,GAAG,cAAcmB,EAAIuB,KAAKoG,aAAe3H,EAAIwC,oBAAsB,KAAO,MAAMoF,OAAS5H,EAAIuN,iBAAiBhG,MAAQvH,EAAIvB,EAAE,OAAQ,kBAAkBoT,YAAc7R,EAAIvB,EAAE,OAAQ,kBAAkB,cAAeuB,EAAIuN,iBAAwF,GAArEvN,EAAIvB,EAAE,OAAQ,sDAA2D+B,GAAG,CAAC,eAAeR,EAAI4Q,kBAAkB5Q,EAAIkB,GAAG,KAAMlB,EAAIuN,iBAAkBrN,EAAG,cAAc,CAACE,MAAM,CAACzB,QAAUqB,EAAIrB,SAAS6B,GAAG,CAACC,MAAQT,EAAIwN,gBAAgBxN,EAAI2G,MAAM,GAAK3G,EAAImN,SAAYnN,EAAIoN,YAAkSlN,EAAG,iBAAiB,CAACE,MAAM,CAACrC,KAAOiC,EAAIvB,EAAE,OAAQ,yBAAyBqT,YAAc9R,EAAIvB,EAAE,OAAQ,kEAAkEmC,YAAYZ,EAAIa,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACb,EAAG,mBAAmB,EAAEe,OAAM,OAAjhBf,EAAG,iBAAiB,CAACE,MAAM,CAACrC,KAAOiC,EAAIvB,EAAE,OAAQ,iCAAiCqT,YAAc9R,EAAIvB,EAAE,OAAQ,4EAA4EmC,YAAYZ,EAAIa,GAAG,CAAC,CAACC,IAAI,OAAOC,GAAG,WAAW,MAAO,CAACb,EAAG,gBAAgB,EAAEe,OAAM,MACr1C,EACsB,IDUtB,EACA,KACA,WACA,MAIA,MAAA8Q,GAAeN,WEnB8OO,ICS9OlF,EAAAA,EAAAA,IAAgB,CAC3B/O,KAAM,gBACNC,WAAY,CACR8B,YAAWA,EACX3B,SAAQA,EAAAD,EACR4D,WAAUA,EAAA5D,EACV2D,YAAWA,EAAAA,GAEfE,OAAQ,CAACC,GACT5D,MAAO,CACH6D,SAAU,CACN3D,KAAMC,OACNM,UAAU,GAEdoT,kBAAmB,CACf3T,KAAMC,OACNM,UAAU,IAGlBqF,IAAAA,GACI,MAAO,CACH0D,OAAO,EACPjJ,SAAS,EACTmI,QAAS,GACTvF,KAAMtB,KAAKgC,SAEnB,EACAwD,MAAO,CACHxD,QAAAA,CAAS5D,GACL4B,KAAKsB,KAAOlD,CAChB,GAEJ0H,QAAS,CACLC,cAAAA,GACI/F,KAAKU,MAAM,kBAAmBV,KAAKsB,KACvC,EACA,YAAM0E,GACFhG,KAAKtB,SAAU,EACfsB,KAAK2H,OAAQ,EACb3H,KAAK6G,QAAU,GACf,MAAMiH,GAAM3I,EAAAA,EAAAA,IAAY,uBACxB,IACI,MAAMlB,KAAEA,SAAegO,GAAAA,GAAMjE,KAAKF,EAAK,CAAExM,KAAMtB,KAAKsB,OACpD,GAAoB,YAAhB2C,EAAKiO,OACL,MAAM,IAAI/J,MAAM,cAAclE,EAAKiO,UAEvClS,KAAK6G,QAAU,cACnB,CACA,MAAOc,GACHwE,GAAOxE,MAAM,qCAAsC,CAAEA,UACrD3H,KAAK2H,OAAQ,EACb3H,KAAK6G,QAAU,YACnB,CAAC,QAEG7G,KAAKtB,SAAU,CACnB,CACJ,oBCtDJyT,GAAO,GAEXA,GAAOpT,kBAAqBC,IAC5BmT,GAAOlT,cAAiBC,IACxBiT,GAAOhT,OAAUC,IAAAC,KAAa,aAC9B8S,GAAO7S,OAAUC,IACjB4S,GAAO3S,mBAAsBC,IAEhBC,IAAI0S,GAAAnU,EAASkU,IAKJC,GAAAnU,GAAWmU,GAAAnU,EAAO2B,QAAUwS,GAAAnU,EAAO2B,OChBzD,IAAIyS,IAAY,EAAAvS,EAAA7B,GACd8T,GFTW,WAAkB,IAAIhS,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAgC,OAAtBF,EAAIG,MAAMuR,YAAmBxR,EAAG,OAAO,CAACc,YAAY,sBAAsBR,GAAG,CAACyF,OAAS,SAASvF,GAAgC,OAAxBA,EAAOyF,iBAAwBnG,EAAIiG,OAAO0L,MAAM,KAAMC,UAAU,IAAI,CAAC1R,EAAG,KAAK,CAACF,EAAIkB,GAAGlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,sBAAsBuB,EAAIkB,GAAG,KAAKhB,EAAG,cAAc,CAACE,MAAM,CAAC6G,GAAK,OAAOlJ,KAAO,OAAOyJ,UAAY,IAAIC,eAAiB,MAAMF,MAAQvH,EAAIvB,EAAE,OAAQ,kBAAkBmJ,MAAQ5H,EAAIsB,yBAAyB,cAActB,EAAIyB,oBAAoB5C,SAAW,IAAI2B,GAAG,CAACqH,OAAS7H,EAAIgG,gBAAgB8B,MAAM,CAACzJ,MAAO2B,EAAIuB,KAAMwG,SAAS,SAAUC,GAAMhI,EAAIuB,KAAKyG,CAAG,EAAEC,WAAW,UAAUjI,EAAIkB,GAAG,KAAKhB,EAAG,cAAc,CAACE,MAAM,CAACzB,QAAUqB,EAAIrB,QAAQN,MAAQ2B,EAAIvB,EAAE,OAAQ,qBAAqBuB,EAAIkB,GAAG,KAAKhB,EAAG,WAAW,CAACE,MAAM,CAACC,QAAU,WAAWC,KAAO,IAAIE,GAAG,CAACC,MAAQ,SAASC,GAAQ,OAAOV,EAAIW,MAAM,QAAQ,IAAI,CAACX,EAAIkB,GAAG,SAASlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,kBAAkB,UAAUuB,EAAIkB,GAAG,KAAsB,iBAAhBlB,EAAI8G,QAA4B5G,EAAG,aAAa,CAACE,MAAM,CAAC9B,KAAO,YAAY,CAAC0B,EAAIkB,GAAG,SAASlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,mOAAmO,UAA2B,eAAhBuB,EAAI8G,QAA0B5G,EAAG,aAAa,CAACE,MAAM,CAAC9B,KAAO,UAAU,CAAC0B,EAAIkB,GAAG,SAASlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,kEAAmE,UAA2B,gBAAhBuB,EAAI8G,QAA2B5G,EAAG,aAAa,CAACE,MAAM,CAAC9B,KAAO,UAAU,CAAC0B,EAAIkB,GAAG,SAASlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,mEAAmE,UAAUuB,EAAI2G,MAAM,EACxpD,EACsB,IEUtB,EACA,KACA,WACA,MAIA,MAAA4L,GAAeD,WCnB2KE,GCoD1L,CACAzU,KAAA,iBACAC,WAAA,CACA8B,YAAAA,GAGA1B,MAAA,CACA6D,SAAA,CACA3D,KAAAC,OACAM,UAAA,GAGA4T,oBAAA,CACAnU,KAAAC,OACAM,UAAA,IAIAqF,IAAAA,GACA,OACA0D,OAAA,EACAjJ,SAAA,EACAmI,aAAA3D,EACA5B,KAAAtB,KAAAgC,SACAkC,SAAA,GACAuO,WAAA,EACAC,SAAA,EAEA,EAEAlN,MAAA,CACAxD,QAAAA,CAAA5D,GACA4B,KAAAsB,KAAAlD,CACA,GAGA0H,QAAA,CACA,YAAAE,GACAhG,KAAAtB,SAAA,EACAsB,KAAA2H,OAAA,EACA3H,KAAA6G,QAAA,GAEA,IACA,MAAA5C,KAAAA,SAAA8J,GAAAA,GAAAC,KAAAhO,KAAAwS,oBAAA,CACAtO,SAAAlE,KAAAkE,SACAwO,QAAA1S,KAAA0S,UAEA,GAAAzO,GAAA,YAAAA,EAAAiO,OACAlS,KAAA6G,QAAA,eACA7G,KAAAU,MAAA,kBAAAV,KAAAsB,MACAtB,KAAAU,MAAA,YACA,KAAAuD,IAAAA,EAAA0O,WAEA,MAAA1O,GAAAA,EAAA2O,IACA,IAAAzK,MAAAlE,EAAA2O,KAEA,IAAAzK,MAJAnI,KAAAyS,WAAA,CAKA,CACA,OAAAI,GACA7S,KAAA2H,OAAA,EACA3H,KAAA6G,QAAAgM,EAAAhM,QAAAgM,EAAAhM,QAAArI,EAAA,wEACA,SACAwB,KAAAtB,SAAA,CACA,CACA,oBCzGIoU,GAAO,GAEXA,GAAO/T,kBAAqBC,IAC5B8T,GAAO7T,cAAiBC,IACxB4T,GAAO3T,OAAUC,IAAAC,KAAa,aAC9ByT,GAAOxT,OAAUC,IACjBuT,GAAOtT,mBAAsBC,IAEhBC,IAAIqT,GAAA9U,EAAS6U,IAKJC,GAAA9U,GAAW8U,GAAA9U,EAAO2B,QAAUmT,GAAA9U,EAAO2B,OChBzD,IAAIoT,IAAY,EAAAlT,EAAA7B,GACdsU,GCTW,WAAkB,IAAIxS,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,OAAO,CAACM,GAAG,CAACyF,OAAS,SAASvF,GAAgC,OAAxBA,EAAOyF,iBAAwBnG,EAAIiG,OAAO0L,MAAM,KAAMC,UAAU,IAAI,CAAC1R,EAAG,WAAW,CAACA,EAAG,IAAI,CAACA,EAAG,QAAQ,CAACc,YAAY,UAAUZ,MAAM,CAAC8S,IAAM,aAAa,CAAClT,EAAIkB,GAAGlB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,oBAAoBuB,EAAIkB,GAAG,KAAKhB,EAAG,QAAQ,CAACiT,WAAW,CAAC,CAACpV,KAAK,QAAQqV,QAAQ,UAAU/U,MAAO2B,EAAImE,SAAU8D,WAAW,aAAa7H,MAAM,CAAC6G,GAAK,WAAW3I,KAAO,WAAWP,KAAO,WAAW4J,aAAe,eAAeF,eAAiB,OAAO4L,WAAa,QAAQxU,SAAW,GAAGgT,YAAc7R,EAAIvB,EAAE,OAAQ,iBAAiByJ,SAAS,CAAC7J,MAAS2B,EAAImE,UAAW3D,GAAG,CAACqF,MAAQ,SAASnF,GAAWA,EAAO4S,OAAOC,YAAiBvT,EAAImE,SAASzD,EAAO4S,OAAOjV,MAAK,OAAO2B,EAAIkB,GAAG,KAAMlB,EAAI0S,UAAWxS,EAAG,MAAM,CAACc,YAAY,UAAU,CAACd,EAAG,IAAI,CAACF,EAAIkB,GAAG,aAAalB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,8NAA8N,cAAcuB,EAAIkB,GAAG,KAAKhB,EAAG,QAAQ,CAACiT,WAAW,CAAC,CAACpV,KAAK,QAAQqV,QAAQ,UAAU/U,MAAO2B,EAAI2S,QAAS1K,WAAW,YAAYjH,YAAY,WAAWZ,MAAM,CAAC6G,GAAK,qBAAqB3I,KAAO,YAAY4J,SAAS,CAACsL,QAAUpR,MAAMqR,QAAQzT,EAAI2S,SAAS3S,EAAI0T,GAAG1T,EAAI2S,QAAQ,OAAO,EAAG3S,EAAI2S,SAAUnS,GAAG,CAACqH,OAAS,SAASnH,GAAQ,IAAIiT,EAAI3T,EAAI2S,QAAQiB,EAAKlT,EAAO4S,OAAOO,IAAID,EAAKJ,QAAuB,GAAGpR,MAAMqR,QAAQE,GAAK,CAAC,IAAaG,EAAI9T,EAAI0T,GAAGC,EAAhB,MAA4BC,EAAKJ,QAASM,EAAI,IAAI9T,EAAI2S,QAAQgB,EAAII,OAAO,CAAzE,QAAsFD,GAAK,IAAI9T,EAAI2S,QAAQgB,EAAIK,MAAM,EAAEF,GAAKC,OAAOJ,EAAIK,MAAMF,EAAI,IAAK,MAAM9T,EAAI2S,QAAQkB,CAAI,KAAK7T,EAAIkB,GAAG,KAAKhB,EAAG,QAAQ,CAACE,MAAM,CAAC8S,IAAM,uBAAuB,CAAClT,EAAIkB,GAAG,aAAalB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,0BAA2B,gBAAgBuB,EAAI2G,KAAK3G,EAAIkB,GAAG,KAAKhB,EAAG,cAAc,CAACE,MAAM,CAACzB,QAAUqB,EAAIrB,QAAQN,MAAQ2B,EAAIvB,EAAE,OAAQ,kBAAkB,gBAAgBuB,EAAIvB,EAAE,OAAQ,yBAAyBuB,EAAIkB,GAAG,KAAMlB,EAAI4H,OAAS5H,EAAI8G,QAAS5G,EAAG,IAAI,CAAC8G,MAAM,CAAEiN,QAASjU,EAAI4H,QAAS,CAAC5H,EAAIkB,GAAG,WAAWlB,EAAImB,GAAGnB,EAAI8G,SAAS,YAAY9G,EAAI2G,MAAM,IAChlE,EACsB,IDUtB,EACA,KACA,WACA,MAIA,MAAAuN,GAAejB,WEoGf,MAAAkB,GAAAC,EAAAA,EAAAC,MAAA1E,SAAA2E,QACA,MAAAH,GAAA9M,OChDOwG,iBACN,IACCpK,OAAO8Q,aAAalN,QACpB5D,OAAO+Q,eAAenN,QACtB,MAAMoN,QAAsBhR,OAAOiR,UAAUC,YAC7C,IAAK,MAAMD,KAAaD,QACjBhR,OAAOiR,UAAUE,eAAeF,EAAU3W,MAEjDqO,GAAOuB,MAAM,2BACd,CAAE,MAAO/F,GACRwE,GAAOxE,MAAM,mCAAoC,CAAEA,SACpD,CACD,CDqCAiN,GAGA,ME5H2KC,GF4H3K,CACA/W,KAAA,QAEAC,WAAA,CACAsI,UAAAA,EACAyL,sBAAAA,GACAQ,cAAAA,GACA2B,eAAAA,GACA/V,SAAAA,EAAAD,EACA4D,WAAAA,EAAAA,GAGAoC,KAAAA,KACA,CACAvF,SAAA,EACA4C,MAAAgC,EAAAA,EAAAA,GAAA,2BACAwR,mBAAA,EACAC,eAAA,EAGA7S,QAAAoB,EAAAA,EAAAA,GAAA,yBACAlB,UAAAkB,EAAAA,EAAAA,GAAA,2BACArB,aAAAqB,EAAAA,EAAAA,GAAA,8BACAjB,eAAAiB,EAAAA,EAAAA,GAAA,+BACA0R,kBAAA1R,EAAAA,EAAAA,GAAA,mCACA0O,mBAAA1O,EAAAA,EAAAA,GAAA,oCACAf,qBAAAe,EAAAA,EAAAA,GAAA,+BACAd,mBAAAc,EAAAA,EAAAA,GAAA,gCACAkP,qBAAAlP,EAAAA,EAAAA,GAAA,iCACA2R,mBAAA3R,EAAAA,EAAAA,GAAA,+BACAb,YAAA,MAAAyR,GAAAgB,OACAC,iBAAA7R,EAAAA,EAAAA,GAAA,gCACA8R,wBAAA9R,EAAAA,EAAAA,GAAA,oCACA+R,mBAAA/R,EAAAA,EAAAA,GAAA,+BACA4J,QAAA,WAAA1J,OAAAkM,SAAA4F,SACAnI,YAAA,cAAA3J,OAAAkM,SAAAC,SACA4F,eAAAjS,EAAAA,EAAAA,GAAA,2BACAZ,aAAAY,EAAAA,EAAAA,GAAA,2BAIAwC,QAAA,CACA0P,qBAAAA,GACAhS,OAAAkM,SAAAyB,MAAAhM,EAAAA,EAAAA,IAAA,oBACA,oBG7JIsQ,GAAO,GAEXA,GAAO1W,kBAAqBC,IAC5ByW,GAAOxW,cAAiBC,IACxBuW,GAAOtW,OAAUC,IAAAC,KAAa,aAC9BoW,GAAOnW,OAAUC,IACjBkW,GAAOjW,mBAAsBC,IAEhBC,IAAIgW,GAAAzX,EAASwX,IAKJC,GAAAzX,GAAWyX,GAAAzX,EAAO2B,QAAU8V,GAAAzX,EAAO2B,OCLzD,MAAA+V,IAXgB,EAAA7V,EAAA7B,GACd4W,GCTW,WAAkB,IAAI9U,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACc,YAAY,uBAAuB,EAAGhB,EAAIwV,eAAiBxV,EAAI0C,YAAa,CAACxC,EAAG,aAAa,CAACE,MAAM,CAACrC,KAAO,OAAO8X,KAAO,WAAW,CAAG7V,EAAI+U,mBAAsB/U,EAAIgV,eAA6C,KAA5BhV,EAAIyS,qBAAoyCzS,EAAIrB,SAAWqB,EAAI+U,kBAAmB7U,EAAG,MAAM,CAACY,IAAI,gBAAgBE,YAAY,uCAAuC,CAACd,EAAG,wBAAwB,CAACE,MAAM,CAAC6B,SAAWjC,EAAIuB,KAAK,eAAevB,EAAIkC,YAAY,wBAAwBlC,EAAIwC,oBAAoB,WAAWxC,EAAImN,QAAQ,eAAenN,EAAIoN,aAAa5M,GAAG,CAAC,kBAAkB,SAASE,GAAQV,EAAIuB,KAAKb,CAAM,EAAEuF,OAAS,SAASvF,GAAQV,EAAIrB,SAAU,CAAI,KAAKqB,EAAIkB,GAAG,KAAKhB,EAAG,WAAW,CAACE,MAAM,CAACC,QAAU,WAAW,aAAaL,EAAIvB,EAAE,OAAQ,sBAAsB6B,MAAO,GAAME,GAAG,CAACC,MAAQ,SAASC,GAAQV,EAAI+U,mBAAoB,CAAK,IAAI,CAAC/U,EAAIkB,GAAG,eAAelB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,SAAS,iBAAiB,IAAKuB,EAAIrB,SAAWqB,EAAIiV,iBAAkB/U,EAAG,MAAM,CAACY,IAAI,kBAAkBE,YAAY,oBAAoB,CAACd,EAAG,MAAM,CAACc,YAAY,2BAA2B,CAAEhB,EAAIgV,cAAe9U,EAAG,gBAAgB,CAACE,MAAM,CAAC6B,SAAWjC,EAAIuB,KAAK,sBAAsBvB,EAAIiS,mBAAmBzR,GAAG,CAAC,kBAAkB,SAASE,GAAQV,EAAIuB,KAAKb,CAAM,EAAEwI,MAAQ,SAASxI,GAAQV,EAAIgV,eAAgB,CAAK,KAAKhV,EAAI2G,MAAM,KAAkC,KAA5B3G,EAAIyS,oBAA4BvS,EAAG,MAAM,CAACA,EAAG,iBAAiB,CAACE,MAAM,CAAC6B,SAAWjC,EAAIuB,KAAK,wBAAwBvB,EAAIyS,qBAAqBjS,GAAG,CAAC,kBAAkB,SAASE,GAAQV,EAAIuB,KAAKb,CAAM,EAAEoV,KAAO9V,EAAIyV,0BAA0B,GAAGzV,EAAI2G,KAA1hFzG,EAAG,MAAM,CAACc,YAAY,sBAAsB,CAACd,EAAG,YAAY,CAACE,MAAM,CAAC6B,SAAWjC,EAAIuB,KAAK,eAAevB,EAAIkC,YAAY,eAAelC,EAAI0C,YAAYL,SAAWrC,EAAIqC,SAASF,OAASnC,EAAImC,OAAO,iBAAiBnC,EAAIsC,cAAc,wBAAwBtC,EAAIwC,oBAAoB,qBAAqBxC,EAAIyC,kBAAkB,eAAezC,EAAI2C,aAAanC,GAAG,CAAC,kBAAkB,SAASE,GAAQV,EAAIuB,KAAKb,CAAM,EAAEuF,OAAS,SAASvF,GAAQV,EAAIrB,SAAU,CAAI,KAAKqB,EAAIkB,GAAG,KAAMlB,EAAIoV,gBAAiBlV,EAAG,WAAW,CAACE,MAAM,CAACC,QAAU,WAAWC,KAAO,IAAIE,GAAG,CAACC,MAAQ,SAASC,GAAQA,EAAOyF,iBAAiBnG,EAAI+U,mBAAoB,CAAI,IAAI,CAAC/U,EAAIkB,GAAG,eAAelB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,yBAAyB,gBAAgBuB,EAAI2G,KAAK3G,EAAIkB,GAAG,KAAMlB,EAAIiV,kBAA8C,KAA1BjV,EAAIiS,kBAA0B/R,EAAG,WAAW,CAACE,MAAM,CAAC6G,GAAK,gBAAgBmK,KAAOpR,EAAIiS,kBAAkB5R,QAAU,yBAAyBC,KAAO,KAAK,CAACN,EAAIkB,GAAG,eAAelB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,qBAAqB,gBAAiBuB,EAAIiV,mBAAqBjV,EAAIgV,cAAe9U,EAAG,WAAW,CAACE,MAAM,CAAC6G,GAAK,gBAAgB5G,QAAU,WAAWC,KAAO,IAAIE,GAAG,CAACC,MAAQ,SAASC,GAAQA,EAAOyF,iBAAiBnG,EAAIgV,eAAgB,CAAI,IAAI,CAAChV,EAAIkB,GAAG,eAAelB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,qBAAqB,gBAAgBuB,EAAI2G,MAAM,MAA+xC,CAACzG,EAAG,aAAa,CAACE,MAAM,CAACrC,KAAO,OAAO8X,KAAO,WAAW,CAAC3V,EAAG,aAAa,CAACE,MAAM,CAAC9B,KAAO,OAAOoI,MAAQ1G,EAAIvB,EAAE,OAAQ,6BAA6B,CAACuB,EAAIkB,GAAG,aAAalB,EAAImB,GAAGnB,EAAIvB,EAAE,OAAQ,gHAAgH,eAAe,IAAIuB,EAAIkB,GAAG,KAAKhB,EAAG,MAAM,CAACc,YAAY,gCAAgCZ,MAAM,CAAC6G,GAAK,uBAAuBjH,EAAI6G,GAAI7G,EAAIsV,kBAAmB,SAASS,EAAiBhP,GAAO,OAAO7G,EAAG,WAAW,CAACY,IAAIiG,EAAMC,MAAM,CAAC+O,EAAiB/O,OAAO5G,MAAM,CAACC,QAAU,YAAYC,MAAO,EAAKuL,KAAO,OAAOuF,KAAO2E,EAAiB3E,OAAO,CAACpR,EAAIkB,GAAG,WAAWlB,EAAImB,GAAG4U,EAAiBhY,MAAM,WAAW,GAAG,IAAI,EACngH,EACsB,IDUtB,EACA,KACA,WACA,0CEVA,MAAMiY,KAAYvS,OAAOwS,YCIZC,GAAYzS,OAAO0S,cAAgB,CAAC,ECFjDC,QAFkDjT,IAA5BM,OAAO4S,kBAAkC5S,OAAO4S,iCCAtE,MAEAC,GAFe7S,OAAO8S,YAAc,CAAC,ECA/BC,GAASvH,SACbwH,qBAAqB,QAAQ,GAC7BC,aAAa,aACTC,GAAc1H,SAClBwH,qBAAqB,QAAQ,GAC7BC,aAAa,yBAEFE,QAAyBzT,IAAXqT,IAAuBA,GCLrC7I,GAFAlK,OAAOoT,8DCapB,MAAMC,GAAU,CAGfC,eAAgB,GAEhBC,WAAY,GAGZC,uBAAwB,EAExBC,qBAAsB,EAEtBC,qBAAsB,EAEtBC,0BAA2B,EAE3BC,uBAAwB,EAYxBC,MAAO,SAASC,EAAM7Q,EAAOqB,EAAUyP,GACtCvX,KAAK6G,QACJyQ,EACA7Q,EACA,QACAoQ,GAAQW,UACR1P,EACAyP,EAEF,EAYAE,KAAM,SAASH,EAAM7Q,EAAOqB,EAAUyP,GACrCvX,KAAK6G,QAAQyQ,EAAM7Q,EAAO,OAAQoQ,GAAQW,UAAW1P,EAAUyP,EAChE,EAaAG,QAAS,SAASJ,EAAM7Q,EAAOqB,EAAUyP,GACxC,OAAOvX,KAAK6G,QACXyQ,EACA7Q,EACA,SACAoQ,GAAQC,eACRhP,EACAyP,EAEF,EAYAI,mBAAoB,SAASL,EAAM7Q,EAAOmR,EAAUf,GAAQE,WAAYjP,EAAWA,QAClF,OAAQ,IAAI+P,GAAAA,IACVC,QAAQrR,GACRsR,QAAQT,GACRU,WAAWJ,IAAYf,GAAQE,WAC7B,CACA,CACCzP,OAAO9I,EAAAA,EAAAA,GAAE,OAAQ,OACjB4B,QAAS,QACT0H,SAAUA,KACTA,EAASmQ,SAAU,EACnBnQ,GAAS,MAIX+O,GAAQqB,kBAAkBN,EAAS9P,IACrCyE,QACA4L,OACAnH,KAAK,KACAlJ,EAASmQ,SACbnQ,GAAS,IAGb,EAWAsQ,YAAa,SAASd,EAAM7Q,EAAOqB,GAClC,OAAQ,IAAI+P,GAAAA,IACVC,QAAQrR,GACRsR,QAAQ,IACRC,WAAW,CACX,CACC1Q,OAAO9I,EAAAA,EAAAA,GAAE,OAAQ,MACjBsJ,SAAUA,QAEX,CACCR,OAAO9I,EAAAA,EAAAA,GAAE,OAAQ,OACjB4B,QAAS,UACT0H,SAAUA,KACTA,EAASmQ,SAAU,EACnBnQ,GAAS,OAIXyE,QACA8L,QAAQf,GACRa,OACAnH,KAAK,KACAlJ,EAASmQ,SACbnQ,GAAS,IAGb,EAcAwQ,OAAQ,SAAShB,EAAM7Q,EAAOqB,EAAUyP,EAAOzZ,EAAMoG,GACpD,OAAO,IAAIyK,QAASC,KACnB2J,EAAAA,GAAAA,IACCC,EAAAA,EAAAA,IAAqB,IAAM7J,QAAA8J,IAAA,CAAAC,EAAA7F,EAAA,MAAA6F,EAAA7F,EAAA,QAAA7B,KAAA0H,EAAArZ,KAAAqZ,EAAA,SAC3B,CACCpB,OACAxZ,KAAM2I,EACNqB,WACA6Q,UAAW7a,EACX8a,aAAc1U,GAEf,IAAI2U,KACH/Q,KAAY+Q,GACZjK,OAIJ,EA2BAkK,UAAAA,CAAWrS,EAAOqB,EAAUiR,GAAc,EAAOC,OAAW9V,EAAW+V,OAAS/V,EAAW7E,EAAO6a,GAAAA,GAAeC,OAAQC,OAAOlW,EAAWpE,OAAUoE,GAOpJ,MAAMmW,EAAiBA,CAACvY,EAAIzC,KAC3B,MAAMib,EAAWC,IAChB,MAAMC,EAAOD,GAAMC,MAAQ,GAC3B,IAAIJ,EAAOG,GAAMH,MAAQ,GAKzB,OAHIA,EAAKK,WAAWD,KACnBJ,EAAOA,EAAKrF,MAAMyF,EAAKjY,SAAW,KAE5B6X,GAGR,OAAIL,EACKW,GAAU5Y,EAAG4Y,EAAMlL,IAAI8K,GAAUjb,GAEjCqb,GAAU5Y,EAAGwY,EAAQI,EAAM,IAAKrb,IAwBpCsb,GAAUC,EAAAA,GAAAA,IAAqBnT,GAGjCpI,IAAS2B,KAAKoX,wBAChBtY,EAAQ8Y,SAAW,IAAIiC,QAASC,IAChCH,EAAQI,UAAU,CACjBjS,SAAUuR,EAAevR,EAAUgS,EAAOzb,MAC1CiJ,MAAOwS,EAAOxC,KACdlX,QAAS0Z,EAAOE,cAAgB,UAAY,gBAI9CL,EAAQM,iBAAiB,CAACP,EAAON,KAChC,MAAMxB,EAAU,IACT2B,GAAQG,EACTrG,EAASkG,GAAMW,aAAeX,GAAMY,WAAYA,EAAAA,GAAAA,UAASf,GAyB/D,OAvBI/a,IAAS6a,GAAAA,GAAeC,QAC3BvB,EAAQwC,KAAK,CACZtS,SAAUuR,EAAevR,EAAUoR,GAAAA,GAAeC,QAClD7R,MAAOiS,IAASvZ,KAAKqa,aAAc7b,EAAAA,EAAAA,GAAE,OAAQ,gBAAiB,CAAE8b,KAAMjH,KAAY7U,EAAAA,EAAAA,GAAE,OAAQ,UAC5F4B,QAAS,YAGP/B,IAAS6a,GAAAA,GAAeqB,UAAYlc,IAAS6a,GAAAA,GAAesB,MAC/D5C,EAAQwC,KAAK,CACZtS,SAAUuR,EAAevR,EAAUoR,GAAAA,GAAesB,MAClDlT,MAAO+L,GAAS7U,EAAAA,EAAAA,GAAE,OAAQ,mBAAoB,CAAE6U,YAAY7U,EAAAA,EAAAA,GAAE,OAAQ,QACtE4B,QAAS,UACTqa,KAAMC,KAGJrc,IAAS6a,GAAAA,GAAeyB,MAAQtc,IAAS6a,GAAAA,GAAeqB,UAC3D3C,EAAQwC,KAAK,CACZtS,SAAUuR,EAAevR,EAAUoR,GAAAA,GAAeyB,MAClDrT,MAAO+L,GAAS7U,EAAAA,EAAAA,GAAE,OAAQ,mBAAoB,CAAE6U,YAAY7U,EAAAA,EAAAA,GAAE,OAAQ,QACtE4B,QAAS/B,IAAS6a,GAAAA,GAAeyB,KAAO,UAAY,YACpDF,qOAGK7C,IAILoB,GACHW,EAAQiB,kBAAsC,iBAAb5B,EAAwB,CAACA,GAAaA,GAAY,IAErD,mBAApBla,GAAS+b,QACnBlB,EAAQmB,UAAWvB,GAASza,EAAQ+b,OA/DXtB,KAAI,CAC7BvS,GAAIuS,EAAKwB,QAAU,KACnB3B,KAAMG,EAAKH,KACXJ,SAAUO,EAAKyB,MAAQ,KACvBC,MAAO1B,EAAK0B,OAAOC,WAAa,KAChCC,YAAa5B,EAAK4B,YAClBrd,KAAMyb,EAAK6B,YAAY1E,aAAe6C,EAAKY,SAC3CkB,KAAM9B,EAAK6B,YAAYC,MAAQ,KAC/BC,WAAY/B,EAAK6B,YAAYE,YAAc,KAC3CC,UAAWhC,EAAK6B,YAAYG,WAAa,KACzCC,oBAAqBjC,EAAK6B,YAAYI,qBAAuB,KAC7Df,KAAM,KACNgB,iBAAkB,OAmDyBC,CAAiBnC,KAE7DI,EAAQgC,kBAAoD,IAAnC7c,GAAS8c,uBAAkC5C,GAAU6C,SAAS,0BAA2B,GAChHC,eAAe/C,GACfgD,QAAQ3C,GACR7M,QACAyP,MACH,EAeAnV,QAAS,SAASoV,EAASxV,EAAOyV,EAAYtE,EAAS9P,EAAWA,OAAUyP,EAAO4E,GAClF,MAAMxC,GAAW,IAAI9B,GAAAA,IACnBC,QAAQrR,GACRsR,QAAQoE,EAAY,GAAKF,GACzBjE,WAAWnB,GAAQqB,kBAAkBN,EAAS9P,IAEhD,OAAQoU,GACP,IAAK,QACJvC,EAAQyC,YAAY,WACpB,MACD,IAAK,SACJzC,EAAQyC,YAAY,QAMtB,MAAMC,EAAS1C,EAAQpN,QAMvB,OAJI4P,GACHE,EAAOhE,QAAQ4D,GAGTI,EAAOlE,OAAOnH,KAAK,KACpBlJ,EAASwU,UACbxU,GAAS,IAGZ,EASAoQ,iBAAAA,CAAkBN,EAAS9P,GAC1B,MAAMyU,EAAa,GAEnB,OAA2B,iBAAZ3E,EAAuBA,EAAQvZ,KAAOuZ,GACpD,KAAKf,GAAQC,eACZyF,EAAWnC,KAAK,CACf9S,MAAOsQ,GAAS4E,SAAUhe,EAAAA,EAAAA,GAAE,OAAQ,MACpCsJ,SAAUA,KACTA,EAASwU,UAAW,EACpBxU,GAAS,MAGXyU,EAAWnC,KAAK,CACf9S,MAAOsQ,GAASF,UAAWlZ,EAAAA,EAAAA,GAAE,OAAQ,OACrC4B,QAAS,UACT0H,SAAUA,KACTA,EAASwU,UAAW,EACpBxU,GAAS,MAGX,MACD,KAAK+O,GAAQE,WACZwF,EAAWnC,KAAK,CACf9S,MAAOsQ,GAASF,UAAWlZ,EAAAA,EAAAA,GAAE,OAAQ,MACrC4B,QAAS,UACT0H,SAAUA,KACTA,EAASwU,UAAW,EACpBxU,GAAS,MAGX,MACD,QACCqE,GAAOxE,MAAM,8BAGf,OAAO4U,CACR,GAGDE,GAAA,GCnZO,SAASC,KACZ,OAAO1N,SAAS2N,KAAKC,QAAQC,YACjC,CCKA,SAASC,GAAc5V,EAAKjD,GAC3B,IACInG,EACAif,EAFAC,EAAU,GAKd,GAFAhd,KAAKid,kBAAoB,GACzBjd,KAAKkd,QAAS,EACVjZ,EACH,IAAKnG,KAAQmG,EACZ+Y,GAAWlf,EAAO,IAAMqf,mBAAmBlZ,EAAKnG,IAAS,IAG3Dkf,GAAW,gBAAkBG,mBAAmBT,MAChDK,EAAW,KACe,IAAtB7V,EAAIrC,QAAQ,OACfkY,EAAW,KAEZ/c,KAAKod,OAAS,IAAIC,YAAYnW,EAAM6V,EAAWC,GAC/Chd,KAAKod,OAAOE,UAAY,SAASzK,GAChC,IAAK,IAAIrI,EAAI,EAAGA,EAAIxK,KAAKid,kBAAkB1b,OAAQiJ,IAClDxK,KAAKid,kBAAkBzS,GAAGqG,KAAKuD,MAAMvB,EAAE5O,MAEzC,EAAE5E,KAAKW,MAEPA,KAAKud,OAAO,eAAgB,SAAStZ,GACvB,UAATA,GACHjE,KAAKwd,OAEP,EAAEne,KAAKW,MACR,CACA8c,GAAcW,UAAY,CACzBR,kBAAmB,GAOnBM,OAAQ,SAASlf,EAAMyJ,GAClBA,GAAYA,EAAS4V,OACpBrf,EACH2B,KAAKod,OAAOO,iBAAiBtf,EAAM,SAASwU,QACrB,IAAXA,EAAE5O,KACZ6D,EAAS+I,KAAKuD,MAAMvB,EAAE5O,OAEtB6D,EAAS,GAEX,GAAG,GAEH9H,KAAKid,kBAAkB7C,KAAKtS,GAG/B,EAIA0V,MAAO,WACNxd,KAAKkd,QAAS,EACdld,KAAKod,OAAOI,OACb,GAGD,MAAAI,GAAA,GCOAC,GA/Da,CAYZC,KAAMC,EAAAA,GAUNC,SAAQpb,EAAAqb,GAMRC,YAAaC,EAAAA,GAgBbC,UAASxb,EAAAC,GAgBTwb,gBAAeA,EAAAA,IC1EVC,GAAY,IAAIC,IAQf,SAASC,GAAWC,GAC1B,QAAwB,IAAbA,EAAX,CAIA,KAAOA,KAAYjb,OAAOR,GAAG0b,aAAaC,SACzCF,EAAWjb,OAAOR,GAAG0b,aAAaC,QAAQF,GAG3C,IAAKH,GAAUM,IAAIH,GAAW,CAC7B,IAAII,GAAU,EACVzF,EAAO,GAEX,GAAwB,KAApBpW,GAAGC,MAAM6b,QAAiB3c,MAAMqR,QAAQxQ,GAAG0b,aAAaK,OAAO/b,GAAGC,MAAM6b,SAAU,CACrF1F,GAAO4F,EAAAA,EAAAA,MAAe,WAAaxb,OAAOR,GAAGC,MAAM6b,OAAS,uBAC5D,MAAMrE,EAAOwE,GAAgBR,EAAUjb,OAAOR,GAAG0b,aAAaK,OAAO/b,GAAGC,MAAM6b,SAC1ErE,IACHoE,GAAU,EACVzF,GAAQqB,EAAO,OAEjB,CAGKoE,IACJzF,GAAOjU,EAAAA,EAAAA,IAAY,oCAAsC8Z,GAAgBR,EAAUjb,OAAOR,GAAG0b,aAAaQ,OAAS,SAGpH9F,GAAQ,MAAQ5V,OAAO2b,IAAIC,QAAQC,YAEnCf,GAAUgB,IAAIb,EAAUrF,EACzB,CAEA,OAAOkF,GAAUhP,IAAImP,EA7BrB,CA8BD,CAUA,SAASQ,GAAgBR,EAAUS,GAClC,MAAMzE,EAAOgE,EAAS3U,QAAQ,IAAIyV,OAAO,IAAK,KAAM,KAGpD,MAAiB,QAAbd,GAAsBS,EAAMrD,SAAS,UACjC,SACgB,kBAAb4C,GAAgCS,EAAMrD,SAAS,oBAClD,mBACgB,eAAb4C,GAA6BS,EAAMrD,SAAS,iBAC/C,gBACgB,eAAb4C,GAA6BS,EAAMrD,SAAS,iBAC/C,gBACiB,iBAAb4C,GAA4C,sBAAbA,IAAqCS,EAAMrD,SAAS,mBAEpFqD,EAAMrD,SAASpB,GAClBA,EACGyE,EAAMrD,SAASpB,EAAK+E,MAAM,KAAK,IAClC/E,EAAK+E,MAAM,KAAK,GACbN,EAAMrD,SAAS,QAClB,OAGD,KATC,iBAUT,CAKO,SAAS4D,KACfnB,GAAUlX,OACX,CC9EA,MAAAwL,GAAA,CAMI8M,WAAAA,CAAYC,GACR3f,KAAK4f,YAAYD,GAAUnhB,EAAAA,EAAAA,GAAE,OAAQ,YACzC,EAOAohB,WAAAA,CAAYD,EAAU9Y,GAClB,MAAMgZ,EAAK7Q,SAAS8Q,cAAcH,GAC7BE,GAAQA,aAAcE,cAG3BF,EAAGG,YAAcnZ,EACjBgZ,EAAGI,UAAUC,OAAO,WACpBL,EAAGI,UAAUC,OAAO,SACpBL,EAAGM,kBAAkBtG,QAASuG,GAAcA,EAAU5D,UACtDqD,EAAGQ,MAAMC,QAAU,QACvB,EAUAC,cAAAA,CAAeZ,EAAU3P,GACrBhQ,KAAKwgB,eAAeb,EAAU3P,EAClC,EAUAwQ,cAAAA,CAAeb,EAAU3P,GACG,YAApBA,EAASkC,OACTlS,KAAKygB,gBAAgBd,EAAU3P,EAAS/L,KAAK4C,SAG7C7G,KAAK0gB,cAAcf,EAAU3P,EAAS/L,KAAK4C,QAEnD,EAOA4Z,eAAAA,CAAgBd,EAAU9Y,GACtB,MAAMgZ,EAAK7Q,SAAS8Q,cAAcH,GAC7BE,GAAQA,aAAcE,cAG3BF,EAAGG,YAAcnZ,EACjBgZ,EAAGI,UAAUC,OAAO,SACpBL,EAAGI,UAAUU,IAAI,WACjBd,EAAGM,kBAAkBtG,QAASuG,GAAcA,EAAU5D,UACtDhZ,OAAOod,WAKP,WACI,KAAKf,GAAQA,aAAcE,aACvB,OAGJ,MAAMK,EAAYP,EAAGgB,UAAU,CAC3B,CAAEC,QAAS,GACX,CAAEA,QAAS,IACZ,CACCC,SAAU,IACVjV,KAAM,aAENsU,EACAA,EAAUzC,iBAAiB,SAAU,KACjCkC,EAAGQ,MAAMC,QAAU,SAIvB9c,OAAOod,WAAW,KACdf,EAAGQ,MAAMC,QAAU,QACpB,IAEX,EA3B2B,KAC3BT,EAAGQ,MAAMC,QAAU,QA2BvB,EAOAI,aAAAA,CAAcf,EAAU9Y,GACpB,MAAMgZ,EAAK7Q,SAAS8Q,cAAcH,GAC7BE,GAAQA,aAAcE,cAG3BF,EAAGG,YAAcnZ,EACjBgZ,EAAGI,UAAUC,OAAO,WACpBL,EAAGI,UAAUU,IAAI,SACjBd,EAAGQ,MAAMC,QAAU,QACvB,mBClHJ,MAAAU,GAAA,CAKCC,6BAA4BA,KACpBC,EAAAA,GAAAA,MAURC,2BAAAA,CAA4BrZ,EAAUhJ,EAASsiB,IAC9CC,EAAAA,GAAAA,MAAkBrQ,KAAKlJ,EAAUsZ,EAClC,GCvBDE,GAAA,CAKCC,SAAU,CAAC,EAQXvD,QAAAA,CAASwD,EAAYC,GACpB,IAAIH,EAAUthB,KAAKuhB,SAASC,GACvBF,IACJA,EAAUthB,KAAKuhB,SAASC,GAAc,IAEvCF,EAAQlH,KAAKqH,EACd,EASAC,UAAAA,CAAWF,GACV,OAAOxhB,KAAKuhB,SAASC,IAAe,EACrC,EASAG,MAAAA,CAAOH,EAAYI,EAAc9iB,GAChC,MAAMwiB,EAAUthB,KAAK0hB,WAAWF,GAChC,IAAK,IAAIhX,EAAI,EAAGA,EAAI8W,EAAQ/f,OAAQiJ,IAC/B8W,EAAQ9W,GAAGmX,QACdL,EAAQ9W,GAAGmX,OAAOC,EAAc9iB,EAGnC,EASA+iB,MAAAA,CAAOL,EAAYI,EAAc9iB,GAChC,MAAMwiB,EAAUthB,KAAK0hB,WAAWF,GAChC,IAAK,IAAIhX,EAAI,EAAGA,EAAI8W,EAAQ/f,OAAQiJ,IAC/B8W,EAAQ9W,GAAGqX,QACdP,EAAQ9W,GAAGqX,OAAOD,EAAc9iB,EAGnC,GC9DYmE,GAAQO,OAAOse,QAAU,CAAC,yCCJhCC,GAAA,SAKAvI,GAAA,iBAAAwI,MAAAA,KAAAA,OAAAA,MAAAA,MACiB,iBAANnX,YAAsBA,WAAMoX,SAAYpX,YAAUA,YACpEqX,SAAA,cAAAA,IACA,GAGOC,GAAAhgB,MAAAsb,UAAA2E,GAAA5Z,OAAAiV,UACA4E,GAAA,oBAAAC,OAAAA,OAAA7E,UAAA,KAGArD,GAAA+H,GAAA/H,KACPrG,GAAAoO,GAAApO,MACIwO,GAAQH,GAAAI,SACRC,GAAcL,GAAAM,eAGXC,GAAA,oBAAApY,YACPqY,GAAA,oBAAAC,SAIOC,GAAA3gB,MAAAqR,QACPuP,GAAAva,OAAAwa,KACAC,GAAAza,OAAA0a,OACAC,GAAAR,IAAApY,YAAA6Y,OAGOC,GAAAC,MACPC,GAAAC,SAGOC,IAAA,CAAmBjB,SAAA,MAAekB,qBAAA,YAClCC,GAAA,sCACP,0DAGOC,GAAAC,KAAAC,IAAA,QCrCQ,SAAAC,GAAAC,EAAAC,GAEf,OADAA,EAAA,MAAAA,EAAAD,EAAAziB,OAAA,GAAA0iB,EACA,WAIA,IAHA,IAAA1iB,EAAAsiB,KAAAK,IAAAvS,UAAApQ,OAAA0iB,EAAA,GACAE,EAAAhiB,MAAAZ,GACAuF,EAAA,EACWA,EAAAvF,EAAgBuF,IAC3Bqd,EAAArd,GAAA6K,UAAA7K,EAAAmd,GAEA,OAAAA,GACA,cAAAD,EAAAtG,KAAA1d,KAAAmkB,GACA,cAAAH,EAAAtG,KAAA1d,KAAA2R,UAAA,GAAAwS,GACA,cAAAH,EAAAtG,KAAA1d,KAAA2R,UAAA,GAAAA,UAAA,GAAAwS,GAEA,IAAAtL,EAAA1W,MAAA8hB,EAAA,GACA,IAAAnd,EAAA,EAAoBA,EAAAmd,EAAoBnd,IACxC+R,EAAA/R,GAAA6K,UAAA7K,GAGA,OADA+R,EAAAoL,GAAAE,EACAH,EAAAtS,MAAA1R,KAAA6Y,EACA,CACA,CCzBe,SAAAuL,GAAAC,GACf,IAAAhmB,SAAAgmB,EACA,mBAAAhmB,GAAA,WAAAA,KAAAgmB,CACA,CCHe,SAAAC,GAAAD,GACf,cAAAA,CACA,CCFe,SAAAE,GAAAF,GACf,gBAAAA,CACA,CCAe,SAAAG,GAAAH,GACf,WAAAA,IAAA,IAAAA,GAAkD,qBAAR9B,GAAQ7E,KAAA2G,EAClD,CCJe,SAAAI,GAAAJ,GACf,SAAAA,GAAA,IAAAA,EAAAK,SACA,CCAe,SAAAC,GAAA7mB,GACf,IAAA8mB,EAAA,WAAA9mB,EAAA,IACA,gBAAAumB,GACA,OAAW9B,GAAQ7E,KAAA2G,KAAAO,CACnB,CACA,CCNA,MAAAC,GAAeF,GAAS,UCAxBG,GAAeH,GAAS,UCAxBI,GAAeJ,GAAS,QCAxBK,GAAeL,GAAS,UCAxBngB,GAAemgB,GAAS,SCAxBM,GAAeN,GAAS,UCAxBO,GAAeP,GAAS,eCCxB,IAAAQ,GAAiBR,GAAS,YAI1BS,GAAe5L,GAAIxK,UAAawK,GAAIxK,SAAAqW,WACR,iBAAAC,WAAA,mBAAAF,KAC5BD,GAAA,SAAAd,GACA,yBAAAA,IAAA,CACA,GAGA,MAAAkB,GAAA,GCZAC,GAAeb,GAAS,UCOjB,IAAAc,GACD7C,MAAgB,kBAAAhT,KAAAtR,OAAAukB,YAAkD2C,GAAY,IAAA3C,SAAA,IAAAtY,YAAA,MAEpFmb,GAAA,oBAAAnH,KAA4CiH,GAAY,IAAAjH,KCPxDoH,GAAiBhB,GAAS,YAU1B,MAAAiB,GAAgBH,GAJhB,SAAApB,GACA,aAAAA,GAAwBkB,GAAUlB,EAAAwB,UAAiBX,GAAab,EAAA9a,OAChE,EAE8Boc,GCV9BnS,GAAesP,IAAiB6B,GAAS,SCF1B,SAAA/F,GAAAyF,EAAAxjB,GACf,aAAAwjB,GAAwB5B,GAAc/E,KAAA2G,EAAAxjB,EACtC,CCFA,IAAAilB,GAAkBnB,GAAS,cAI3B,WACAmB,GAAAnU,aACAmU,GAAA,SAAAzB,GACA,OAAazF,GAAGyF,EAAA,SAChB,EAEA,CANA,GAQA,MAAA0B,GAAA,GCXe,SAASC,GAAQ3B,GAChC,OAAUY,GAAQZ,IAASd,GAASc,KAAAf,MAAA2C,WAAA5B,GACpC,CCFe,SAAS6B,GAAK7B,GAC7B,OAASS,GAAQT,IAAShB,GAAMgB,EAChC,CCLe,SAAA8B,GAAA/nB,GACf,kBACA,OAAAA,CACA,CACA,CCFe,SAAAgoB,GAAAC,GACf,gBAAAC,GACA,IAAAC,EAAAF,EAAAC,GACA,uBAAAC,GAAAA,GAAA,GAAAA,GAAmF3C,EACnF,CACA,CCPe,SAAA4C,GAAA3lB,GACf,gBAAAwjB,GACA,aAAAA,OAAA,EAAAA,EAAAxjB,EACA,CACA,CCFA,MAAA4lB,GAAeD,GAAe,cCE9BE,GAAeN,GAAwBK,ICCvC,IAAAE,GAAA,8EAQA,MAAAC,GAAejE,GAPf,SAAA0B,GAGA,OAASlB,GAAgBA,GAAYkB,KAAUuB,GAAUvB,GACzCqC,GAAYrC,IAAAsC,GAAA/W,KAAgC2S,GAAQ7E,KAAA2G,GACpE,EAEoD8B,IAAQ,GCX5DU,GAAeL,GAAe,UCoBf,SAAAM,GAAAzC,EAAArB,GACfA,EAhBA,SAAAA,GAEA,IADA,IAAA+D,EAAA,GACAC,EAAAhE,EAAAzhB,OAAAiJ,EAAA,EAAmCA,EAAAwc,IAAOxc,EAAAuc,EAAA/D,EAAAxY,KAAA,EAC1C,OACAyc,SAAA,SAAApmB,GAA8B,WAAAkmB,EAAAlmB,EAAA,EAC9BuZ,KAAA,SAAAvZ,GAEA,OADAkmB,EAAAlmB,IAAA,EACAmiB,EAAA5I,KAAAvZ,EACA,EAEA,CAMAqmB,CAAAlE,GACA,IAAAmE,EAAmBxD,GAAkBpiB,OACrC6G,EAAAic,EAAAjc,YACAgf,EAAe7B,GAAUnd,IAAAA,EAAAqV,WAA2C2E,GAGpEiF,EAAA,cAGA,IAFMzI,GAAGyF,EAAAgD,KAAArE,EAAAiE,SAAAI,IAAArE,EAAA5I,KAAAiN,GAETF,MACAE,EAAW1D,GAAkBwD,MAC7B9C,GAAAA,EAAAgD,KAAAD,EAAAC,KAAArE,EAAAiE,SAAAI,IACArE,EAAA5I,KAAAiN,EAGA,CChCe,SAAArE,GAAAqB,GACf,IAAOD,GAAQC,GAAA,SACf,GAAMtB,GAAU,OAASA,GAAUsB,GACnC,IAAArB,EAAA,GACA,QAAAniB,KAAAwjB,EAA2BzF,GAAGyF,EAAAxjB,IAAAmiB,EAAA5I,KAAAvZ,GAG9B,OADM4iB,IAAYqD,GAAmBzC,EAAArB,GACrCA,CACA,CCPe,SAAAsE,GAAAjD,GACf,SAAAA,EAAA,SAGA,IAAA9iB,EAAeslB,GAASxC,GACxB,uBAAA9iB,IACIiS,GAAO6Q,IAASQ,GAAQR,IAAS0B,GAAW1B,IAChD,IAAA9iB,EACuB,IAAdslB,GAAU7D,GAAIqB,GACvB,CCde,SAAAkD,GAAAC,EAAArnB,GACf,IAAAsnB,EAAczE,GAAI7iB,GAAAoB,EAAAkmB,EAAAlmB,OAClB,SAAAimB,EAAA,OAAAjmB,EAEA,IADA,IAAA8iB,EAAA7b,OAAAgf,GACAhd,EAAA,EAAkBA,EAAAjJ,EAAYiJ,IAAA,CAC9B,IAAA3J,EAAA4mB,EAAAjd,GACA,GAAArK,EAAAU,KAAAwjB,EAAAxjB,MAAAA,KAAAwjB,GAAA,QACA,CACA,QACA,CCPe,SAAAqD,GAAArD,GACf,OAAAA,aAAAqD,GAAArD,EACArkB,gBAAA0nB,QACA1nB,KAAA2nB,SAAAtD,GADA,IAAAqD,GAAArD,EAEA,CCLe,SAAAuD,GAAAC,GACf,WAAApe,WACAoe,EAAAte,QAAAse,EACAA,EAAAC,YAAA,EACIrB,GAAaoB,GAEjB,CDCAH,GAAA3F,QAAYA,GAGZ2F,GAAAjK,UAAArf,MAAA,WACA,OAAA4B,KAAA2nB,QACA,EAIAD,GAAAjK,UAAAsK,QAAAL,GAAAjK,UAAAuK,OAAAN,GAAAjK,UAAArf,MAEAspB,GAAAjK,UAAA+E,SAAA,WACA,OAAAlkB,OAAA0B,KAAA2nB,SACA,EEZA,IAAAM,GAAA,oBAGe,SAAAC,GAAAC,EAAAC,GAKf,IAJA,IAAAC,EAAA,EAAeF,EAAAA,EAAAC,EAAAA,IAEfE,EAAA,GAAAC,EAAA,GAEAF,EAAA9mB,QAAA,CACA,IAAAinB,EAAAH,EAAAI,MACA,QAAAD,EAAA,CAWA,IALAL,EAAAK,EAAAL,MACAC,EAAAI,EAAAJ,GAIA,CACA,OAAAD,GAAA,EAAAA,GAAA,EAAAC,EAAA,SACA,QACA,CAEA,SAAAD,GAAA,MAAAC,EAAA,SAEA,GAAAD,GAAAA,EAAA,CACA,GAAAC,GAAAA,EAAA,SACA,QACA,CAEA,IAAA/pB,SAAA8pB,EACA,gBAAA9pB,GAAA,WAAAA,GAAA,iBAAA+pB,EAAA,SAIAD,aAAqBT,KAACS,EAAAA,EAAAR,UACtBS,aAAqBV,KAACU,EAAAA,EAAAT,UAEtB,IAAAe,EAAoBnG,GAAQ7E,KAAAyK,GAC5B,GAAAO,IAAsBnG,GAAQ7E,KAAA0K,GAAA,SAE9B,GAAQ3C,IAAc,mBAAAiD,GAAsC9C,GAAUuC,GAAA,CACtE,IAAWvC,GAAUwC,GAAA,SACrBM,EAAAT,EACA,CACA,OAAAS,GAEA,sBAEA,sBAGA,MAAAP,GAAA,GAAAC,EAAA,SACA,SACA,sBACAC,EAAAjO,KAAA,CAAiB+N,GAAAA,EAAAC,GAAAA,IACjB,SACA,oBACA,uBAIA,IAAAD,KAAAC,EAAA,SACA,SACA,sBACA,GAAU/F,GAAW0F,QAAArK,KAAAyK,KAAqB9F,GAAW0F,QAAArK,KAAA0K,GAAA,SACrD,SACA,2BACA,KAAAH,GAEAI,EAAAjO,KAAA,CAAiB+N,EAAGP,GAAYO,GAAAC,EAAQR,GAAYQ,KACpD,SAGA,IAAAO,EAAA,mBAAAD,EACA,IAAAC,GAAsB/B,GAAYuB,GAAA,CAElC,GADuB1B,GAAa0B,KACX1B,GAAa2B,GAAA,SACtC,GAAAD,EAAA5e,SAAA6e,EAAA7e,QAAA4e,EAAAL,aAAAM,EAAAN,WAAA,SACAa,GAAA,CACA,CACA,IAAAA,EAAA,CACA,oBAAAR,GAAA,iBAAAC,EAAA,SAIA,IAAAQ,EAAAT,EAAA/f,YAAAygB,EAAAT,EAAAhgB,YACA,GAAAwgB,IAAAC,KAA+BtD,GAAUqD,IAAAA,aAAAA,GACVrD,GAAUsD,IAAAA,aAAAA,IACzC,gBAAAV,GAAA,gBAAAC,EACA,QAEA,CAMA,IADA,IAAA7mB,EAAA+mB,EAAA/mB,OACAA,KAGA,GAAA+mB,EAAA/mB,KAAA4mB,EAAA,CACA,GAAAI,EAAAhnB,KAAA6mB,EAAA,MACA,QACA,CAEA,KAAA7mB,GAAA,GAQA,GALA+mB,EAAAlO,KAAA+N,GACAI,EAAAnO,KAAAgO,GACAC,EAAAjO,MAAA,GAGAuO,EAAA,CAGA,IADApnB,EAAA4mB,EAAA5mB,UACA6mB,EAAA7mB,OAAA,SAEA,KAAAA,KACA8mB,EAAAjO,KAAA,CAAmB+N,EAAAA,EAAA5mB,GAAA6mB,EAAAA,EAAA7mB,IAEnB,KAAM,CAEN,IAAsBV,EAAtB4mB,EAAkBzE,GAAImF,GAGtB,GAFA5mB,EAAAkmB,EAAAlmB,OAEUyhB,GAAIoF,GAAA7mB,SAAAA,EAAA,SACd,KAAAA,KAAA,CAGA,IAAaqd,GAAGwJ,EADhBvnB,EAAA4mB,EAAAlmB,IACgB,SAChB8mB,EAAAjO,KAAA,CAAmB+N,EAAAA,EAAAtnB,GAAAunB,EAAAA,EAAAvnB,IACnB,CACA,CA1HA,MAHAynB,EAAAG,MACAF,EAAAE,KA6HA,CACA,QACA,CCnJe,SAAAK,GAAAzE,GACf,IAAOD,GAAQC,GAAA,SACf,IAAArB,EAAA,GACA,QAAAniB,KAAAwjB,EAAArB,EAAA5I,KAAAvZ,GAGA,OADM4iB,IAAYqD,GAAmBzC,EAAArB,GACrCA,CACA,CCJO,SAAA+F,GAAAjjB,GACP,IAAAvE,EAAeslB,GAAS/gB,GACxB,gBAAAue,GACA,SAAAA,EAAA,SAEA,IAAArB,EAAe8F,GAAOzE,GACtB,GAAQwC,GAAS7D,GAAA,SACjB,QAAAxY,EAAA,EAAoBA,EAAAjJ,EAAYiJ,IAChC,IAAW+a,GAAUlB,EAAAve,EAAA0E,KAAA,SAKrB,OAAA1E,IAAAkjB,KAA0CzD,GAAUlB,EAAA4E,IACpD,CACA,CAIA,IAAAA,GAAA,UAEAC,GAAA,mBACAC,GAAA,OAFA,MAEA,OAIOC,GAAAF,GAAApV,OAAAmV,GAAAE,IACPH,GAAAE,GAAApV,OAAAqV,IACAE,GAAA,QAAAvV,OAAAoV,GAAAD,GARA,OCxBA,MAAAK,GAAe5D,GAASqD,GAAgBK,IAAczE,GAAS,OCA/D4E,GAAe7D,GAASqD,GAAgBC,IAAkBrE,GAAS,WCAnE6E,GAAe9D,GAASqD,GAAgBM,IAAc1E,GAAS,OCF/D8E,GAAe9E,GAAS,WCCT,SAAA+E,GAAArF,GAIf,IAHA,IAAAoD,EAAczE,GAAIqB,GAClB9iB,EAAAkmB,EAAAlmB,OACAmoB,EAAAvnB,MAAAZ,GACAiJ,EAAA,EAAkBA,EAAAjJ,EAAYiJ,IAC9Bkf,EAAAlf,GAAA6Z,EAAAoD,EAAAjd,IAEA,OAAAkf,CACA,CCPe,SAAAC,GAAAtF,GAIf,IAHA,IAAAoD,EAAczE,GAAIqB,GAClB9iB,EAAAkmB,EAAAlmB,OACAooB,EAAAxnB,MAAAZ,GACAiJ,EAAA,EAAkBA,EAAAjJ,EAAYiJ,IAC9Bmf,EAAAnf,GAAA,CAAAid,EAAAjd,GAAA6Z,EAAAoD,EAAAjd,KAEA,OAAAmf,CACA,CCTe,SAAAC,GAAAvF,GAGf,IAFA,IAAAwF,EAAA,GACApC,EAAczE,GAAIqB,GAClB7Z,EAAA,EAAAjJ,EAAAkmB,EAAAlmB,OAAyCiJ,EAAAjJ,EAAYiJ,IACrDqf,EAAAxF,EAAAoD,EAAAjd,KAAAid,EAAAjd,GAEA,OAAAqf,CACA,CCPe,SAAAC,GAAAzF,GACf,IAAA0F,EAAA,GACA,QAAAlpB,KAAAwjB,EACQkB,GAAUlB,EAAAxjB,KAAAkpB,EAAA3P,KAAAvZ,GAElB,OAAAkpB,EAAAC,MACA,CCRe,SAAAC,GAAAC,EAAAC,GACf,gBAAA9F,GACA,IAAA9iB,EAAAoQ,UAAApQ,OAEA,GADA4oB,IAAA9F,EAAA7b,OAAA6b,IACA9iB,EAAA,SAAA8iB,EAAA,OAAAA,EACA,QAAAvd,EAAA,EAAwBA,EAAAvF,EAAgBuF,IAIxC,IAHA,IAAAsW,EAAAzL,UAAA7K,GACAkc,EAAAkH,EAAA9M,GACA4J,EAAAhE,EAAAzhB,OACAiJ,EAAA,EAAsBA,EAAAwc,EAAOxc,IAAA,CAC7B,IAAA3J,EAAAmiB,EAAAxY,GACA2f,QAAA,IAAA9F,EAAAxjB,KAAAwjB,EAAAxjB,GAAAuc,EAAAvc,GACA,CAEA,OAAAwjB,CACA,CACA,CCbA,MAAA+F,GAAeH,GAAenB,ICE9BuB,GAAeJ,GAAejH,ICF9BmH,GAAeF,GAAenB,IAAO,GCKtB,SAAAwB,GAAA7M,GACf,IAAO2G,GAAQ3G,GAAA,SACf,GAAMwF,GAAY,OAASA,GAAYxF,GACvC,IAAA8M,EAPA,aAQAA,EAAA9M,UAAAA,EACA,IAAAoM,EAAA,IAAAU,EAEA,OADAA,EAAA9M,UAAA,KACAoM,CACA,CCXe,SAAA3G,GAAAzF,EAAAtf,GACf,IAAA0rB,EAAeS,GAAU7M,GAEzB,OADAtf,GAAaksB,GAASR,EAAA1rB,GACtB0rB,CACA,CCLe,SAAAW,GAAAnG,GACf,OAAOD,GAAQC,GACN7Q,GAAO6Q,GAAAA,EAAAtQ,QAAsBqW,GAAM,GAAG/F,GADhCA,CAEf,CCLe,SAAAoG,GAAApG,EAAAqG,GAEf,OADAA,EAAArG,GACAA,CACA,CCDe,SAAAsG,GAAAvR,GACf,OAAS5F,GAAO4F,GAAAA,EAAA,CAAAA,EAChB,CCFe,SAASwR,GAAMxR,GAC9B,OAASsO,GAACiD,OAAAvR,EACV,CCNe,SAAAyR,GAAAxG,EAAAjL,GAEf,IADA,IAAA7X,EAAA6X,EAAA7X,OACAiJ,EAAA,EAAkBA,EAAAjJ,EAAYiJ,IAAA,CAC9B,SAAA6Z,EAAA,OACAA,EAAAA,EAAAjL,EAAA5O,GACA,CACA,OAAAjJ,EAAA8iB,OAAA,CACA,CCAe,SAAA/U,GAAAkY,EAAApO,EAAA0R,GACf,IAAA1sB,EAAcysB,GAAOrD,EAASoD,GAAMxR,IACpC,OAASmL,GAAWnmB,GAAA0sB,EAAA1sB,CACpB,CCLe,SAAS2sB,GAAG1G,EAAAjL,GAG3B,IADA,IAAA7X,GADA6X,EAASwR,GAAMxR,IACf7X,OACAiJ,EAAA,EAAkBA,EAAAjJ,EAAYiJ,IAAA,CAC9B,IAAA3J,EAAAuY,EAAA5O,GACA,IAASoU,GAAIyF,EAAAxjB,GAAA,SACbwjB,EAAAA,EAAAxjB,EACA,CACA,QAAAU,CACA,CCde,SAAAypB,GAAA5sB,GACf,OAAAA,CACA,CCEe,SAAA6sB,GAAA9qB,GAEf,OADAA,EAAUkqB,GAAS,GAAGlqB,GACtB,SAAAkkB,GACA,OAAWkD,GAAOlD,EAAAlkB,EAClB,CACA,CCLe,SAAA+qB,GAAA9R,GAEf,OADAA,EAASwR,GAAMxR,GACf,SAAAiL,GACA,OAAWwG,GAAOxG,EAAAjL,EAClB,CACA,CCPe,SAAA+R,GAAAnH,EAAAoH,EAAAC,GACf,YAAAD,EAAA,OAAApH,EACA,OAAAqH,GAAA,GACA,uBAAAjtB,GACA,OAAA4lB,EAAAtG,KAAA0N,EAAAhtB,EACA,EAEA,uBAAAA,EAAA0I,EAAAwf,GACA,OAAAtC,EAAAtG,KAAA0N,EAAAhtB,EAAA0I,EAAAwf,EACA,EACA,uBAAAgF,EAAAltB,EAAA0I,EAAAwf,GACA,OAAAtC,EAAAtG,KAAA0N,EAAAE,EAAAltB,EAAA0I,EAAAwf,EACA,EAEA,kBACA,OAAAtC,EAAAtS,MAAA0Z,EAAAzZ,UACA,CACA,CCTe,SAAA4Z,GAAAntB,EAAAgtB,EAAAC,GACf,aAAAjtB,EAA4B4sB,GACtBzF,GAAUnnB,GAAgB+sB,GAAU/sB,EAAAgtB,EAAAC,GACpCjH,GAAQhmB,KAAYoV,GAAOpV,GAAgB6sB,GAAO7sB,GAC/C8sB,GAAQ9sB,EACjB,CCVe,SAAAotB,GAAAptB,EAAAgtB,GACf,OAASG,GAAYntB,EAAAgtB,EAAAK,IACrB,CCFe,SAAAC,GAAAttB,EAAAgtB,EAAAC,GACf,OAAM3D,GAAC8D,WAAcA,GAAiB9D,GAAC8D,SAAAptB,EAAAgtB,GAC9BG,GAAYntB,EAAAgtB,EAAAC,EACrB,CCJe,SAAAM,GAAAtH,EAAAmH,EAAAJ,GACfI,EAAaE,GAAEF,EAAAJ,GAIf,IAHA,IAAA3D,EAAczE,GAAIqB,GAClB9iB,EAAAkmB,EAAAlmB,OACAqqB,EAAA,GACA9kB,EAAA,EAAsBA,EAAAvF,EAAgBuF,IAAA,CACtC,IAAA+kB,EAAApE,EAAA3gB,GACA8kB,EAAAC,GAAAL,EAAAnH,EAAAwH,GAAAA,EAAAxH,EACA,CACA,OAAAuH,CACA,CCde,SAAAE,KAAA,CCGA,SAAAC,GAAA1H,GACf,aAAAA,EAA0ByH,GAC1B,SAAA1S,GACA,OAAW9J,GAAG+U,EAAAjL,EACd,CACA,CCNe,SAAA4S,GAAAC,EAAAT,EAAAJ,GACf,IAAAc,EAAA/pB,MAAA0hB,KAAAK,IAAA,EAAA+H,IACAT,EAAaL,GAAUK,EAAAJ,EAAA,GACvB,QAAA5gB,EAAA,EAAkBA,EAAAyhB,EAAOzhB,IAAA0hB,EAAA1hB,GAAAghB,EAAAhhB,GACzB,OAAA0hB,CACA,CCPe,SAAAC,GAAAC,EAAAlI,GAKf,OAJA,MAAAA,IACAA,EAAAkI,EACAA,EAAA,GAEAA,EAAAvI,KAAAwI,MAAAxI,KAAAsI,UAAAjI,EAAAkI,EAAA,GACA,ChBCA1E,GAACiD,OAAAA,GUCDjD,GAAC8D,SAAAA,GORD,MAAAc,GAAevoB,KAAAuoB,KAAA,WACf,WAAAvoB,MAAAmX,SACA,ECCe,SAAAqR,GAAA/d,GACf,IAAAge,EAAA,SAAAC,GACA,OAAAje,EAAAie,EACA,EAEArP,EAAA,MAAuB4F,GAAIxU,GAAAke,KAAA,SAC3BC,EAAApN,OAAAnC,GACAwP,EAAArN,OAAAnC,EAAA,KACA,gBAAAyP,GAEA,OADAA,EAAA,MAAAA,EAAA,MAAAA,EACAF,EAAA/c,KAAAid,GAAAA,EAAA/iB,QAAA8iB,EAAAJ,GAAAK,CACA,CACA,CCfA,MAAAC,GAAA,CACA,YACA,WACA,WACA,aACA,aACA,cCHAC,GAAeR,GAAcO,ICA7BE,GAAeT,GCAA3C,GAAOkD,KCAtBG,GAAevF,GAACuF,iBAAA,CAChBC,SAAA,kBACAC,YAAA,mBACA/pB,OAAA,oBCAA,IAAAgqB,GAAA,OAIAC,GAAA,CACA,QACA,UACA,SACA,SACA,iBACA,kBAGAC,GAAA,4BAEA,SAAAC,GAAAd,GACA,WAAAY,GAAAZ,EACA,CAOA,IAAAe,GAAA,mBAMe,SAAAC,GAAAnW,EAAAoW,EAAAC,IACfD,GAAAC,IAAAD,EAAAC,GACAD,EAAavD,GAAQ,GAAGuD,EAAYhG,GAACuF,kBAGrC,IAAAhC,EAAA1L,OAAA,EACAmO,EAAAtqB,QAAAgqB,IAAAhQ,QACAsQ,EAAAP,aAAAC,IAAAhQ,QACAsQ,EAAAR,UAAAE,IAAAhQ,QACAsP,KAAA,eAGA5lB,EAAA,EACAsW,EAAA,SACA9F,EAAAxN,QAAAmhB,EAAA,SAAAwB,EAAArpB,EAAA+pB,EAAAD,EAAAU,GAaA,OAZAxQ,GAAA9F,EAAAvD,MAAAjN,EAAA8mB,GAAA9jB,QAAAwjB,GAAAC,IACAzmB,EAAA8mB,EAAAnB,EAAAlrB,OAEA6B,EACAga,GAAA,cAAAha,EAAA,iCACM+pB,EACN/P,GAAA,cAAA+P,EAAA,uBACMD,IACN9P,GAAA,OAAmB8P,EAAA,YAInBT,CACA,GACArP,GAAA,OAEA,IAgBAyQ,EAhBAC,EAAAJ,EAAAK,SACA,GAAAD,GAEA,IAAAN,GAAA5d,KAAAke,GAAA,UAAA3lB,MACA,sCAAA2lB,QAIA1Q,EAAA,mBAA4BA,EAAA,MAC5B0Q,EAAA,MAGA1Q,EAAA,4FAEAA,EAAA,gBAGA,IACAyQ,EAAA,IAAA3L,SAAA4L,EAAA,IAAA1Q,EACA,CAAI,MAAAvK,GAEJ,MADAA,EAAAuK,OAAAA,EACAvK,CACA,CAEA,IAAA4a,EAAA,SAAAxpB,GACA,OAAA4pB,EAAAnQ,KAAA1d,KAAAiE,EAAmCyjB,GACnC,EAKA,OAFA+F,EAAArQ,OAAA,YAAA0Q,EAAA,OAAgD1Q,EAAA,IAEhDqQ,CACA,CC9Fe,SAAA5D,GAAAxF,EAAAjL,EAAA4U,GAEf,IAAAzsB,GADA6X,EAASwR,GAAMxR,IACf7X,OACA,IAAAA,EACA,OAAWgkB,GAAUyI,GAAAA,EAAAtQ,KAAA2G,GAAA2J,EAErB,QAAAxjB,EAAA,EAAkBA,EAAAjJ,EAAYiJ,IAAA,CAC9B,IAAA6c,EAAA,MAAAhD,OAAA,EAAAA,EAAAjL,EAAA5O,SACA,IAAA6c,IACAA,EAAA2G,EACAxjB,EAAAjJ,GAEA8iB,EAAUkB,GAAU8B,GAAAA,EAAA3J,KAAA2G,GAAAgD,CACpB,CACA,OAAAhD,CACA,CCnBA,IAAA4J,GAAA,EACe,SAAAC,GAAAC,GACf,IAAAnnB,IAAAinB,GAAA,GACA,OAAAE,EAAAA,EAAAnnB,EAAAA,CACA,CCHe,SAAAonB,GAAA/J,GACf,IAAAgK,EAAiB3G,GAACrD,GAElB,OADAgK,EAAAC,QAAA,EACAD,CACA,CCDe,SAAAE,GAAAC,EAAAC,EAAArD,EAAAsD,EAAA7V,GACf,KAAA6V,aAAAD,GAAA,OAAAD,EAAA9c,MAAA0Z,EAAAvS,GACA,IAAAmJ,EAAasI,GAAUkE,EAAA/Q,WACvBoM,EAAA2E,EAAA9c,MAAAsQ,EAAAnJ,GACA,OAAMuL,GAAQyF,GAAAA,EACd7H,CACA,CCJA,IAAA2M,GAAc5K,GAAa,SAAAC,EAAA4K,GAC3B,IAAAhd,EAAA+c,GAAA/c,YACAid,EAAA,WAGA,IAFA,IAAAC,EAAA,EAAAvtB,EAAAqtB,EAAArtB,OACAsX,EAAA1W,MAAAZ,GACAiJ,EAAA,EAAoBA,EAAAjJ,EAAYiJ,IAChCqO,EAAArO,GAAAokB,EAAApkB,KAAAoH,EAAAD,UAAAmd,KAAAF,EAAApkB,GAEA,KAAAskB,EAAAnd,UAAApQ,QAAAsX,EAAAuB,KAAAzI,UAAAmd,MACA,OAAWP,GAAYvK,EAAA6K,EAAA7uB,KAAAA,KAAA6Y,EACvB,EACA,OAAAgW,CACA,GAEAF,GAAA/c,YAAsB8V,GACtB,MAAAqH,GAAA,GCjBA1vB,GAAe0kB,GAAa,SAAAC,EAAAoH,EAAAvS,GAC5B,IAAO0M,GAAUvB,GAAA,UAAAgL,UAAA,qCACjB,IAAAH,EAAc9K,GAAa,SAAAkL,GAC3B,OAAWV,GAAYvK,EAAA6K,EAAAzD,EAAAprB,KAAA6Y,EAAA/E,OAAAmb,GACvB,GACA,OAAAJ,CACA,GCLAK,GAAe9I,GAAwBS,ICDxB,SAAAsI,GAAAvpB,EAAAwpB,EAAAC,GACfD,GAAA,IAAAA,IAAAA,EAAA3D,KAEA,IADA,IAAA6D,EAAA,GAAAC,EAAA,EAAA/kB,EAAA,EAAAjJ,EAA4CslB,GAASjhB,IAAA,EAAA4pB,EAAA,KAErD,GAAAhlB,GAAAjJ,EAAA,CACA,IAAAiuB,EAAAjuB,OAAA,MACA,IAAAinB,EAAAgH,EAAA/G,MACAje,EAAAge,EAAAhe,EACA5E,EAAA4iB,EAAAiH,EACAluB,EAAeslB,GAASjhB,EAExB,KAPA,CAQA,IAAAxH,EAAAwH,EAAA4E,KACAglB,EAAAjuB,QAAA6tB,EACAE,EAAAC,KAAAnxB,EACe8wB,GAAW9wB,KAAYoV,GAAOpV,IAAW2nB,GAAW3nB,KAEnEoxB,EAAApV,KAAA,CAAkB5P,EAAAA,EAAAilB,EAAA7pB,IAClB4E,EAAA,EAEAjJ,EAAeslB,GADfjhB,EAAAxH,IAEMixB,IACNC,EAAAC,KAAAnxB,EAXA,CAcA,OAAAkxB,CACA,CCzBA,MAAAI,GAAe3L,GAAa,SAAAM,EAAArB,GAE5B,IAAAlc,GADAkc,EAASmM,GAAOnM,GAAA,OAChBzhB,OACA,GAAAuF,EAAA,YAAAqB,MAAA,yCACA,KAAArB,KAAA,CACA,IAAAjG,EAAAmiB,EAAAlc,GACAud,EAAAxjB,GAAexB,GAAIglB,EAAAxjB,GAAAwjB,EACnB,CACA,OAAAA,CACA,GCbe,SAAAsL,GAAA3L,EAAA4L,GACf,IAAAD,EAAA,SAAA9uB,GACA,IAAAgvB,EAAAF,EAAAE,MACAC,EAAA,IAAAF,EAAAA,EAAAle,MAAA1R,KAAA2R,WAAA9Q,GAEA,OADS+d,GAAGiR,EAAAC,KAAAD,EAAAC,GAAA9L,EAAAtS,MAAA1R,KAAA2R,YACZke,EAAAC,EACA,EAEA,OADAH,EAAAE,MAAA,GACAF,CACA,CCRA,MAAAI,GAAehM,GAAa,SAAAC,EAAAgM,EAAAnX,GAC5B,OAAA+H,WAAA,WACA,OAAAoD,EAAAtS,MAAA,KAAAmH,EACA,EAAGmX,EACH,GCFAC,GAAelB,GAAQgB,GAAOrI,GAAC,GCChB,SAAAwI,GAAAlM,EAAAgM,EAAAlxB,GACf,IAAAqxB,EAAA/E,EAAAvS,EAAAgR,EACAuG,EAAA,EACAtxB,IAAAA,EAAA,IAEA,IAAAuxB,EAAA,WACAD,GAAA,IAAAtxB,EAAAwxB,QAAA,EAA+ChE,KAC/C6D,EAAA,KACAtG,EAAA7F,EAAAtS,MAAA0Z,EAAAvS,GACAsX,IAAA/E,EAAAvS,EAAA,KACA,EAEA0X,EAAA,WACA,IAAAC,EAAelE,KACf8D,IAAA,IAAAtxB,EAAAwxB,UAAAF,EAAAI,GACA,IAAAC,EAAAT,GAAAQ,EAAAJ,GAcA,OAbAhF,EAAAprB,KACA6Y,EAAAlH,UACA8e,GAAA,GAAAA,EAAAT,GACAG,IACAO,aAAAP,GACAA,EAAA,MAEAC,EAAAI,EACA3G,EAAA7F,EAAAtS,MAAA0Z,EAAAvS,GACAsX,IAAA/E,EAAAvS,EAAA,OACMsX,IAAA,IAAArxB,EAAA6xB,WACNR,EAAAvP,WAAAyP,EAAAI,IAEA5G,CACA,EAQA,OANA0G,EAAA/T,OAAA,WACAkU,aAAAP,GACAC,EAAA,EACAD,EAAA/E,EAAAvS,EAAA,IACA,EAEA0X,CACA,CCvCe,SAASK,GAAQ5M,EAAAgM,EAAAa,GAChC,IAAAV,EAAAC,EAAAvX,EAAAgR,EAAAuB,EAEAiF,EAAA,WACA,IAAAS,EAAiBxE,KAAG8D,EACpBJ,EAAAc,EACAX,EAAAvP,WAAAyP,EAAAL,EAAAc,IAEAX,EAAA,KACAU,IAAAhH,EAAA7F,EAAAtS,MAAA0Z,EAAAvS,IAEAsX,IAAAtX,EAAAuS,EAAA,MAEA,EAEA2F,EAAkBhN,GAAa,SAAAiN,GAQ/B,OAPA5F,EAAAprB,KACA6Y,EAAAmY,EACAZ,EAAe9D,KACf6D,IACAA,EAAAvP,WAAAyP,EAAAL,GACAa,IAAAhH,EAAA7F,EAAAtS,MAAA0Z,EAAAvS,KAEAgR,CACA,GAOA,OALAkH,EAAAvU,OAAA,WACAkU,aAAAP,GACAA,EAAAtX,EAAAuS,EAAA,IACA,EAEA2F,CACA,CClCe,SAAAE,GAAAjN,EAAAkN,GACf,OAASnC,GAAOmC,EAAAlN,EAChB,CCNe,SAAAmN,GAAAC,GACf,kBACA,OAAAA,EAAA1f,MAAA1R,KAAA2R,UACA,CACA,CCHe,SAAA0f,KACf,IAAAxY,EAAAlH,UACA2f,EAAAzY,EAAAtX,OAAA,EACA,kBAGA,IAFA,IAAAiJ,EAAA8mB,EACAzH,EAAAhR,EAAAyY,GAAA5f,MAAA1R,KAAA2R,WACAnH,KAAAqf,EAAAhR,EAAArO,GAAAkT,KAAA1d,KAAA6pB,GACA,OAAAA,CACA,CACA,CCVe,SAAA0H,GAAAvF,EAAAhI,GACf,kBACA,KAAAgI,EAAA,EACA,OAAAhI,EAAAtS,MAAA1R,KAAA2R,UAEA,CACA,CCLe,SAAA6f,GAAAxF,EAAAhI,GACf,IAAAyN,EACA,kBAKA,QAJAzF,EAAA,IACAyF,EAAAzN,EAAAtS,MAAA1R,KAAA2R,YAEAqa,GAAA,IAAAhI,EAAA,MACAyN,CACA,CACA,CCNA,MAAAC,GAAe3C,GAAQyC,GAAM,GCDd,SAAAG,GAAAtN,EAAA+M,EAAAhG,GACfgG,EAAc1F,GAAE0F,EAAAhG,GAEhB,IADA,IAAkBvqB,EAAlB4mB,EAAczE,GAAIqB,GAClB7Z,EAAA,EAAAjJ,EAAAkmB,EAAAlmB,OAAyCiJ,EAAAjJ,EAAYiJ,IAErD,GAAA4mB,EAAA/M,EADAxjB,EAAA4mB,EAAAjd,IACA3J,EAAAwjB,GAAA,OAAAxjB,CAEA,CCPe,SAAA+wB,GAAAC,GACf,gBAAAC,EAAAV,EAAAhG,GACAgG,EAAgB1F,GAAE0F,EAAAhG,GAGlB,IAFA,IAAA7pB,EAAiBslB,GAASiL,GAC1BhrB,EAAA+qB,EAAA,IAAAtwB,EAAA,EACWuF,GAAA,GAAAA,EAAAvF,EAA8BuF,GAAA+qB,EACzC,GAAAT,EAAAU,EAAAhrB,GAAAA,EAAAgrB,GAAA,OAAAhrB,EAEA,QACA,CACA,CCXA,MAAAirB,GAAeH,GAA0B,GCAzCI,GAAeJ,IAA0B,GCE1B,SAAAK,GAAAH,EAAAzN,EAAAmH,EAAAJ,GAIf,IAFA,IAAAhtB,GADAotB,EAAaE,GAAEF,EAAAJ,EAAA,IACf/G,GACA6N,EAAA,EAAAC,EAAsBtL,GAASiL,GAC/BI,EAAAC,GAAA,CACA,IAAAC,EAAAvO,KAAAwI,OAAA6F,EAAAC,GAAA,GACA3G,EAAAsG,EAAAM,IAAAh0B,EAAA8zB,EAAAE,EAAA,EAAqDD,EAAAC,CACrD,CACA,OAAAF,CACA,CCTe,SAAAG,GAAAR,EAAAS,EAAAL,GACf,gBAAAH,EAAAS,EAAAhD,GACA,IAAA/kB,EAAA,EAAAjJ,EAAwBslB,GAASiL,GACjC,oBAAAvC,EACAsC,EAAA,EACArnB,EAAA+kB,GAAA,EAAAA,EAAA1L,KAAAK,IAAAqL,EAAAhuB,EAAAiJ,GAEAjJ,EAAAguB,GAAA,EAAA1L,KAAAuI,IAAAmD,EAAA,EAAAhuB,GAAAguB,EAAAhuB,EAAA,OAEM,GAAA0wB,GAAA1C,GAAAhuB,EAEN,OAAAuwB,EADAvC,EAAA0C,EAAAH,EAAAS,MACAA,EAAAhD,GAAA,EAEA,GAAAgD,GAAAA,EAEA,OADAhD,EAAA+C,EAA0Bve,GAAK2J,KAAAoU,EAAAtnB,EAAAjJ,GAAyB2kB,MACxD,EAAAqJ,EAAA/kB,GAAA,EAEA,IAAA+kB,EAAAsC,EAAA,EAAArnB,EAAAjJ,EAAA,EAAyCguB,GAAA,GAAAA,EAAAhuB,EAA0BguB,GAAAsC,EACnE,GAAAC,EAAAvC,KAAAgD,EAAA,OAAAhD,EAEA,QACA,CACA,CCnBA,MAAA1qB,GAAewtB,GAAiB,EAAIN,GAAWE,ICH/CO,GAAeH,IAAiB,EAAKL,ICAtB,SAAAS,GAAApO,EAAA+M,EAAAhG,GACf,IACAvqB,GADkBquB,GAAW7K,GAAQ0N,GAAYJ,IACjDtN,EAAA+M,EAAAhG,GACA,YAAAvqB,IAAA,IAAAA,EAAA,OAAAwjB,EAAAxjB,EACA,CCJe,SAAA6xB,GAAArO,EAAAlkB,GACf,OAASsyB,GAAIpO,EAAM4G,GAAO9qB,GAC1B,CCCe,SAAAwyB,GAAAtO,EAAAmH,EAAAJ,GAEf,IAAA5gB,EAAAjJ,EACA,GAFAiqB,EAAaL,GAAUK,EAAAJ,GAEjB8D,GAAW7K,GACjB,IAAA7Z,EAAA,EAAAjJ,EAAA8iB,EAAA9iB,OAAqCiJ,EAAAjJ,EAAYiJ,IACjDghB,EAAAnH,EAAA7Z,GAAAA,EAAA6Z,OAEI,CACJ,IAAAoD,EAAgBzE,GAAIqB,GACpB,IAAA7Z,EAAA,EAAAjJ,EAAAkmB,EAAAlmB,OAAuCiJ,EAAAjJ,EAAYiJ,IACnDghB,EAAAnH,EAAAoD,EAAAjd,IAAAid,EAAAjd,GAAA6Z,EAEA,CACA,OAAAA,CACA,CCjBe,SAAA7V,GAAA6V,EAAAmH,EAAAJ,GACfI,EAAaE,GAAEF,EAAAJ,GAIf,IAHA,IAAA3D,GAAeyH,GAAW7K,IAASrB,GAAIqB,GACvC9iB,GAAAkmB,GAAApD,GAAA9iB,OACAqqB,EAAAzpB,MAAAZ,GACAuF,EAAA,EAAsBA,EAAAvF,EAAgBuF,IAAA,CACtC,IAAA+kB,EAAApE,EAAAA,EAAA3gB,GAAAA,EACA8kB,EAAA9kB,GAAA0kB,EAAAnH,EAAAwH,GAAAA,EAAAxH,EACA,CACA,OAAAuH,CACA,CCVe,SAAAgH,GAAAf,GAkBf,gBAAAxN,EAAAmH,EAAAiG,EAAArG,GACA,IAAAyH,EAAAlhB,UAAApQ,QAAA,EACA,OAjBA,SAAA8iB,EAAAmH,EAAAiG,EAAAoB,GACA,IAAApL,GAAiByH,GAAW7K,IAASrB,GAAIqB,GACzC9iB,GAAAkmB,GAAApD,GAAA9iB,OACAuF,EAAA+qB,EAAA,IAAAtwB,EAAA,EAKA,IAJAsxB,IACApB,EAAApN,EAAAoD,EAAAA,EAAA3gB,GAAAA,GACAA,GAAA+qB,GAEW/qB,GAAA,GAAAA,EAAAvF,EAA8BuF,GAAA+qB,EAAA,CACzC,IAAAhG,EAAApE,EAAAA,EAAA3gB,GAAAA,EACA2qB,EAAAjG,EAAAiG,EAAApN,EAAAwH,GAAAA,EAAAxH,EACA,CACA,OAAAoN,CACA,CAIAqB,CAAAzO,EAAwB8G,GAAUK,EAAAJ,EAAA,GAAAqG,EAAAoB,EAClC,CACA,CCvBA,MAAAE,GAAeH,GAAY,GCD3BI,GAAeJ,IAAY,GCCZ,SAAA/X,GAAAwJ,EAAA+M,EAAAhG,GACf,IAAAQ,EAAA,GAKA,OAJAwF,EAAc1F,GAAE0F,EAAAhG,GACduH,GAAItO,EAAA,SAAAjmB,EAAA0I,EAAAmsB,GACN7B,EAAAhzB,EAAA0I,EAAAmsB,IAAArH,EAAAxR,KAAAhc,EACA,GACAwtB,CACA,CCNe,SAAAsH,GAAA7O,EAAA+M,EAAAhG,GACf,OAASvQ,GAAMwJ,EAAM8M,GAAOzF,GAAE0F,IAAAhG,EAC9B,CCFe,SAAA/lB,GAAAgf,EAAA+M,EAAAhG,GACfgG,EAAc1F,GAAE0F,EAAAhG,GAGhB,IAFA,IAAA3D,GAAeyH,GAAW7K,IAASrB,GAAIqB,GACvC9iB,GAAAkmB,GAAApD,GAAA9iB,OACAuF,EAAA,EAAsBA,EAAAvF,EAAgBuF,IAAA,CACtC,IAAA+kB,EAAApE,EAAAA,EAAA3gB,GAAAA,EACA,IAAAsqB,EAAA/M,EAAAwH,GAAAA,EAAAxH,GAAA,QACA,CACA,QACA,CCTe,SAAA8O,GAAA9O,EAAA+M,EAAAhG,GACfgG,EAAc1F,GAAE0F,EAAAhG,GAGhB,IAFA,IAAA3D,GAAeyH,GAAW7K,IAASrB,GAAIqB,GACvC9iB,GAAAkmB,GAAApD,GAAA9iB,OACAuF,EAAA,EAAsBA,EAAAvF,EAAgBuF,IAAA,CACtC,IAAA+kB,EAAApE,EAAAA,EAAA3gB,GAAAA,EACA,GAAAsqB,EAAA/M,EAAAwH,GAAAA,EAAAxH,GAAA,QACA,CACA,QACA,CCTe,SAAA4C,GAAA5C,EAAAkO,EAAAa,EAAAC,GAGf,OAFOnE,GAAW7K,KAAAA,EAAaqF,GAAMrF,KACrC,iBAAA+O,GAAAC,KAAAD,EAAA,GACSvuB,GAAOwf,EAAAkO,EAAAa,IAAA,CAChB,CCFA,MAAAE,GAAevP,GAAa,SAAAM,EAAAjL,EAAAP,GAC5B,IAAA0a,EAAAvP,EAQA,OAPMuB,GAAUnM,GAChB4K,EAAA5K,GAEAA,EAAWwR,GAAMxR,GACjBma,EAAAna,EAAArF,MAAA,MACAqF,EAAAA,EAAAA,EAAA7X,OAAA,IAESiN,GAAG6V,EAAA,SAAA+G,GACZ,IAAA7kB,EAAAyd,EACA,IAAAzd,EAAA,CAIA,GAHAgtB,GAAAA,EAAAhyB,SACA6pB,EAAkBP,GAAOO,EAAAmI,IAEzB,MAAAnI,EAAA,OACA7kB,EAAA6kB,EAAAhS,EACA,CACA,aAAA7S,EAAAA,EAAAA,EAAAmL,MAAA0Z,EAAAvS,EACA,EACA,GCvBe,SAAA2a,GAAAnP,EAAAxjB,GACf,OAAS2N,GAAG6V,EAAM6G,GAAQrqB,GAC1B,CCDe,SAAA4yB,GAAApP,EAAAlkB,GACf,OAAS0a,GAAMwJ,EAAM4G,GAAO9qB,GAC5B,CCDe,SAAA+jB,GAAAG,EAAAmH,EAAAJ,GACf,IACAhtB,EAAAgD,EADAyoB,GAAA,IAAA6J,GAAA,IAEA,SAAAlI,GAAA,iBAAAA,GAAA,iBAAAnH,EAAA,UAAAA,EAEA,QAAA7Z,EAAA,EAAAjJ,GADA8iB,EAAU6K,GAAW7K,GAAAA,EAAcqF,GAAMrF,IACzC9iB,OAAyCiJ,EAAAjJ,EAAYiJ,IAErD,OADApM,EAAAimB,EAAA7Z,KACApM,EAAAyrB,IACAA,EAAAzrB,QAIAotB,EAAeE,GAAEF,EAAAJ,GACbuH,GAAItO,EAAA,SAAAoL,EAAA3oB,EAAAmsB,KACR7xB,EAAAoqB,EAAAiE,EAAA3oB,EAAAmsB,IACAS,GAAAtyB,KAAA,KAAAyoB,KAAA,OACAA,EAAA4F,EACAiE,EAAAtyB,EAEA,GAEA,OAAAyoB,CACA,CCtBe,SAAAuC,GAAA/H,EAAAmH,EAAAJ,GACf,IACAhtB,EAAAgD,EADAyoB,EAAA4B,IAAAiI,EAAAjI,IAEA,SAAAD,GAAA,iBAAAA,GAAA,iBAAAnH,EAAA,UAAAA,EAEA,QAAA7Z,EAAA,EAAAjJ,GADA8iB,EAAU6K,GAAW7K,GAAAA,EAAcqF,GAAMrF,IACzC9iB,OAAyCiJ,EAAAjJ,EAAYiJ,IAErD,OADApM,EAAAimB,EAAA7Z,KACApM,EAAAyrB,IACAA,EAAAzrB,QAIAotB,EAAeE,GAAEF,EAAAJ,GACbuH,GAAItO,EAAA,SAAAoL,EAAA3oB,EAAAmsB,KACR7xB,EAAAoqB,EAAAiE,EAAA3oB,EAAAmsB,IACAS,GAAAtyB,IAAAqqB,KAAA5B,IAAA4B,OACA5B,EAAA4F,EACAiE,EAAAtyB,EAEA,GAEA,OAAAyoB,CACA,CCnBA,IAAA8J,GAAA,mEACe,SAAAC,GAAAvP,GACf,OAAAA,EACM7Q,GAAO6Q,GAActQ,GAAK2J,KAAA2G,GAC1BQ,GAAQR,GAEdA,EAAAoI,MAAAkH,IAEMzE,GAAW7K,GAAc7V,GAAG6V,EAAM2G,IAC/BtB,GAAMrF,GAPf,EAQA,CCTe,SAAAwP,GAAAxP,EAAA4H,EAAAoH,GACf,SAAApH,GAAAoH,EAEA,OADSnE,GAAW7K,KAAAA,EAAaqF,GAAMrF,IACvCA,EAAe8H,GAAM9H,EAAA9iB,OAAA,IAErB,IAAAsyB,EAAeD,GAAOvP,GACtB9iB,EAAeslB,GAASgN,GACxB5H,EAAApI,KAAAK,IAAAL,KAAAuI,IAAAH,EAAA1qB,GAAA,GAEA,IADA,IAAAuyB,EAAAvyB,EAAA,EACAuF,EAAA,EAAsBA,EAAAmlB,EAAWnlB,IAAA,CACjC,IAAAitB,EAAe5H,GAAMrlB,EAAAgtB,GACrBE,EAAAH,EAAA/sB,GACA+sB,EAAA/sB,GAAA+sB,EAAAE,GACAF,EAAAE,GAAAC,CACA,CACA,OAAAH,EAAA9f,MAAA,EAAAkY,EACA,CCvBe,SAAAgI,GAAA5P,GACf,OAASwP,GAAMxP,EAAAoH,IACf,CCAe,SAAAyI,GAAA7P,EAAAmH,EAAAJ,GACf,IAAAtkB,EAAA,EAEA,OADA0kB,EAAaE,GAAEF,EAAAJ,GACNoI,GAAMhlB,GAAG6V,EAAA,SAAAjmB,EAAAyC,EAAAoyB,GAClB,OACA70B,MAAAA,EACA0I,MAAAA,IACAqtB,SAAA3I,EAAAptB,EAAAyC,EAAAoyB,GAEA,GAAGjJ,KAAA,SAAAoK,EAAAC,GACH,IAAAlM,EAAAiM,EAAAD,SACA/L,EAAAiM,EAAAF,SACA,GAAAhM,IAAAC,EAAA,CACA,GAAAD,EAAAC,QAAA,IAAAD,EAAA,SACA,GAAAA,EAAAC,QAAA,IAAAA,EAAA,QACA,CACA,OAAAgM,EAAAttB,MAAAutB,EAAAvtB,KACA,GAAG,QACH,CCnBe,SAAAwtB,GAAAC,EAAAC,GACf,gBAAAnQ,EAAAmH,EAAAJ,GACA,IAAAvB,EAAA2K,EAAA,WAMA,OALAhJ,EAAeE,GAAEF,EAAAJ,GACbuH,GAAItO,EAAA,SAAAjmB,EAAA0I,GACR,IAAAjG,EAAA2qB,EAAAptB,EAAA0I,EAAAud,GACAkQ,EAAA1K,EAAAzrB,EAAAyC,EACA,GACAgpB,CACA,CACA,CCTA,MAAA4K,GAAeH,GAAK,SAAAzK,EAAAzrB,EAAAyC,GACd+d,GAAGiL,EAAAhpB,GAAAgpB,EAAAhpB,GAAAuZ,KAAAhc,GAAwCyrB,EAAAhpB,GAAA,CAAAzC,EACjD,GCHAs2B,GAAeJ,GAAK,SAAAzK,EAAAzrB,EAAAyC,GACpBgpB,EAAAhpB,GAAAzC,CACA,GCAAu2B,GAAeL,GAAK,SAAAzK,EAAAzrB,EAAAyC,GACd+d,GAAGiL,EAAAhpB,GAAAgpB,EAAAhpB,KAA8BgpB,EAAAhpB,GAAA,CACvC,GCJA2zB,GAAeF,GAAK,SAAAzK,EAAAzrB,EAAAw2B,GACpB/K,EAAA+K,EAAA,KAAAxa,KAAAhc,EACA,GAAC,GCFc,SAAAqN,GAAA4Y,GACf,aAAAA,EAAA,EACS6K,GAAW7K,GAAAA,EAAA9iB,OAAqByhB,GAAIqB,GAAA9iB,MAC7C,CCLe,SAAAszB,GAAAz2B,EAAAyC,EAAAwjB,GACf,OAAAxjB,KAAAwjB,CACA,CCIA,MAAArI,GAAe+H,GAAa,SAAAM,EAAArB,GAC5B,IAAA6G,EAAA,GAAiB2B,EAAAxI,EAAA,GACjB,SAAAqB,EAAA,OAAAwF,EACMtE,GAAUiG,IAChBxI,EAAAzhB,OAAA,IAAAiqB,EAAoCL,GAAUK,EAAAxI,EAAA,KAC9CA,EAAW8F,GAAOzE,KAElBmH,EAAeqJ,GACf7R,EAAWmM,GAAOnM,GAAA,MAClBqB,EAAA7b,OAAA6b,IAEA,QAAA7Z,EAAA,EAAAjJ,EAAAyhB,EAAAzhB,OAAwCiJ,EAAAjJ,EAAYiJ,IAAA,CACpD,IAAA3J,EAAAmiB,EAAAxY,GACApM,EAAAimB,EAAAxjB,GACA2qB,EAAAptB,EAAAyC,EAAAwjB,KAAAwF,EAAAhpB,GAAAzC,EACA,CACA,OAAAyrB,CACA,GChBAiL,GAAe/Q,GAAa,SAAAM,EAAArB,GAC5B,IAAAoI,EAAAI,EAAAxI,EAAA,GAUA,OATMuC,GAAUiG,IAChBA,EAAe2F,GAAM3F,GACrBxI,EAAAzhB,OAAA,IAAA6pB,EAAApI,EAAA,MAEAA,EAAWxU,GAAI2gB,GAAOnM,GAAA,MAAA1kB,QACtBktB,EAAA,SAAAptB,EAAAyC,GACA,OAAcomB,GAAQjE,EAAAniB,EACtB,GAESmb,GAAIqI,EAAAmH,EAAAJ,EACb,GChBe,SAAAyH,GAAAf,EAAA7F,EAAAoH,GACf,OAAStf,GAAK2J,KAAAoU,EAAA,EAAAjO,KAAAK,IAAA,EAAA4N,EAAAvwB,QAAA,MAAA0qB,GAAAoH,EAAA,EAAApH,IACd,CCHe,SAAA8I,GAAAjD,EAAA7F,EAAAoH,GACf,aAAAvB,GAAAA,EAAAvwB,OAAA,QAAA0qB,GAAAoH,OAAA,KACA,MAAApH,GAAAoH,EAAAvB,EAAA,GACSe,GAAOf,EAAAA,EAAAvwB,OAAA0qB,EAChB,CCHe,SAAA9H,GAAA2N,EAAA7F,EAAAoH,GACf,OAAStf,GAAK2J,KAAAoU,EAAA,MAAA7F,GAAAoH,EAAA,EAAApH,EACd,CCHe,SAAA6H,GAAAhC,EAAA7F,EAAAoH,GACf,aAAAvB,GAAAA,EAAAvwB,OAAA,QAAA0qB,GAAAoH,OAAA,KACA,MAAApH,GAAAoH,EAAAvB,EAAAA,EAAAvwB,OAAA,GACS4iB,GAAI2N,EAAAjO,KAAAK,IAAA,EAAA4N,EAAAvwB,OAAA0qB,GACb,CCLe,SAAA+I,GAAAlD,GACf,OAASjX,GAAMiX,EAAAnzB,QACf,CCDe,SAASs2B,GAAOnD,EAAA1C,GAC/B,OAASD,GAAQ2C,EAAA1C,GAAA,EACjB,CCCA,MAAA8F,GAAenR,GAAa,SAAA+N,EAAA3N,GAE5B,OADAA,EAASgL,GAAOhL,GAAA,MACPtJ,GAAMiX,EAAA,SAAA1zB,GACf,OAAY6oB,GAAQ9C,EAAA/lB,EACpB,EACA,GCRA+2B,GAAepR,GAAa,SAAA+N,EAAAsD,GAC5B,OAASF,GAAUpD,EAAAsD,EACnB,GCIe,SAAAC,GAAAvD,EAAAwD,EAAA9J,EAAAJ,GACR5G,GAAS8Q,KAChBlK,EAAAI,EACAA,EAAA8J,EACAA,GAAA,GAEA,MAAA9J,IAAAA,EAAmCE,GAAEF,EAAAJ,IAGrC,IAFA,IAAAvB,EAAA,GACA0L,EAAA,GACA/qB,EAAA,EAAAjJ,EAA2BslB,GAASiL,GAAStnB,EAAAjJ,EAAYiJ,IAAA,CACzD,IAAApM,EAAA0zB,EAAAtnB,GACApJ,EAAAoqB,EAAAA,EAAAptB,EAAAoM,EAAAsnB,GAAA1zB,EACAk3B,IAAA9J,GACAhhB,GAAA+qB,IAAAn0B,GAAAyoB,EAAAzP,KAAAhc,GACAm3B,EAAAn0B,GACMoqB,EACKvE,GAAQsO,EAAAn0B,KACnBm0B,EAAAnb,KAAAhZ,GACAyoB,EAAAzP,KAAAhc,IAEgB6oB,GAAQ4C,EAAAzrB,IACxByrB,EAAAzP,KAAAhc,EAEA,CACA,OAAAyrB,CACA,CC7BA,MAAA2L,GAAezR,GAAa,SAAA0R,GAC5B,OAASJ,GAAKlG,GAAOsG,GAAA,MACrB,GCHe,SAAAC,GAAA5D,GAGf,IAFA,IAAAjI,EAAA,GACA8L,EAAAhkB,UAAApQ,OACAiJ,EAAA,EAAAjJ,EAA2BslB,GAASiL,GAAStnB,EAAAjJ,EAAYiJ,IAAA,CACzD,IAAA+nB,EAAAT,EAAAtnB,GACA,IAAQyc,GAAQ4C,EAAA0I,GAAhB,CACA,IAAAqD,EACA,IAAAA,EAAA,EAAgBA,EAAAD,GACL1O,GAAQtV,UAAAikB,GAAArD,GADaqD,KAGhCA,IAAAD,GAAA9L,EAAAzP,KAAAmY,EALgB,CAMhB,CACA,OAAA1I,CACA,CCZe,SAAAgM,GAAA/D,GAIf,IAHA,IAAAvwB,EAAAuwB,GAAyB5N,GAAG4N,EAAQjL,IAAStlB,QAAA,EAC7CsoB,EAAA1nB,MAAAZ,GAEAuF,EAAA,EAAsBA,EAAAvF,EAAgBuF,IACtC+iB,EAAA/iB,GAAoB0sB,GAAK1B,EAAAhrB,GAEzB,OAAA+iB,CACA,CCTA,MAAAiM,GAAe/R,GAAc8R,ICAd,SAAArO,GAAAyL,EAAAvJ,GAEf,IADA,IAAAG,EAAA,GACArf,EAAA,EAAAjJ,EAA2BslB,GAASoM,GAAQzoB,EAAAjJ,EAAYiJ,IACxDkf,EACAG,EAAAoJ,EAAAzoB,IAAAkf,EAAAlf,GAEAqf,EAAAoJ,EAAAzoB,GAAA,IAAAyoB,EAAAzoB,GAAA,GAGA,OAAAqf,CACA,CCZe,SAAAkM,GAAAzE,EAAA0E,EAAAC,GACf,MAAAD,IACAA,EAAA1E,GAAA,EACAA,EAAA,GAEA2E,IACAA,EAAAD,EAAA1E,GAAA,KAMA,IAHA,IAAA/vB,EAAAsiB,KAAAK,IAAAL,KAAAqS,MAAAF,EAAA1E,GAAA2E,GAAA,GACAF,EAAA5zB,MAAAZ,GAEAguB,EAAA,EAAoBA,EAAAhuB,EAAcguB,IAAA+B,GAAA2E,EAClCF,EAAAxG,GAAA+B,EAGA,OAAAyE,CACA,CChBe,SAAAI,GAAArE,EAAAsE,GACf,SAAAA,GAAAA,EAAA,WAGA,IAFA,IAAAvM,EAAA,GACArf,EAAA,EAAAjJ,EAAAuwB,EAAAvwB,OACAiJ,EAAAjJ,GACAsoB,EAAAzP,KAAgBrG,GAAK2J,KAAAoU,EAAAtnB,EAAAA,GAAA4rB,IAErB,OAAAvM,CACA,CCTe,SAAAwM,GAAAhI,EAAAhK,GACf,OAAAgK,EAAAC,OAA2B5G,GAACrD,GAAA+J,QAAA/J,CAC5B,CCEe,SAAAiS,GAAAjS,GASf,OAREsO,GAAK7I,GAASzF,GAAA,SAAAvmB,GAChB,IAAAkmB,EAAe0D,GAAC5pB,GAAAumB,EAAAvmB,GACZ4pB,GAACjK,UAAA3f,GAAA,WACL,IAAA+a,EAAA,CAAA7Y,KAAA2nB,UAEA,OADMvN,GAAI1I,MAAAmH,EAAAlH,WACG0kB,GAAWr2B,KAAAgkB,EAAAtS,MAAkBgW,GAAC7O,GAC3C,CACA,GACS6O,EACT,CCXAiL,GAAI,oEAAA70B,GACJ,IAAAyI,EAAe4b,GAAUrkB,GACvB4pB,GAACjK,UAAA3f,GAAA,WACH,IAAAumB,EAAArkB,KAAA2nB,SAOA,OANA,MAAAtD,IACA9d,EAAAmL,MAAA2S,EAAA1S,WACA,UAAA7T,GAAA,WAAAA,GAAA,IAAAumB,EAAA9iB,eACA8iB,EAAA,IAGWgS,GAAWr2B,KAAAqkB,EACtB,CACA,GAGAsO,GAAI,mCAAA70B,GACJ,IAAAyI,EAAe4b,GAAUrkB,GACvB4pB,GAACjK,UAAA3f,GAAA,WACH,IAAAumB,EAAArkB,KAAA2nB,SAEA,OADA,MAAAtD,IAAAA,EAAA9d,EAAAmL,MAAA2S,EAAA1S,YACW0kB,GAAWr2B,KAAAqkB,EACtB,CACA,GAEA,MAAAkS,GAAA,GCRA,IAAIC,GAAIF,GAAMG,GAEdD,GAAC9O,EAAK8O,GAEN,MAAAE,GAAA,GCXAC,GAAA,CAECC,UAAW,GAcXC,UAAAA,CAAWlpB,EAAQG,EAAKhE,GACvB,IAAIgtB,EAOJ,GALCA,EADuB,iBAAZnpB,EACCA,EAEA3K,GAAG+zB,iBAAiBppB,GAG7BnK,OAAOwzB,QAAQC,UAAW,CAK7B,GAJAnpB,EAAMA,GAAO4B,SAASwnB,SAAW,IAAMJ,EAGrB1nB,UAAU+nB,UAAUC,cAAcvyB,QAAQ,YAAc,GACzDwyB,SAASjoB,UAAU+nB,UAAU3X,MAAM,KAAKiJ,OAAS,GAAI,CACrE,MAAM6O,EAAWtoB,SAASC,iBAAiB,+DAC3C,IAAK,IAAiCsoB,EAA7B/sB,EAAI,EAAGgtB,EAAKF,EAAS/1B,OAAiBiJ,EAAIgtB,EAAIhtB,IACtD+sB,EAAUD,EAAS9sB,GAEnB+sB,EAAQlX,MAAMvU,KAAOyrB,EAAQlX,MAAMvU,KAEnCyrB,EAAQlX,MAAMoX,OAASF,EAAQlX,MAAMoX,OACrCF,EAAQG,gBAAgB,UACxBH,EAAQI,aAAa,SAAU,eAEjC,CACI7tB,EACHtG,OAAOwzB,QAAQY,aAAajqB,EAAQ,GAAIG,GAExCtK,OAAOwzB,QAAQC,UAAUtpB,EAAQ,GAAIG,EAEvC,MAECtK,OAAOkM,SAASqX,KAAO,IAAM+P,EAG7B92B,KAAK63B,YAAa,CAEpB,EAWAZ,SAAAA,CAAUtpB,EAAQG,GACjB9N,KAAK62B,WAAWlpB,EAAQG,GAAK,EAC9B,EAaA8pB,YAAAA,CAAajqB,EAAQG,GACpB9N,KAAK62B,WAAWlpB,EAAQG,GAAK,EAC9B,EAOAgqB,oBAAAA,CAAqBC,GACpB/3B,KAAK42B,UAAUxc,KAAK2d,EACrB,EAQAC,eAAAA,GACC,MAAMjR,EAAOvjB,OAAOkM,SAASqX,KACvBkR,EAAMlR,EAAKliB,QAAQ,KACzB,OAAIozB,GAAO,EACHlR,EAAKmR,OAAOD,EAAM,GAEtBlR,EAAKxlB,OAEDwlB,EAAKmR,OAAO,GAEb,EACR,EAEAC,aAAajkB,GACLA,EAAMpK,QAAQ,MAAO,KAS7BsuB,aAAAA,GACC,MAAMlkB,EAAQlU,KAAKg4B,kBACnB,IAAIrqB,EAOJ,OALIuG,IACHvG,EAAS3K,GAAGq1B,iBAAiBr4B,KAAKm4B,aAAajkB,KAGhDvG,EAAS+Z,GAAAA,OAAS/Z,GAAU,CAAC,EAAG3K,GAAGq1B,iBAAiBr4B,KAAKm4B,aAAazoB,SAAS2E,UACxE1G,GAAU,CAAC,CACnB,EAEA2qB,WAAAA,CAAYzlB,GACX,GAAI7S,KAAK63B,WAER,YADA73B,KAAK63B,YAAa,GAGnB,IAAIlqB,EACJ,GAAK3N,KAAK42B,UAAUr1B,OAApB,CAGAoM,EAAUkF,GAAKA,EAAEvN,MACboiB,GAAAA,SAAW/Z,GACdA,EAAS3K,GAAGq1B,iBAAiB1qB,GAClBA,IACXA,EAAS3N,KAAKo4B,iBAAmB,CAAC,GAEnC,IAAK,IAAI5tB,EAAI,EAAGA,EAAIxK,KAAK42B,UAAUr1B,OAAQiJ,IAC1CxK,KAAK42B,UAAUpsB,GAAGmD,EARnB,CAUD,GCxJD,SAAS4qB,GAAS/5B,GAEjB,MAAMg6B,EAAK,GACX,IAGIC,EAHAC,EAAI,EACJC,GAAK,EACL1M,EAAI,EAGR,KAAOyM,EAAIl6B,EAAE+C,QAAQ,CACpBk3B,EAAIj6B,EAAE0S,OAAOwnB,GAEb,MAAME,GAAO3M,GAAW,MAANwM,GAAeA,GAAK,KAAOA,GAAK,IAC9CG,IAAM3M,IAET0M,IACAH,EAAGG,GAAK,GACR1M,EAAI2M,GAELJ,EAAGG,IAAMF,EACTC,GACD,CACA,OAAOF,CACR,CAOA,MAAAK,GAAA,CAECC,QAAOnC,GAKPoC,cAAaC,GAAAC,GAUbC,gBAAAA,CAAiBrM,GAChB,GAAsB,iBAAXA,EACV,OAAO,KAGR,MAAMsM,EAAItM,EAAOuK,cAAcgC,OAe/B,IAAI5vB,EACJ,MAAM6vB,EAAUF,EAAE1M,MAAM,mDACxB,OAAgB,OAAZ4M,EAMI,MALP7vB,EAAQyc,WAAWkT,GACd3V,SAASha,IAMX6vB,EAAQ,KACX7vB,GAzBkB,CAClB4e,EAAG,EACHkR,EAAG,KACHC,GAAI,KACJC,GAAI,QACJZ,EAAG,QACHa,GAAI,WACJC,EAAG,WACHC,GAAI,cACJn7B,EAAG,cACHo7B,GAAI,gBACJC,EAAG,iBAcwBR,EAAQ,KAGpC7vB,EAAQqa,KAAKiW,MAAMtwB,GACZA,GAVE,KAWV,EAOAuwB,WAAUA,CAACC,EAAWC,UACE/2B,IAAnBM,OAAO02B,SAAyBl3B,GAAG0K,OACtCvB,GAAOkC,KAAK,+FAEb4rB,EAASA,GAAU,MACZE,KAAOH,GAAWC,OAAOA,IAOjCG,oBAAAA,CAAqBJ,QACG92B,IAAnBM,OAAO02B,SAAyBl3B,GAAG0K,OACtCvB,GAAOkC,KAAK,yGAEb,MAAMgsB,EAAOF,OAASE,KAAKF,KAAOH,IAClC,OAAIK,GAAQ,GAAKA,EAAO,KAChB77B,EAAE,OAAQ,eAEX27B,KAAOH,GAAWM,SAC1B,EAOAC,iBAAAA,GACC,GAAIv6B,KAAKw6B,gBACR,OAAOx6B,KAAKw6B,gBAGb,MAAMC,EAAQzrB,SAAS0rB,cAAc,KACrCD,EAAMpa,MAAMtU,MAAQ,OACpB0uB,EAAMpa,MAAMrU,OAAS,QAErB,MAAM2uB,EAAQ3rB,SAAS0rB,cAAc,OACrCC,EAAMta,MAAMyO,SAAW,WACvB6L,EAAMta,MAAMua,IAAM,MAClBD,EAAMta,MAAM+T,KAAO,MACnBuG,EAAMta,MAAMwa,WAAa,SACzBF,EAAMta,MAAMtU,MAAQ,QACpB4uB,EAAMta,MAAMrU,OAAS,QACrB2uB,EAAMta,MAAMya,SAAW,SACvBH,EAAMI,YAAYN,GAElBzrB,SAASgsB,KAAKD,YAAYJ,GAC1B,MAAMM,EAAKR,EAAMS,YACjBP,EAAMta,MAAMya,SAAW,SACvB,IAAIK,EAAKV,EAAMS,YASf,OARID,IAAOE,IACVA,EAAKR,EAAMS,aAGZpsB,SAASgsB,KAAKK,YAAYV,GAE1B36B,KAAKw6B,gBAAmBS,EAAKE,EAEtBn7B,KAAKw6B,eACb,EAQAc,UAAUC,GAGF,IAAIx3B,KAAKw3B,EAAKC,cAAeD,EAAKE,WAAYF,EAAKG,WAW3DC,kBAAAA,CAAmBxT,EAAGC,GACrB,IAAIsQ,EACJ,MAAMkD,EAAKrD,GAASpQ,GACd0T,EAAKtD,GAASnQ,GAEpB,IAAKsQ,EAAI,EAAGkD,EAAGlD,IAAMmD,EAAGnD,GAAIA,IAC3B,GAAIkD,EAAGlD,KAAOmD,EAAGnD,GAAI,CACpB,MAAMoD,EAAOx5B,OAAOs5B,EAAGlD,IACjBqD,EAAOz5B,OAAOu5B,EAAGnD,IAGvB,OAAIoD,GAAQF,EAAGlD,IAAMqD,GAAQF,EAAGnD,GACxBoD,EAAOC,EAIPH,EAAGlD,GAAGsD,cAAcH,EAAGnD,GAAI11B,GAAGi5B,cAEvC,CAED,OAAOL,EAAGr6B,OAASs6B,EAAGt6B,MACvB,EAQA26B,OAAAA,CAAQp0B,EAAUq0B,GACjB,MAAMC,EAAmB,YACL,IAAft0B,KACH8Y,WAAWwb,EAAkBD,EAE/B,EAEAC,GACD,EASAC,kBAAAA,CAAmBv+B,EAAMM,GACxB,MAAMk+B,EAAUttB,SAASutB,OAAO/c,MAAM,KACtC,IAAK,IAAIhV,EAAI,EAAGA,EAAI8xB,EAAQ/6B,OAAQiJ,IAAK,CACxC,MAAM+xB,EAASD,EAAQ9xB,GAAGgV,MAAM,KAChC,GAAI+c,EAAO,GAAGnD,SAAWt7B,GAAQy+B,EAAO,GAAGnD,SAAWh7B,EACrD,OAAO,CAET,CACA,OAAO,CACR,GC3OD,IAAIo+B,GAAUh5B,OAAOi5B,YAErB,QAAuB,IAAZD,GAAyB,CACnCA,GAAU9sB,SAASwnB,SACnB,MAAMe,EAAMuE,GAAQ33B,QAAQ,eAE3B23B,IADY,IAATvE,EACOuE,GAAQtE,OAAO,EAAGD,GAElBuE,GAAQtE,OAAO,EAAGsE,GAAQhK,YAAY,KAElD,CAEA,MAAAkK,GAAA,GCkDAC,GAAA,CAICC,SClEuB,CAAC,GAAI,QAAS,MAAO,cAAe,OAAQ,YDmEnEC,UAAS,GACTC,eAAc,GACdC,kBAAiB,EACjBC,kBAAiB,EACjBC,gBAAe,EACfC,gBAAe,EACfC,iBAAgB,GAChBC,kBAAiB,EACjBC,aClE2B,mBDuE3BpnB,UAASA,GACTqnB,aAAYnnB,GACZonB,OAAQC,GAOR7mB,YAAWA,GACX8F,QAAS5F,GACTwG,YAAWO,GACX6f,SAAQC,EAQRtxB,e7KxFM,WACN,MAAO,CACNK,IAAKkK,GACLD,eAEF,E6KoFCinB,YjL7F0BA,IAAM5nB,GiL8FhC6nB,KAAI/f,GAOJggB,8BAA+BA,OAQ/BC,gBE3GM,WAIN,OAHI96B,GAAG0K,OACNvB,GAAOkC,KAAK,sGAEN0vB,EAAAA,GAAAA,IACR,EF8GC5jB,SAAQ6jB,GAAAC,GAIRC,WAAUF,GAAAG,GAIVC,QAAOJ,GAAAK,GAIPC,WAAUN,GAAAO,GAIVC,UAAW9R,GAAAA,GAKX+R,mBAAkB77B,EAAA87B,GAIlBC,UAAS/7B,EAAAg8B,GAIT3C,YAAWr5B,EAAAi8B,GAGX9H,iBG5IM,SAAeppB,GAClB,OAAKA,EAGU,IAAImxB,gBAAgBnxB,GACrB6U,WAHH,EAIf,EHuIC6V,iBGxJM,SAAelkB,GAClB,MAAMxG,EAAS,IAAImxB,gBAAgB3qB,GACnC,OAAO3L,OAAOu2B,YAAYpxB,EAAOqxB,UACrC,EHuJCpsB,IAAGA,GAIHqsB,qBAAoBje,GACpBke,QAAO5d,GACPre,MAAKA,GACLk8B,KAAItG,GACJnrB,MAAKA,GAIL0xB,SAAUC,EAAAA,GAIVl6B,YAAWm6B,EAAAC,GAIXC,YAAaxgB,EAAAA,GAIb/Z,UAASq6B,EAAAG,GACTl8B,aAAcmZ,KAIdgjB,OAAMJ,EAAAK,GAONC,UAAWA,CAACC,EAASC,KACbC,EAAAA,EAAAA,IAAeF,EAAS,CAAC,EAAG,CAClCG,WAAYF,GAAW,IACnB,IAKNG,aAAcC,EAAAA,GACdC,iBInMM,SAA0BN,GAChC,OAAOO,EAAAA,EAAAA,MAAmB,eAAiBP,CAC5C,EJ2MCrD,QAAOA,KAIR6D,EAAAA,GAAAA,IAAU,oBAAsBxtB,IAC/B7P,GAAGO,aAAesP,EAAEytB,MAGpBn0B,GAAOsL,KAAK,0BAA2B,CAAE6oB,MAAOztB,EAAEytB,UK5NnD,MAAAC,GAAA,CACCt8B,KAAIA,KACI,CACNjB,GAAEA,KAGJ8C,QAAS,CACRtH,EAAGgiC,GAAKpiB,UAAU/e,KAAKmhC,IACvBvU,EAAGuU,GAAKniB,gBAAgBhf,KAAKmhC,MCL/BC,EAAAA,GAAInK,MAAMiK,KAGV,IADaE,EAAAA,GAAIrW,OAAOsW,MACbC,OAAO,wECXlBC,QAA8BC,GAA4BC,KAE1DF,EAAAxmB,KAAA,CAAA2mB,EAAA/5B,GAAA,iDAAwF,IAAO84B,QAAA,EAAAkB,QAAA,0DAAAjX,MAAA,GAAAkX,SAAA,mBAAAC,eAAA,+CAAoLC,WAAA,MAEnR,MAAAC,EAAA,iFCJAR,QAA8BC,GAA4BC,KAE1DF,EAAAxmB,KAAA,CAAA2mB,EAAA/5B,GAAA,8WAAqZ,IAAO84B,QAAA,EAAAkB,QAAA,wDAAAjX,MAAA,GAAAkX,SAAA,mIAAAC,eAAA,ycAA4rBC,WAAA,MAExlC,MAAAC,EAAA,iFCJAR,QAA8BC,GAA4BC,KAE1DF,EAAAxmB,KAAA,CAAA2mB,EAAA/5B,GAAA,oGAA2I,IAAO84B,QAAA,EAAAkB,QAAA,oEAAAjX,MAAA,GAAAkX,SAAA,iDAAAC,eAAA,kHAA+RC,WAAA,MAEjb,MAAAC,EAAA,gFCJAR,QAA8BC,GAA4BC,KAE1DF,EAAAxmB,KAAA,CAAA2mB,EAAA/5B,GAAA,iGAAwI,IAAO84B,QAAA,EAAAkB,QAAA,4DAAAjX,MAAA,GAAAkX,SAAA,iDAAAC,eAAA,8GAAmRC,WAAA,MAEla,MAAAC,EAAA,iFCJAR,QAA8BC,GAA4BC,KAE1DF,EAAAxmB,KAAA,CAAA2mB,EAAA/5B,GAAA,sbAA6d,IAAO84B,QAAA,EAAAkB,QAAA,yCAAAjX,MAAA,GAAAkX,SAAA,yIAAAC,eAAA,mfAA6tBC,WAAA,MAEjsC,MAAAC,EAAA,iFCJAR,QAA8BC,GAA4BC,KAE1DF,EAAAxmB,KAAA,CAAA2mB,EAAA/5B,GAAA,2HAOA,IAAO84B,QAAA,EAAAkB,QAAA,6DAAAjX,MAAA,GAAAkX,SAAA,8CAAiJC,eAAA,+qGAAgrGC,WAAA,MAEx0G,MAAAC,EAAA,iCCdA,MAAA5yB,EAAA,CACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,eACA,kBACA,gBACA,mBACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,YACA,eACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,eACA,kBACA,gBACA,mBACA,gBACA,mBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,mBACA,gBACA,mBACA,gBACA,YACA,eACA,YACA,eACA,WACA,cACA,aACA,gBACA,cACA,iBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,sBACA,mBACA,sBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,gBACA,mBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,aACA,gBACA,YACA,eACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,iBACA,oBACA,gBACA,mBACA,aACA,gBACA,aACA,gBACA,mBACA,gBACA,aACA,gBACA,aACA,gBACA,YACA,eACA,aACA,gBACA,aACA,gBACA,YACA,eACA,aACA,g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","sources":["webpack:///nextcloud/core/src/components/login/LoginButton.vue","webpack:///nextcloud/core/src/components/login/LoginButton.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/components/login/LoginButton.vue?d26e","webpack://nextcloud/./core/src/components/login/LoginButton.vue?14f0","webpack://nextcloud/./core/src/components/login/LoginButton.vue?82aa","webpack:///nextcloud/core/src/mixins/auth.js","webpack:///nextcloud/core/src/components/login/LoginForm.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/login/LoginForm.vue","webpack://nextcloud/./core/src/components/login/LoginForm.vue?e584","webpack://nextcloud/./core/src/components/login/LoginForm.vue?a678","webpack://nextcloud/./core/src/components/login/LoginForm.vue?4366","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/webAuthnError.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/webAuthnAbortService.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/bufferToBase64URLString.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/base64URLStringToBuffer.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/browserSupportsWebAuthn.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/browserSupportsWebAuthnAutofill.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/toPublicKeyCredentialDescriptor.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/toAuthenticatorAttachment.js","webpack:///nextcloud/node_modules/vue-material-design-icons/LockOpen.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/LockOpen.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/LockOpen.vue?104d","webpack:///nextcloud/node_modules/vue-material-design-icons/LockOpen.vue?vue&type=template&id=d7513faa","webpack:///nextcloud/core/src/logger.js","webpack:///nextcloud/core/src/services/WebAuthnAuthenticationService.ts","webpack:///nextcloud/core/src/components/login/PasswordLessLoginForm.vue","webpack:///nextcloud/core/src/components/login/PasswordLessLoginForm.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/methods/startAuthentication.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/identifyAuthenticationError.js","webpack:///nextcloud/node_modules/@simplewebauthn/browser/esm/helpers/isValidDomain.js","webpack://nextcloud/./core/src/components/login/PasswordLessLoginForm.vue?9fd4","webpack://nextcloud/./core/src/components/login/PasswordLessLoginForm.vue?09eb","webpack://nextcloud/./core/src/components/login/PasswordLessLoginForm.vue?16ec","webpack:///nextcloud/core/src/components/login/ResetPassword.vue?vue&type=script&lang=ts","webpack:///nextcloud/core/src/components/login/ResetPassword.vue","webpack://nextcloud/./core/src/components/login/ResetPassword.vue?728b","webpack://nextcloud/./core/src/components/login/ResetPassword.vue?9d75","webpack:///nextcloud/core/src/components/login/UpdatePassword.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/login/UpdatePassword.vue","webpack://nextcloud/./core/src/components/login/UpdatePassword.vue?84cd","webpack://nextcloud/./core/src/components/login/UpdatePassword.vue?30ca","webpack://nextcloud/./core/src/components/login/UpdatePassword.vue?1c8f","webpack:///nextcloud/core/src/views/Login.vue","webpack:///nextcloud/core/src/utils/xhr-request.js","webpack:///nextcloud/core/src/views/Login.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/views/Login.vue?6ce5","webpack://nextcloud/./core/src/views/Login.vue?3468","webpack://nextcloud/./core/src/views/Login.vue?ae59","webpack:///nextcloud/core/src/OC/admin.js","webpack:///nextcloud/core/src/OC/appconfig.js","webpack:///nextcloud/core/src/OC/appswebroots.js","webpack:///nextcloud/core/src/OC/config.js","webpack:///nextcloud/core/src/OC/currentuser.js","webpack:///nextcloud/core/src/OC/debug.js","webpack:///nextcloud/core/src/OC/dialogs.js","webpack:///nextcloud/core/src/OC/requesttoken.ts","webpack:///nextcloud/core/src/OC/eventsource.js","webpack:///nextcloud/core/src/OC/l10n.js","webpack:///nextcloud/core/src/OC/mimeType.js","webpack:///nextcloud/core/src/OC/msg.ts","webpack:///nextcloud/core/src/OC/password-confirmation.js","webpack:///nextcloud/core/src/OC/plugins.js","webpack:///nextcloud/core/src/OC/theme.js","webpack:///nextcloud/node_modules/underscore/modules/_setup.js","webpack:///nextcloud/node_modules/underscore/modules/restArguments.js","webpack:///nextcloud/node_modules/underscore/modules/isObject.js","webpack:///nextcloud/node_modules/underscore/modules/isNull.js","webpack:///nextcloud/node_modules/underscore/modules/isUndefined.js","webpack:///nextcloud/node_modules/underscore/modules/isBoolean.js","webpack:///nextcloud/node_modules/underscore/modules/isElement.js","webpack:///nextcloud/node_modules/underscore/modules/_tagTester.js","webpack:///nextcloud/node_modules/underscore/modules/isString.js","webpack:///nextcloud/node_modules/underscore/modules/isNumber.js","webpack:///nextcloud/node_modules/underscore/modules/isDate.js","webpack:///nextcloud/node_modules/underscore/modules/isRegExp.js","webpack:///nextcloud/node_modules/underscore/modules/isError.js","webpack:///nextcloud/node_modules/underscore/modules/isSymbol.js","webpack:///nextcloud/node_modules/underscore/modules/isArrayBuffer.js","webpack:///nextcloud/node_modules/underscore/modules/isFunction.js","webpack:///nextcloud/node_modules/underscore/modules/_hasObjectTag.js","webpack:///nextcloud/node_modules/underscore/modules/_stringTagBug.js","webpack:///nextcloud/node_modules/underscore/modules/isDataView.js","webpack:///nextcloud/node_modules/underscore/modules/isArray.js","webpack:///nextcloud/node_modules/underscore/modules/_has.js","webpack:///nextcloud/node_modules/underscore/modules/isArguments.js","webpack:///nextcloud/node_modules/underscore/modules/isFinite.js","webpack:///nextcloud/node_modules/underscore/modules/isNaN.js","webpack:///nextcloud/node_modules/underscore/modules/constant.js","webpack:///nextcloud/node_modules/underscore/modules/_createSizePropertyCheck.js","webpack:///nextcloud/node_modules/underscore/modules/_shallowProperty.js","webpack:///nextcloud/node_modules/underscore/modules/_getByteLength.js","webpack:///nextcloud/node_modules/underscore/modules/_isBufferLike.js","webpack:///nextcloud/node_modules/underscore/modules/isTypedArray.js","webpack:///nextcloud/node_modules/underscore/modules/_getLength.js","webpack:///nextcloud/node_modules/underscore/modules/_collectNonEnumProps.js","webpack:///nextcloud/node_modules/underscore/modules/keys.js","webpack:///nextcloud/node_modules/underscore/modules/isEmpty.js","webpack:///nextcloud/node_modules/underscore/modules/isMatch.js","webpack:///nextcloud/node_modules/underscore/modules/underscore.js","webpack:///nextcloud/node_modules/underscore/modules/_toBufferView.js","webpack:///nextcloud/node_modules/underscore/modules/isEqual.js","webpack:///nextcloud/node_modules/underscore/modules/allKeys.js","webpack:///nextcloud/node_modules/underscore/modules/_methodFingerprint.js","webpack:///nextcloud/node_modules/underscore/modules/isMap.js","webpack:///nextcloud/node_modules/underscore/modules/isWeakMap.js","webpack:///nextcloud/node_modules/underscore/modules/isSet.js","webpack:///nextcloud/node_modules/underscore/modules/isWeakSet.js","webpack:///nextcloud/node_modules/underscore/modules/values.js","webpack:///nextcloud/node_modules/underscore/modules/pairs.js","webpack:///nextcloud/node_modules/underscore/modules/invert.js","webpack:///nextcloud/node_modules/underscore/modules/functions.js","webpack:///nextcloud/node_modules/underscore/modules/_createAssigner.js","webpack:///nextcloud/node_modules/underscore/modules/extend.js","webpack:///nextcloud/node_modules/underscore/modules/extendOwn.js","webpack:///nextcloud/node_modules/underscore/modules/defaults.js","webpack:///nextcloud/node_modules/underscore/modules/_baseCreate.js","webpack:///nextcloud/node_modules/underscore/modules/create.js","webpack:///nextcloud/node_modules/underscore/modules/clone.js","webpack:///nextcloud/node_modules/underscore/modules/tap.js","webpack:///nextcloud/node_modules/underscore/modules/toPath.js","webpack:///nextcloud/node_modules/underscore/modules/_toPath.js","webpack:///nextcloud/node_modules/underscore/modules/_deepGet.js","webpack:///nextcloud/node_modules/underscore/modules/get.js","webpack:///nextcloud/node_modules/underscore/modules/has.js","webpack:///nextcloud/node_modules/underscore/modules/identity.js","webpack:///nextcloud/node_modules/underscore/modules/matcher.js","webpack:///nextcloud/node_modules/underscore/modules/property.js","webpack:///nextcloud/node_modules/underscore/modules/_optimizeCb.js","webpack:///nextcloud/node_modules/underscore/modules/_baseIteratee.js","webpack:///nextcloud/node_modules/underscore/modules/iteratee.js","webpack:///nextcloud/node_modules/underscore/modules/_cb.js","webpack:///nextcloud/node_modules/underscore/modules/mapObject.js","webpack:///nextcloud/node_modules/underscore/modules/noop.js","webpack:///nextcloud/node_modules/underscore/modules/propertyOf.js","webpack:///nextcloud/node_modules/underscore/modules/times.js","webpack:///nextcloud/node_modules/underscore/modules/random.js","webpack:///nextcloud/node_modules/underscore/modules/now.js","webpack:///nextcloud/node_modules/underscore/modules/_createEscaper.js","webpack:///nextcloud/node_modules/underscore/modules/_escapeMap.js","webpack:///nextcloud/node_modules/underscore/modules/escape.js","webpack:///nextcloud/node_modules/underscore/modules/unescape.js","webpack:///nextcloud/node_modules/underscore/modules/_unescapeMap.js","webpack:///nextcloud/node_modules/underscore/modules/templateSettings.js","webpack:///nextcloud/node_modules/underscore/modules/template.js","webpack:///nextcloud/node_modules/underscore/modules/result.js","webpack:///nextcloud/node_modules/underscore/modules/uniqueId.js","webpack:///nextcloud/node_modules/underscore/modules/chain.js","webpack:///nextcloud/node_modules/underscore/modules/_executeBound.js","webpack:///nextcloud/node_modules/underscore/modules/partial.js","webpack:///nextcloud/node_modules/underscore/modules/bind.js","webpack:///nextcloud/node_modules/underscore/modules/_isArrayLike.js","webpack:///nextcloud/node_modules/underscore/modules/_flatten.js","webpack:///nextcloud/node_modules/underscore/modules/bindAll.js","webpack:///nextcloud/node_modules/underscore/modules/memoize.js","webpack:///nextcloud/node_modules/underscore/modules/delay.js","webpack:///nextcloud/node_modules/underscore/modules/defer.js","webpack:///nextcloud/node_modules/underscore/modules/throttle.js","webpack:///nextcloud/node_modules/underscore/modules/debounce.js","webpack:///nextcloud/node_modules/underscore/modules/wrap.js","webpack:///nextcloud/node_modules/underscore/modules/negate.js","webpack:///nextcloud/node_modules/underscore/modules/compose.js","webpack:///nextcloud/node_modules/underscore/modules/after.js","webpack:///nextcloud/node_modules/underscore/modules/before.js","webpack:///nextcloud/node_modules/underscore/modules/once.js","webpack:///nextcloud/node_modules/underscore/modules/findKey.js","webpack:///nextcloud/node_modules/underscore/modules/_createPredicateIndexFinder.js","webpack:///nextcloud/node_modules/underscore/modules/findIndex.js","webpack:///nextcloud/node_modules/underscore/modules/findLastIndex.js","webpack:///nextcloud/node_modules/underscore/modules/sortedIndex.js","webpack:///nextcloud/node_modules/underscore/modules/_createIndexFinder.js","webpack:///nextcloud/node_modules/underscore/modules/indexOf.js","webpack:///nextcloud/node_modules/underscore/modules/lastIndexOf.js","webpack:///nextcloud/node_modules/underscore/modules/find.js","webpack:///nextcloud/node_modules/underscore/modules/findWhere.js","webpack:///nextcloud/node_modules/underscore/modules/each.js","webpack:///nextcloud/node_modules/underscore/modules/map.js","webpack:///nextcloud/node_modules/underscore/modules/_createReduce.js","webpack:///nextcloud/node_modules/underscore/modules/reduce.js","webpack:///nextcloud/node_modules/underscore/modules/reduceRight.js","webpack:///nextcloud/node_modules/underscore/modules/filter.js","webpack:///nextcloud/node_modules/underscore/modules/reject.js","webpack:///nextcloud/node_modules/underscore/modules/every.js","webpack:///nextcloud/node_modules/underscore/modules/some.js","webpack:///nextcloud/node_modules/underscore/modules/contains.js","webpack:///nextcloud/node_modules/underscore/modules/invoke.js","webpack:///nextcloud/node_modules/underscore/modules/pluck.js","webpack:///nextcloud/node_modules/underscore/modules/where.js","webpack:///nextcloud/node_modules/underscore/modules/max.js","webpack:///nextcloud/node_modules/underscore/modules/min.js","webpack:///nextcloud/node_modules/underscore/modules/toArray.js","webpack:///nextcloud/node_modules/underscore/modules/sample.js","webpack:///nextcloud/node_modules/underscore/modules/shuffle.js","webpack:///nextcloud/node_modules/underscore/modules/sortBy.js","webpack:///nextcloud/node_modules/underscore/modules/_group.js","webpack:///nextcloud/node_modules/underscore/modules/groupBy.js","webpack:///nextcloud/node_modules/underscore/modules/indexBy.js","webpack:///nextcloud/node_modules/underscore/modules/countBy.js","webpack:///nextcloud/node_modules/underscore/modules/partition.js","webpack:///nextcloud/node_modules/underscore/modules/size.js","webpack:///nextcloud/node_modules/underscore/modules/_keyInObj.js","webpack:///nextcloud/node_modules/underscore/modules/pick.js","webpack:///nextcloud/node_modules/underscore/modules/omit.js","webpack:///nextcloud/node_modules/underscore/modules/initial.js","webpack:///nextcloud/node_modules/underscore/modules/first.js","webpack:///nextcloud/node_modules/underscore/modules/rest.js","webpack:///nextcloud/node_modules/underscore/modules/last.js","webpack:///nextcloud/node_modules/underscore/modules/compact.js","webpack:///nextcloud/node_modules/underscore/modules/flatten.js","webpack:///nextcloud/node_modules/underscore/modules/difference.js","webpack:///nextcloud/node_modules/underscore/modules/without.js","webpack:///nextcloud/node_modules/underscore/modules/uniq.js","webpack:///nextcloud/node_modules/underscore/modules/union.js","webpack:///nextcloud/node_modules/underscore/modules/intersection.js","webpack:///nextcloud/node_modules/underscore/modules/unzip.js","webpack:///nextcloud/node_modules/underscore/modules/zip.js","webpack:///nextcloud/node_modules/underscore/modules/object.js","webpack:///nextcloud/node_modules/underscore/modules/range.js","webpack:///nextcloud/node_modules/underscore/modules/chunk.js","webpack:///nextcloud/node_modules/underscore/modules/_chainResult.js","webpack:///nextcloud/node_modules/underscore/modules/mixin.js","webpack:///nextcloud/node_modules/underscore/modules/underscore-array-methods.js","webpack:///nextcloud/node_modules/underscore/modules/index-default.js","webpack:///nextcloud/core/src/OC/util-history.js","webpack:///nextcloud/core/src/OC/util.js","webpack:///nextcloud/core/src/OC/webroot.js","webpack:///nextcloud/core/src/OC/index.js","webpack:///nextcloud/core/src/OC/constants.js","webpack:///nextcloud/core/src/OC/capabilities.js","webpack:///nextcloud/core/src/OC/query-string.ts","webpack:///nextcloud/core/src/OC/routing.js","webpack:///nextcloud/core/src/mixins/Nextcloud.js","webpack:///nextcloud/core/src/login.js","webpack:///nextcloud/core/src/components/login/LoginButton.vue?vue&type=style&index=0&id=bbf83d00&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/login/LoginForm.vue?vue&type=style&index=0&id=fac76c6a&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/login/PasswordLessLoginForm.vue?vue&type=style&index=0&id=25758ef3&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/login/ResetPassword.vue?vue&type=style&index=0&id=759a0fdd&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/views/Login.vue?vue&type=style&index=0&id=518c0816&prod&scoped=true&lang=scss","webpack:///nextcloud/core/src/components/login/UpdatePassword.vue?vue&type=style&index=0&id=2c0ecaf9&prod&scoped=true&lang=css","webpack:///nextcloud/node_modules/moment/locale|sync|/^\\.\\/.*$","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/chunk loaded","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/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/set anonymous default export name","webpack:///nextcloud/webpack/runtime/wrap commonjs module","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginButton.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!./LoginButton.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginButton.vue?vue&type=style&index=0&id=bbf83d00&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginButton.vue?vue&type=style&index=0&id=bbf83d00&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LoginButton.vue?vue&type=template&id=bbf83d00&scoped=true\"\nimport script from \"./LoginButton.vue?vue&type=script&lang=js\"\nexport * from \"./LoginButton.vue?vue&type=script&lang=js\"\nimport style0 from \"./LoginButton.vue?vue&type=style&index=0&id=bbf83d00&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 \"bbf83d00\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcButton',{attrs:{\"variant\":\"primary\",\"type\":\"submit\",\"wide\":true,\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.$emit('click')}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading)?_c('div',{staticClass:\"submit-wrapper__icon icon-loading-small-dark\"}):_c('ArrowRight',{staticClass:\"submit-wrapper__icon\"})]},proxy:true}])},[_vm._v(\"\\n\\t\"+_vm._s(!_vm.loading ? _vm.value : _vm.valueLoading)+\"\\n\\t\")])\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 */\n\nexport default {\n\n\tcomputed: {\n\t\tuserNameInputLengthIs255() {\n\t\t\treturn this.user.length >= 255\n\t\t},\n\t\tuserInputHelperText() {\n\t\t\tif (this.userNameInputLengthIs255) {\n\t\t\t\treturn t('core', 'Email length is at max (255)')\n\t\t\t}\n\t\t\treturn undefined\n\t\t},\n\t},\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginForm.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!./LoginForm.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginForm.vue?vue&type=style&index=0&id=fac76c6a&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoginForm.vue?vue&type=style&index=0&id=fac76c6a&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./LoginForm.vue?vue&type=template&id=fac76c6a&scoped=true\"\nimport script from \"./LoginForm.vue?vue&type=script&lang=js\"\nexport * from \"./LoginForm.vue?vue&type=script&lang=js\"\nimport style0 from \"./LoginForm.vue?vue&type=style&index=0&id=fac76c6a&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 \"fac76c6a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('form',{ref:\"loginForm\",staticClass:\"login-form\",attrs:{\"method\":\"post\",\"name\":\"login\",\"action\":_vm.loginActionUrl},on:{\"submit\":_vm.submit}},[_c('fieldset',{staticClass:\"login-form__fieldset\",attrs:{\"data-login-form\":\"\"}},[(_vm.apacheAuthFailed)?_c('NcNoteCard',{attrs:{\"title\":_vm.t('core', 'Server side authentication failed!'),\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('core', 'Please contact your administrator.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.csrfCheckFailed)?_c('NcNoteCard',{attrs:{\"heading\":_vm.t('core', 'Session error'),\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('core', 'It appears your session token has expired, please refresh the page and try again.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.messages.length > 0)?_c('NcNoteCard',_vm._l((_vm.messages),function(message,index){return _c('div',{key:index},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(message)),_c('br')])}),0):_vm._e(),_vm._v(\" \"),(_vm.internalException)?_c('NcNoteCard',{class:_vm.t('core', 'An internal error occurred.'),attrs:{\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('core', 'Please try again or contact your administrator.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"hidden\",attrs:{\"id\":\"message\"}},[_c('img',{staticClass:\"float-spinner\",attrs:{\"alt\":\"\",\"src\":_vm.loadingIcon}}),_vm._v(\" \"),_c('span',{attrs:{\"id\":\"messageText\"}}),_vm._v(\" \"),_c('div',{staticStyle:{\"clear\":\"both\"}})]),_vm._v(\" \"),_c('h2',{staticClass:\"login-form__headline\",attrs:{\"data-login-form-headline\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.headlineText)+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcTextField',{ref:\"user\",class:{ shake: _vm.invalidPassword },attrs:{\"id\":\"user\",\"label\":_vm.loginText,\"name\":\"user\",\"maxlength\":255,\"autocapitalize\":\"none\",\"spellchecking\":false,\"autocomplete\":_vm.autoCompleteAllowed ? 'username' : 'off',\"required\":\"\",\"error\":_vm.userNameInputLengthIs255,\"helper-text\":_vm.userInputHelperText,\"data-login-form-input-user\":\"\"},on:{\"change\":_vm.updateUsername},model:{value:(_vm.user),callback:function ($$v) {_vm.user=$$v},expression:\"user\"}}),_vm._v(\" \"),_c('NcPasswordField',{ref:\"password\",class:{ shake: _vm.invalidPassword },attrs:{\"id\":\"password\",\"name\":\"password\",\"spellchecking\":false,\"autocapitalize\":\"none\",\"autocomplete\":_vm.autoCompleteAllowed ? 'current-password' : 'off',\"label\":_vm.t('core', 'Password'),\"helper-text\":_vm.errorLabel,\"error\":_vm.isError,\"visible\":_vm.visible,\"data-login-form-input-password\":\"\",\"required\":\"\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_vm._v(\" \"),(_vm.remembermeAllowed)?_c('NcCheckboxRadioSwitch',{ref:\"rememberme\",attrs:{\"id\":\"rememberme\",\"name\":\"rememberme\",\"value\":\"1\",\"data-login-form-input-rememberme\":\"\"},model:{value:(_vm.rememberme),callback:function ($$v) {_vm.rememberme=$$v},expression:\"rememberme\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('core', 'Remember me'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('LoginButton',{attrs:{\"data-login-form-submit\":\"\",\"loading\":_vm.loading}}),_vm._v(\" \"),(_vm.redirectUrl)?_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"redirect_url\"},domProps:{\"value\":_vm.redirectUrl}}):_vm._e(),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"timezone\"},domProps:{\"value\":_vm.timezone}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"timezone_offset\"},domProps:{\"value\":_vm.timezoneOffset}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"requesttoken\"},domProps:{\"value\":_vm.requestToken}}),_vm._v(\" \"),(_vm.directLogin)?_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"direct\",\"value\":\"1\"}}):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * A custom Error used to return a more nuanced error detailing _why_ one of the eight documented\n * errors in the spec was raised after calling `navigator.credentials.create()` or\n * `navigator.credentials.get()`:\n *\n * - `AbortError`\n * - `ConstraintError`\n * - `InvalidStateError`\n * - `NotAllowedError`\n * - `NotSupportedError`\n * - `SecurityError`\n * - `TypeError`\n * - `UnknownError`\n *\n * Error messages were determined through investigation of the spec to determine under which\n * scenarios a given error would be raised.\n */\nexport class WebAuthnError extends Error {\n constructor({ message, code, cause, name, }) {\n // @ts-ignore: help Rollup understand that `cause` is okay to set\n super(message, { cause });\n Object.defineProperty(this, \"code\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.name = name ?? cause.name;\n this.code = code;\n }\n}\n","class BaseWebAuthnAbortService {\n constructor() {\n Object.defineProperty(this, \"controller\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n }\n createNewAbortSignal() {\n // Abort any existing calls to navigator.credentials.create() or navigator.credentials.get()\n if (this.controller) {\n const abortError = new Error('Cancelling existing WebAuthn API call for new one');\n abortError.name = 'AbortError';\n this.controller.abort(abortError);\n }\n const newController = new AbortController();\n this.controller = newController;\n return newController.signal;\n }\n cancelCeremony() {\n if (this.controller) {\n const abortError = new Error('Manually cancelling existing WebAuthn API call');\n abortError.name = 'AbortError';\n this.controller.abort(abortError);\n this.controller = undefined;\n }\n }\n}\n/**\n * A service singleton to help ensure that only a single WebAuthn ceremony is active at a time.\n *\n * Users of **@simplewebauthn/browser** shouldn't typically need to use this, but it can help e.g.\n * developers building projects that use client-side routing to better control the behavior of\n * their UX in response to router navigation events.\n */\nexport const WebAuthnAbortService = new BaseWebAuthnAbortService();\n","/**\n * Convert the given array buffer into a Base64URL-encoded string. Ideal for converting various\n * credential response ArrayBuffers to string for sending back to the server as JSON.\n *\n * Helper method to compliment `base64URLStringToBuffer`\n */\nexport function bufferToBase64URLString(buffer) {\n const bytes = new Uint8Array(buffer);\n let str = '';\n for (const charCode of bytes) {\n str += String.fromCharCode(charCode);\n }\n const base64String = btoa(str);\n return base64String.replace(/\\+/g, '-').replace(/\\//g, '_').replace(/=/g, '');\n}\n","/**\n * Convert from a Base64URL-encoded string to an Array Buffer. Best used when converting a\n * credential ID from a JSON string to an ArrayBuffer, like in allowCredentials or\n * excludeCredentials\n *\n * Helper method to compliment `bufferToBase64URLString`\n */\nexport function base64URLStringToBuffer(base64URLString) {\n // Convert from Base64URL to Base64\n const base64 = base64URLString.replace(/-/g, '+').replace(/_/g, '/');\n /**\n * Pad with '=' until it's a multiple of four\n * (4 - (85 % 4 = 1) = 3) % 4 = 3 padding\n * (4 - (86 % 4 = 2) = 2) % 4 = 2 padding\n * (4 - (87 % 4 = 3) = 1) % 4 = 1 padding\n * (4 - (88 % 4 = 0) = 4) % 4 = 0 padding\n */\n const padLength = (4 - (base64.length % 4)) % 4;\n const padded = base64.padEnd(base64.length + padLength, '=');\n // Convert to a binary string\n const binary = atob(padded);\n // Convert binary string to buffer\n const buffer = new ArrayBuffer(binary.length);\n const bytes = new Uint8Array(buffer);\n for (let i = 0; i < binary.length; i++) {\n bytes[i] = binary.charCodeAt(i);\n }\n return buffer;\n}\n","/**\n * Determine if the browser is capable of Webauthn\n */\nexport function browserSupportsWebAuthn() {\n return _browserSupportsWebAuthnInternals.stubThis(globalThis?.PublicKeyCredential !== undefined &&\n typeof globalThis.PublicKeyCredential === 'function');\n}\n/**\n * Make it possible to stub the return value during testing\n * @ignore Don't include this in docs output\n */\nexport const _browserSupportsWebAuthnInternals = {\n stubThis: (value) => value,\n};\n","import { browserSupportsWebAuthn } from './browserSupportsWebAuthn.js';\n/**\n * Determine if the browser supports conditional UI, so that WebAuthn credentials can\n * be shown to the user in the browser's typical password autofill popup.\n */\nexport function browserSupportsWebAuthnAutofill() {\n if (!browserSupportsWebAuthn()) {\n return _browserSupportsWebAuthnAutofillInternals.stubThis(new Promise((resolve) => resolve(false)));\n }\n /**\n * I don't like the `as unknown` here but there's a `declare var PublicKeyCredential` in\n * TS' DOM lib that's making it difficult for me to just go `as PublicKeyCredentialFuture` as I\n * want. I think I'm fine with this for now since it's _supposed_ to be temporary, until TS types\n * have a chance to catch up.\n */\n const globalPublicKeyCredential = globalThis\n .PublicKeyCredential;\n if (globalPublicKeyCredential?.isConditionalMediationAvailable === undefined) {\n return _browserSupportsWebAuthnAutofillInternals.stubThis(new Promise((resolve) => resolve(false)));\n }\n return _browserSupportsWebAuthnAutofillInternals.stubThis(globalPublicKeyCredential.isConditionalMediationAvailable());\n}\n// Make it possible to stub the return value during testing\nexport const _browserSupportsWebAuthnAutofillInternals = {\n stubThis: (value) => value,\n};\n","import { base64URLStringToBuffer } from './base64URLStringToBuffer.js';\nexport function toPublicKeyCredentialDescriptor(descriptor) {\n const { id } = descriptor;\n return {\n ...descriptor,\n id: base64URLStringToBuffer(id),\n /**\n * `descriptor.transports` is an array of our `AuthenticatorTransportFuture` that includes newer\n * transports that TypeScript's DOM lib is ignorant of. Convince TS that our list of transports\n * are fine to pass to WebAuthn since browsers will recognize the new value.\n */\n transports: descriptor.transports,\n };\n}\n","const attachments = ['cross-platform', 'platform'];\n/**\n * If possible coerce a `string` value into a known `AuthenticatorAttachment`\n */\nexport function toAuthenticatorAttachment(attachment) {\n if (!attachment) {\n return;\n }\n if (attachments.indexOf(attachment) < 0) {\n return;\n }\n return attachment;\n}\n","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./LockOpen.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./LockOpen.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./LockOpen.vue?vue&type=template&id=d7513faa\"\nimport script from \"./LockOpen.vue?vue&type=script&lang=js\"\nexport * from \"./LockOpen.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 lock-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\":\"M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10A2,2 0 0,1 6,8H15V6A3,3 0 0,0 12,3A3,3 0 0,0 9,6H7A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,17A2,2 0 0,0 14,15A2,2 0 0,0 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\n/**\n *\n * @param user\n */\nfunction getLogger(user) {\n\tif (user === null) {\n\t\treturn getLoggerBuilder()\n\t\t\t.setApp('core')\n\t\t\t.build()\n\t}\n\treturn getLoggerBuilder()\n\t\t.setApp('core')\n\t\t.setUid(user.uid)\n\t\t.build()\n}\n\nexport default getLogger(getCurrentUser())\n\nexport const unifiedSearchLogger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Axios from '@nextcloud/axios';\nimport { generateUrl } from '@nextcloud/router';\nimport { startAuthentication as startWebauthnAuthentication } from '@simplewebauthn/browser';\nimport logger from '../logger.js';\nexport class NoValidCredentials extends Error {\n}\n/**\n * Start webautn authentication\n * This loads the challenge, connects to the authenticator and returns the repose that needs to be sent to the server.\n *\n * @param loginName Name to login\n */\nexport async function startAuthentication(loginName) {\n const url = generateUrl('/login/webauthn/start');\n const { data } = await Axios.post(url, { loginName });\n if (!data.allowCredentials || data.allowCredentials.length === 0) {\n logger.error('No valid credentials returned for webauthn');\n throw new NoValidCredentials();\n }\n return await startWebauthnAuthentication({ optionsJSON: data });\n}\n/**\n * Verify webauthn authentication\n *\n * @param authData The authentication data to sent to the server\n */\nexport async function finishAuthentication(authData) {\n const url = generateUrl('/login/webauthn/finish');\n const { data } = await Axios.post(url, { data: JSON.stringify(authData) });\n return data;\n}\n","\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordLessLoginForm.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!./PasswordLessLoginForm.vue?vue&type=script&lang=js\"","import { bufferToBase64URLString } from '../helpers/bufferToBase64URLString.js';\nimport { base64URLStringToBuffer } from '../helpers/base64URLStringToBuffer.js';\nimport { browserSupportsWebAuthn } from '../helpers/browserSupportsWebAuthn.js';\nimport { browserSupportsWebAuthnAutofill } from '../helpers/browserSupportsWebAuthnAutofill.js';\nimport { toPublicKeyCredentialDescriptor } from '../helpers/toPublicKeyCredentialDescriptor.js';\nimport { identifyAuthenticationError } from '../helpers/identifyAuthenticationError.js';\nimport { WebAuthnAbortService } from '../helpers/webAuthnAbortService.js';\nimport { toAuthenticatorAttachment } from '../helpers/toAuthenticatorAttachment.js';\n/**\n * Begin authenticator \"login\" via WebAuthn assertion\n *\n * @param optionsJSON Output from **@simplewebauthn/server**'s `generateAuthenticationOptions()`\n * @param useBrowserAutofill (Optional) Initialize conditional UI to enable logging in via browser autofill prompts. Defaults to `false`.\n * @param verifyBrowserAutofillInput (Optional) Ensure a suitable `` element is present when `useBrowserAutofill` is `true`. Defaults to `true`.\n */\nexport async function startAuthentication(options) {\n // @ts-ignore: Intentionally check for old call structure to warn about improper API call\n if (!options.optionsJSON && options.challenge) {\n console.warn('startAuthentication() was not called correctly. It will try to continue with the provided options, but this call should be refactored to use the expected call structure instead. See https://simplewebauthn.dev/docs/packages/browser#typeerror-cannot-read-properties-of-undefined-reading-challenge for more information.');\n // @ts-ignore: Reassign the options, passed in as a positional argument, to the expected variable\n options = { optionsJSON: options };\n }\n const { optionsJSON, useBrowserAutofill = false, verifyBrowserAutofillInput = true, } = options;\n if (!browserSupportsWebAuthn()) {\n throw new Error('WebAuthn is not supported in this browser');\n }\n // We need to avoid passing empty array to avoid blocking retrieval\n // of public key\n let allowCredentials;\n if (optionsJSON.allowCredentials?.length !== 0) {\n allowCredentials = optionsJSON.allowCredentials?.map(toPublicKeyCredentialDescriptor);\n }\n // We need to convert some values to Uint8Arrays before passing the credentials to the navigator\n const publicKey = {\n ...optionsJSON,\n challenge: base64URLStringToBuffer(optionsJSON.challenge),\n allowCredentials,\n };\n // Prepare options for `.get()`\n const getOptions = {};\n /**\n * Set up the page to prompt the user to select a credential for authentication via the browser's\n * input autofill mechanism.\n */\n if (useBrowserAutofill) {\n if (!(await browserSupportsWebAuthnAutofill())) {\n throw Error('Browser does not support WebAuthn autofill');\n }\n // Check for an with \"webauthn\" in its `autocomplete` attribute\n const eligibleInputs = document.querySelectorAll(\"input[autocomplete$='webauthn']\");\n // WebAuthn autofill requires at least one valid input\n if (eligibleInputs.length < 1 && verifyBrowserAutofillInput) {\n throw Error('No with \"webauthn\" as the only or last value in its `autocomplete` attribute was detected');\n }\n // `CredentialMediationRequirement` doesn't know about \"conditional\" yet as of\n // typescript@4.6.3\n getOptions.mediation = 'conditional';\n // Conditional UI requires an empty allow list\n publicKey.allowCredentials = [];\n }\n // Finalize options\n getOptions.publicKey = publicKey;\n // Set up the ability to cancel this request if the user attempts another\n getOptions.signal = WebAuthnAbortService.createNewAbortSignal();\n // Wait for the user to complete assertion\n let credential;\n try {\n credential = (await navigator.credentials.get(getOptions));\n }\n catch (err) {\n throw identifyAuthenticationError({ error: err, options: getOptions });\n }\n if (!credential) {\n throw new Error('Authentication was not completed');\n }\n const { id, rawId, response, type } = credential;\n let userHandle = undefined;\n if (response.userHandle) {\n userHandle = bufferToBase64URLString(response.userHandle);\n }\n // Convert values to base64 to make it easier to send back to the server\n return {\n id,\n rawId: bufferToBase64URLString(rawId),\n response: {\n authenticatorData: bufferToBase64URLString(response.authenticatorData),\n clientDataJSON: bufferToBase64URLString(response.clientDataJSON),\n signature: bufferToBase64URLString(response.signature),\n userHandle,\n },\n type,\n clientExtensionResults: credential.getClientExtensionResults(),\n authenticatorAttachment: toAuthenticatorAttachment(credential.authenticatorAttachment),\n };\n}\n","import { isValidDomain } from './isValidDomain.js';\nimport { WebAuthnError } from './webAuthnError.js';\n/**\n * Attempt to intuit _why_ an error was raised after calling `navigator.credentials.get()`\n */\nexport function identifyAuthenticationError({ error, options, }) {\n const { publicKey } = options;\n if (!publicKey) {\n throw Error('options was missing required publicKey property');\n }\n if (error.name === 'AbortError') {\n if (options.signal instanceof AbortSignal) {\n // https://www.w3.org/TR/webauthn-2/#sctn-createCredential (Step 16)\n return new WebAuthnError({\n message: 'Authentication ceremony was sent an abort signal',\n code: 'ERROR_CEREMONY_ABORTED',\n cause: error,\n });\n }\n }\n else if (error.name === 'NotAllowedError') {\n /**\n * Pass the error directly through. Platforms are overloading this error beyond what the spec\n * defines and we don't want to overwrite potentially useful error messages.\n */\n return new WebAuthnError({\n message: error.message,\n code: 'ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY',\n cause: error,\n });\n }\n else if (error.name === 'SecurityError') {\n const effectiveDomain = globalThis.location.hostname;\n if (!isValidDomain(effectiveDomain)) {\n // https://www.w3.org/TR/webauthn-2/#sctn-discover-from-external-source (Step 5)\n return new WebAuthnError({\n message: `${globalThis.location.hostname} is an invalid domain`,\n code: 'ERROR_INVALID_DOMAIN',\n cause: error,\n });\n }\n else if (publicKey.rpId !== effectiveDomain) {\n // https://www.w3.org/TR/webauthn-2/#sctn-discover-from-external-source (Step 6)\n return new WebAuthnError({\n message: `The RP ID \"${publicKey.rpId}\" is invalid for this domain`,\n code: 'ERROR_INVALID_RP_ID',\n cause: error,\n });\n }\n }\n else if (error.name === 'UnknownError') {\n // https://www.w3.org/TR/webauthn-2/#sctn-op-get-assertion (Step 1)\n // https://www.w3.org/TR/webauthn-2/#sctn-op-get-assertion (Step 12)\n return new WebAuthnError({\n message: 'The authenticator was unable to process the specified options, or could not create a new assertion signature',\n code: 'ERROR_AUTHENTICATOR_GENERAL_ERROR',\n cause: error,\n });\n }\n return error;\n}\n","/**\n * A simple test to determine if a hostname is a properly-formatted domain name\n *\n * A \"valid domain\" is defined here: https://url.spec.whatwg.org/#valid-domain\n *\n * Regex was originally sourced from here, then remixed to add punycode support:\n * https://www.oreilly.com/library/view/regular-expressions-cookbook/9781449327453/ch08s15.html\n */\nexport function isValidDomain(hostname) {\n return (\n // Consider localhost valid as well since it's okay wrt Secure Contexts\n hostname === 'localhost' ||\n // Support punycode (ACE) or ascii labels and domains\n /^((xn--[a-z0-9-]+|[a-z0-9]+(-[a-z0-9]+)*)\\.)+([a-z]{2,}|xn--[a-z0-9-]+)$/i.test(hostname));\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordLessLoginForm.vue?vue&type=style&index=0&id=25758ef3&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordLessLoginForm.vue?vue&type=style&index=0&id=25758ef3&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./PasswordLessLoginForm.vue?vue&type=template&id=25758ef3&scoped=true\"\nimport script from \"./PasswordLessLoginForm.vue?vue&type=script&lang=js\"\nexport * from \"./PasswordLessLoginForm.vue?vue&type=script&lang=js\"\nimport style0 from \"./PasswordLessLoginForm.vue?vue&type=style&index=0&id=25758ef3&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 \"25758ef3\",\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.isHttps || _vm.isLocalhost) && _vm.supportsWebauthn)?_c('form',{ref:\"loginForm\",staticClass:\"password-less-login-form\",attrs:{\"aria-labelledby\":\"password-less-login-form-title\",\"method\":\"post\",\"name\":\"login\"},on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('h2',{attrs:{\"id\":\"password-less-login-form-title\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Log in with a device'))+\"\\n\\t\")]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"required\":\"\",\"model-value\":_vm.user,\"autocomplete\":_vm.autoCompleteAllowed ? 'on' : 'off',\"error\":!_vm.validCredentials,\"label\":_vm.t('core', 'Login or email'),\"placeholder\":_vm.t('core', 'Login or email'),\"helper-text\":!_vm.validCredentials ? _vm.t('core', 'Your account is not setup for passwordless login.') : ''},on:{\"update:value\":_vm.changeUsername}}),_vm._v(\" \"),(_vm.validCredentials)?_c('LoginButton',{attrs:{\"loading\":_vm.loading},on:{\"click\":_vm.authenticate}}):_vm._e()],1):(!_vm.isHttps && !_vm.isLocalhost)?_c('NcEmptyContent',{attrs:{\"name\":_vm.t('core', 'Your connection is not secure'),\"description\":_vm.t('core', 'Passwordless authentication is only available over a secure connection.')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('LockOpenIcon')]},proxy:true}])}):_c('NcEmptyContent',{attrs:{\"name\":_vm.t('core', 'Browser not supported'),\"description\":_vm.t('core', 'Passwordless authentication is not supported in your browser.')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('InformationIcon')]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.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-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('form',{staticClass:\"reset-password-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('h2',[_vm._v(_vm._s(_vm.t('core', 'Reset password')))]),_vm._v(\" \"),_c('NcTextField',{attrs:{\"id\":\"user\",\"name\":\"user\",\"maxlength\":255,\"autocapitalize\":\"off\",\"label\":_vm.t('core', 'Login or email'),\"error\":_vm.userNameInputLengthIs255,\"helper-text\":_vm.userInputHelperText,\"required\":\"\"},on:{\"change\":_vm.updateUsername},model:{value:(_vm.user),callback:function ($$v) {_vm.user=$$v},expression:\"user\"}}),_vm._v(\" \"),_c('LoginButton',{attrs:{\"loading\":_vm.loading,\"value\":_vm.t('core', 'Reset password')}}),_vm._v(\" \"),_c('NcButton',{attrs:{\"variant\":\"tertiary\",\"wide\":\"\"},on:{\"click\":function($event){return _vm.$emit('abort')}}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Back to login'))+\"\\n\\t\")]),_vm._v(\" \"),(_vm.message === 'send-success')?_c('NcNoteCard',{attrs:{\"type\":\"success\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help.'))+\"\\n\\t\")]):(_vm.message === 'send-error')?_c('NcNoteCard',{attrs:{\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Couldn\\'t send reset email. Please contact your administrator.'))+\"\\n\\t\")]):(_vm.message === 'reset-error')?_c('NcNoteCard',{attrs:{\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('core', 'Password cannot be changed. Please contact your administrator.'))+\"\\n\\t\")]):_vm._e()],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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=style&index=0&id=759a0fdd&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=style&index=0&id=759a0fdd&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ResetPassword.vue?vue&type=template&id=759a0fdd&scoped=true\"\nimport script from \"./ResetPassword.vue?vue&type=script&lang=ts\"\nexport * from \"./ResetPassword.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ResetPassword.vue?vue&type=style&index=0&id=759a0fdd&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 \"759a0fdd\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.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!./UpdatePassword.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.vue?vue&type=style&index=0&id=2c0ecaf9&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpdatePassword.vue?vue&type=style&index=0&id=2c0ecaf9&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UpdatePassword.vue?vue&type=template&id=2c0ecaf9&scoped=true\"\nimport script from \"./UpdatePassword.vue?vue&type=script&lang=js\"\nexport * from \"./UpdatePassword.vue?vue&type=script&lang=js\"\nimport style0 from \"./UpdatePassword.vue?vue&type=style&index=0&id=2c0ecaf9&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c0ecaf9\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_c('fieldset',[_c('p',[_c('label',{staticClass:\"infield\",attrs:{\"for\":\"password\"}},[_vm._v(_vm._s(_vm.t('core', 'New password')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.password),expression:\"password\"}],attrs:{\"id\":\"password\",\"type\":\"password\",\"name\":\"password\",\"autocomplete\":\"new-password\",\"autocapitalize\":\"none\",\"spellcheck\":\"false\",\"required\":\"\",\"placeholder\":_vm.t('core', 'New password')},domProps:{\"value\":(_vm.password)},on:{\"input\":function($event){if($event.target.composing)return;_vm.password=$event.target.value}}})]),_vm._v(\" \"),(_vm.encrypted)?_c('div',{staticClass:\"update\"},[_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.proceed),expression:\"proceed\"}],staticClass:\"checkbox\",attrs:{\"id\":\"encrypted-continue\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.proceed)?_vm._i(_vm.proceed,null)>-1:(_vm.proceed)},on:{\"change\":function($event){var $$a=_vm.proceed,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.proceed=$$a.concat([$$v]))}else{$$i>-1&&(_vm.proceed=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.proceed=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"encrypted-continue\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'I know what I\\'m doing'))+\"\\n\\t\\t\\t\")])]):_vm._e(),_vm._v(\" \"),_c('LoginButton',{attrs:{\"loading\":_vm.loading,\"value\":_vm.t('core', 'Reset password'),\"value-loading\":_vm.t('core', 'Resetting password')}}),_vm._v(\" \"),(_vm.error && _vm.message)?_c('p',{class:{ warning: _vm.error }},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.message)+\"\\n\\t\\t\")]):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { generateUrl, getRootUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\n/**\n *\n * @param {string} url the URL to check\n * @return {boolean}\n */\nfunction isRelativeUrl(url) {\n\treturn !url.startsWith('https://') && !url.startsWith('http://')\n}\n\n/**\n * @param {string} url The URL to check\n * @return {boolean} true if the URL points to this nextcloud instance\n */\nfunction isNextcloudUrl(url) {\n\tconst nextcloudBaseUrl = window.location.protocol + '//' + window.location.host + getRootUrl()\n\t// if the URL is absolute and starts with the baseUrl+rootUrl\n\t// OR if the URL is relative and starts with rootUrl\n\treturn url.startsWith(nextcloudBaseUrl)\n\t\t|| (isRelativeUrl(url) && url.startsWith(getRootUrl()))\n}\n\n/**\n * Check if a user was logged in but is now logged-out.\n * If this is the case then the user will be forwarded to the login page.\n *\n * @return {Promise}\n */\nasync function checkLoginStatus() {\n\t// skip if no logged in user\n\tif (getCurrentUser() === null) {\n\t\treturn\n\t}\n\n\t// skip if already running\n\tif (checkLoginStatus.running === true) {\n\t\treturn\n\t}\n\n\t// only run one request in parallel\n\tcheckLoginStatus.running = true\n\n\ttry {\n\t\t// We need to check this as a 401 in the first place could also come from other reasons\n\t\tconst { status } = await window.fetch(generateUrl('/apps/files'))\n\t\tif (status === 401) {\n\t\t\tlogger.warn('User session was terminated, forwarding to login page.')\n\t\t\tawait wipeBrowserStorages()\n\t\t\twindow.location = generateUrl('/login?redirect_url={url}', {\n\t\t\t\turl: window.location.pathname + window.location.search + window.location.hash,\n\t\t\t})\n\t\t}\n\t} catch (error) {\n\t\tlogger.warn('Could not check login-state', { error })\n\t} finally {\n\t\tdelete checkLoginStatus.running\n\t}\n}\n\n/**\n * Clear all Browser storages connected to current origin.\n *\n * @return {Promise}\n */\nexport async function wipeBrowserStorages() {\n\ttry {\n\t\twindow.localStorage.clear()\n\t\twindow.sessionStorage.clear()\n\t\tconst indexedDBList = await window.indexedDB.databases()\n\t\tfor (const indexedDB of indexedDBList) {\n\t\t\tawait window.indexedDB.deleteDatabase(indexedDB.name)\n\t\t}\n\t\tlogger.debug('Browser storages cleared')\n\t} catch (error) {\n\t\tlogger.error('Could not clear browser storages', { error })\n\t}\n}\n\n/**\n * Intercept XMLHttpRequest and fetch API calls to add X-Requested-With header\n *\n * This is also done in @nextcloud/axios but not all requests pass through that\n */\nexport function interceptRequests() {\n\tXMLHttpRequest.prototype.open = (function(open) {\n\t\treturn function(method, url) {\n\t\t\topen.apply(this, arguments)\n\t\t\tif (isNextcloudUrl(url)) {\n\t\t\t\tif (!this.getResponseHeader('X-Requested-With')) {\n\t\t\t\t\tthis.setRequestHeader('X-Requested-With', 'XMLHttpRequest')\n\t\t\t\t}\n\t\t\t\tthis.addEventListener('loadend', function() {\n\t\t\t\t\tif (this.status === 401) {\n\t\t\t\t\t\tcheckLoginStatus()\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t})(XMLHttpRequest.prototype.open)\n\n\twindow.fetch = (function(fetch) {\n\t\treturn async (resource, options) => {\n\t\t\t// fetch allows the `input` to be either a Request object or any stringifyable value\n\t\t\tif (!isNextcloudUrl(resource.url ?? resource.toString())) {\n\t\t\t\treturn await fetch(resource, options)\n\t\t\t}\n\t\t\tif (!options) {\n\t\t\t\toptions = {}\n\t\t\t}\n\t\t\tif (!options.headers) {\n\t\t\t\toptions.headers = new Headers()\n\t\t\t}\n\n\t\t\tif (options.headers instanceof Headers && !options.headers.has('X-Requested-With')) {\n\t\t\t\toptions.headers.append('X-Requested-With', 'XMLHttpRequest')\n\t\t\t} else if (options.headers instanceof Object && !options.headers['X-Requested-With']) {\n\t\t\t\toptions.headers['X-Requested-With'] = 'XMLHttpRequest'\n\t\t\t}\n\n\t\t\tconst response = await fetch(resource, options)\n\t\t\tif (response.status === 401) {\n\t\t\t\tcheckLoginStatus()\n\t\t\t}\n\t\t\treturn response\n\t\t}\n\t})(window.fetch)\n}\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.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!./Login.vue?vue&type=script&lang=js\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&id=518c0816&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&id=518c0816&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=518c0816&scoped=true\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\nimport style0 from \"./Login.vue?vue&type=style&index=0&id=518c0816&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 \"518c0816\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"guest-box login-box\"},[(!_vm.hideLoginForm || _vm.directLogin)?[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(!_vm.passwordlessLogin && !_vm.resetPassword && _vm.resetPasswordTarget === '')?_c('div',{staticClass:\"login-box__wrapper\"},[_c('LoginForm',{attrs:{\"username\":_vm.user,\"redirect-url\":_vm.redirectUrl,\"direct-login\":_vm.directLogin,\"messages\":_vm.messages,\"errors\":_vm.errors,\"throttle-delay\":_vm.throttleDelay,\"auto-complete-allowed\":_vm.autoCompleteAllowed,\"rememberme-allowed\":_vm.remembermeAllowed,\"email-states\":_vm.emailStates},on:{\"update:username\":function($event){_vm.user=$event},\"submit\":function($event){_vm.loading = true}}}),_vm._v(\" \"),(_vm.hasPasswordless)?_c('NcButton',{attrs:{\"variant\":\"tertiary\",\"wide\":\"\"},on:{\"click\":function($event){$event.preventDefault();_vm.passwordlessLogin = true}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Log in with a device'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.canResetPassword && _vm.resetPasswordLink !== '')?_c('NcButton',{attrs:{\"id\":\"lost-password\",\"href\":_vm.resetPasswordLink,\"variant\":\"tertiary-no-background\",\"wide\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Forgot password?'))+\"\\n\\t\\t\\t\\t\")]):(_vm.canResetPassword && !_vm.resetPassword)?_c('NcButton',{attrs:{\"id\":\"lost-password\",\"variant\":\"tertiary\",\"wide\":\"\"},on:{\"click\":function($event){$event.preventDefault();_vm.resetPassword = true}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Forgot password?'))+\"\\n\\t\\t\\t\\t\")]):_vm._e()],1):(!_vm.loading && _vm.passwordlessLogin)?_c('div',{key:\"reset-pw-less\",staticClass:\"login-additional login-box__wrapper\"},[_c('PasswordLessLoginForm',{attrs:{\"username\":_vm.user,\"redirect-url\":_vm.redirectUrl,\"auto-complete-allowed\":_vm.autoCompleteAllowed,\"is-https\":_vm.isHttps,\"is-localhost\":_vm.isLocalhost},on:{\"update:username\":function($event){_vm.user=$event},\"submit\":function($event){_vm.loading = true}}}),_vm._v(\" \"),_c('NcButton',{attrs:{\"variant\":\"tertiary\",\"aria-label\":_vm.t('core', 'Back to login form'),\"wide\":true},on:{\"click\":function($event){_vm.passwordlessLogin = false}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Back'))+\"\\n\\t\\t\\t\\t\")])],1):(!_vm.loading && _vm.canResetPassword)?_c('div',{key:\"reset-can-reset\",staticClass:\"login-additional\"},[_c('div',{staticClass:\"lost-password-container\"},[(_vm.resetPassword)?_c('ResetPassword',{attrs:{\"username\":_vm.user,\"reset-password-link\":_vm.resetPasswordLink},on:{\"update:username\":function($event){_vm.user=$event},\"abort\":function($event){_vm.resetPassword = false}}}):_vm._e()],1)]):(_vm.resetPasswordTarget !== '')?_c('div',[_c('UpdatePassword',{attrs:{\"username\":_vm.user,\"reset-password-target\":_vm.resetPasswordTarget},on:{\"update:username\":function($event){_vm.user=$event},\"done\":_vm.passwordResetFinished}})],1):_vm._e()])]:[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('NcNoteCard',{attrs:{\"type\":\"info\",\"title\":_vm.t('core', 'Login form is disabled.')}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'The Nextcloud login form is disabled. Use another login option if available or contact your administration.'))+\"\\n\\t\\t\\t\")])],1)],_vm._v(\" \"),_c('div',{staticClass:\"login-box__alternative-logins\",attrs:{\"id\":\"alternative-logins\"}},_vm._l((_vm.alternativeLogins),function(alternativeLogin,index){return _c('NcButton',{key:index,class:[alternativeLogin.class],attrs:{\"variant\":\"secondary\",\"wide\":true,\"role\":\"link\",\"href\":alternativeLogin.href}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(alternativeLogin.name)+\"\\n\\t\\t\")])}),1)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst isAdmin = !!window._oc_isadmin\n\n/**\n * Returns whether the current user is an administrator\n *\n * @return {boolean} true if the user is an admin, false otherwise\n * @since 9.0.0\n */\nexport const isUserAdmin = () => isAdmin\n","/*!\n * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2014 ownCloud, Inc.\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * @deprecated 16.0.0 Use OCP.AppConfig instead\n */\nexport const appConfig = window.oc_appconfig || {}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst appswebroots = (window._oc_appswebroots !== undefined) ? window._oc_appswebroots : false\n\nexport default appswebroots\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst config = window._oc_config || {}\n\nexport default config\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst rawUid = document\n\t.getElementsByTagName('head')[0]\n\t.getAttribute('data-user')\nconst displayName = document\n\t.getElementsByTagName('head')[0]\n\t.getAttribute('data-user-displayname')\n\nexport const currentUser = rawUid !== undefined ? rawUid : false\n\n/**\n *\n */\nexport function getCurrentUser() {\n\treturn {\n\t\tuid: currentUser,\n\t\tdisplayName,\n\t}\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nconst base = window._oc_debug\n\nexport const debug = base\n","/**\n * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2015 ownCloud, Inc.\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport IconMove from '@mdi/svg/svg/folder-move.svg?raw'\nimport IconCopy from '@mdi/svg/svg/folder-multiple-outline.svg?raw'\nimport { DialogBuilder, FilePickerType, getFilePickerBuilder } from '@nextcloud/dialogs'\nimport { t } from '@nextcloud/l10n'\nimport { spawnDialog } from '@nextcloud/vue/functions/dialog'\nimport { basename } from 'path'\nimport { defineAsyncComponent } from 'vue'\nimport logger from '../logger.js'\n\n/**\n * this class to ease the usage of dialogs\n */\nconst Dialogs = {\n\t// dialog button types\n\t/** @deprecated use `@nextcloud/dialogs` */\n\tYES_NO_BUTTONS: 70,\n\t/** @deprecated use `@nextcloud/dialogs` */\n\tOK_BUTTONS: 71,\n\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_CHOOSE: 1,\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_MOVE: 2,\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_COPY: 3,\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_COPY_MOVE: 4,\n\t/** @deprecated use FilePickerType from `@nextcloud/dialogs` */\n\tFILEPICKER_TYPE_CUSTOM: 5,\n\n\t/**\n\t * displays alert dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK\n\t * @param {boolean} [modal] make the dialog modal\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\talert: function(text, title, callback, modal) {\n\t\tthis.message(\n\t\t\ttext,\n\t\t\ttitle,\n\t\t\t'alert',\n\t\t\tDialogs.OK_BUTTON,\n\t\t\tcallback,\n\t\t\tmodal,\n\t\t)\n\t},\n\n\t/**\n\t * displays info dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK\n\t * @param {boolean} [modal] make the dialog modal\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tinfo: function(text, title, callback, modal) {\n\t\tthis.message(text, title, 'info', Dialogs.OK_BUTTON, callback, modal)\n\t},\n\n\t/**\n\t * displays confirmation dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)\n\t * @param {boolean} [modal] make the dialog modal\n\t * @return {Promise}\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tconfirm: function(text, title, callback, modal) {\n\t\treturn this.message(\n\t\t\ttext,\n\t\t\ttitle,\n\t\t\t'notice',\n\t\t\tDialogs.YES_NO_BUTTONS,\n\t\t\tcallback,\n\t\t\tmodal,\n\t\t)\n\t},\n\t/**\n\t * displays confirmation dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {(number|{type: number, confirm: string, cancel: string, confirmClasses: string})} buttons text content of buttons\n\t * @param {Function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)\n\t * @return {Promise}\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tconfirmDestructive: function(text, title, buttons = Dialogs.OK_BUTTONS, callback = () => {}) {\n\t\treturn (new DialogBuilder())\n\t\t\t.setName(title)\n\t\t\t.setText(text)\n\t\t\t.setButtons(buttons === Dialogs.OK_BUTTONS\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: t('core', 'Yes'),\n\t\t\t\t\t\t\tvariant: 'error',\n\t\t\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\t\t\tcallback.clicked = true\n\t\t\t\t\t\t\t\tcallback(true)\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: Dialogs._getLegacyButtons(buttons, callback))\n\t\t\t.build()\n\t\t\t.show()\n\t\t\t.then(() => {\n\t\t\t\tif (!callback.clicked) {\n\t\t\t\t\tcallback(false)\n\t\t\t\t}\n\t\t\t})\n\t},\n\t/**\n\t * displays confirmation dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)\n\t * @return {Promise}\n\t *\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tconfirmHtml: function(text, title, callback) {\n\t\treturn (new DialogBuilder())\n\t\t\t.setName(title)\n\t\t\t.setText('')\n\t\t\t.setButtons([\n\t\t\t\t{\n\t\t\t\t\tlabel: t('core', 'No'),\n\t\t\t\t\tcallback: () => {},\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: t('core', 'Yes'),\n\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tcallback.clicked = true\n\t\t\t\t\t\tcallback(true)\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t])\n\t\t\t.build()\n\t\t\t.setHTML(text)\n\t\t\t.show()\n\t\t\t.then(() => {\n\t\t\t\tif (!callback.clicked) {\n\t\t\t\t\tcallback(false)\n\t\t\t\t}\n\t\t\t})\n\t},\n\t/**\n\t * displays prompt dialog\n\t *\n\t * @param {string} text content of dialog\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses OK (true or false would be passed to callback respectively)\n\t * @param {boolean} [modal] make the dialog modal\n\t * @param {string} name name of the input field\n\t * @param {boolean} password whether the input should be a password input\n\t * @return {Promise}\n\t *\n\t * @deprecated Use NcDialog from `@nextcloud/vue` instead\n\t */\n\tprompt: function(text, title, callback, modal, name, password) {\n\t\treturn new Promise((resolve) => {\n\t\t\tspawnDialog(\n\t\t\t\tdefineAsyncComponent(() => import('../components/LegacyDialogPrompt.vue')),\n\t\t\t\t{\n\t\t\t\t\ttext,\n\t\t\t\t\tname: title,\n\t\t\t\t\tcallback,\n\t\t\t\t\tinputName: name,\n\t\t\t\t\tisPassword: !!password,\n\t\t\t\t},\n\t\t\t\t(...args) => {\n\t\t\t\t\tcallback(...args)\n\t\t\t\t\tresolve()\n\t\t\t\t},\n\t\t\t)\n\t\t})\n\t},\n\n\t/**\n\t * Legacy wrapper to the new Vue based filepicker from `@nextcloud/dialogs`\n\t *\n\t * Prefer to use the Vue filepicker directly instead.\n\t *\n\t * In order to pick several types of mime types they need to be passed as an\n\t * array of strings.\n\t *\n\t * When no mime type filter is given only files can be selected. In order to\n\t * be able to select both files and folders \"['*', 'httpd/unix-directory']\"\n\t * should be used instead.\n\t *\n\t * @param {string} title dialog title\n\t * @param {Function} callback which will be triggered when user presses Choose\n\t * @param {boolean} [multiselect] whether it should be possible to select multiple files\n\t * @param {string[]} [mimetype] mimetype to filter by - directories will always be included\n\t * @param {boolean} [_modal] do not use\n\t * @param {string} [type] Type of file picker : Choose, copy, move, copy and move\n\t * @param {string} [path] path to the folder that the the file can be picket from\n\t * @param {object} [options] additonal options that need to be set\n\t * @param {Function} [options.filter] filter function for advanced filtering\n\t * @param {boolean} [options.allowDirectoryChooser] Allow to select directories\n\t * @deprecated since 27.1.0 use the filepicker from `@nextcloud/dialogs` instead\n\t */\n\t// eslint-disable-next-line no-unused-vars\n\tfilepicker(title, callback, multiselect = false, mimetype = undefined, _modal = undefined, type = FilePickerType.Choose, path = undefined, options = undefined) {\n\t\t/**\n\t\t * Create legacy callback wrapper to support old filepicker syntax\n\t\t *\n\t\t * @param fn The original callback\n\t\t * @param type The file picker type which was used to pick the file(s)\n\t\t */\n\t\tconst legacyCallback = (fn, type) => {\n\t\t\tconst getPath = (node) => {\n\t\t\t\tconst root = node?.root || ''\n\t\t\t\tlet path = node?.path || ''\n\t\t\t\t// TODO: Fix this in @nextcloud/files\n\t\t\t\tif (path.startsWith(root)) {\n\t\t\t\t\tpath = path.slice(root.length) || '/'\n\t\t\t\t}\n\t\t\t\treturn path\n\t\t\t}\n\n\t\t\tif (multiselect) {\n\t\t\t\treturn (nodes) => fn(nodes.map(getPath), type)\n\t\t\t} else {\n\t\t\t\treturn (nodes) => fn(getPath(nodes[0]), type)\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Coverting a Node into a legacy file info to support the OC.dialogs.filepicker filter function\n\t\t *\n\t\t * @param node The node to convert\n\t\t */\n\t\tconst nodeToLegacyFile = (node) => ({\n\t\t\tid: node.fileid || null,\n\t\t\tpath: node.path,\n\t\t\tmimetype: node.mime || null,\n\t\t\tmtime: node.mtime?.getTime() || null,\n\t\t\tpermissions: node.permissions,\n\t\t\tname: node.attributes?.displayName || node.basename,\n\t\t\tetag: node.attributes?.etag || null,\n\t\t\thasPreview: node.attributes?.hasPreview || null,\n\t\t\tmountType: node.attributes?.mountType || null,\n\t\t\tquotaAvailableBytes: node.attributes?.quotaAvailableBytes || null,\n\t\t\ticon: null,\n\t\t\tsharePermissions: null,\n\t\t})\n\n\t\tconst builder = getFilePickerBuilder(title)\n\n\t\t// Setup buttons\n\t\tif (type === this.FILEPICKER_TYPE_CUSTOM) {\n\t\t\t(options.buttons || []).forEach((button) => {\n\t\t\t\tbuilder.addButton({\n\t\t\t\t\tcallback: legacyCallback(callback, button.type),\n\t\t\t\t\tlabel: button.text,\n\t\t\t\t\tvariant: button.defaultButton ? 'primary' : 'secondary',\n\t\t\t\t})\n\t\t\t})\n\t\t} else {\n\t\t\tbuilder.setButtonFactory((nodes, path) => {\n\t\t\t\tconst buttons = []\n\t\t\t\tconst [node] = nodes\n\t\t\t\tconst target = node?.displayname || node?.basename || basename(path)\n\n\t\t\t\tif (type === FilePickerType.Choose) {\n\t\t\t\t\tbuttons.push({\n\t\t\t\t\t\tcallback: legacyCallback(callback, FilePickerType.Choose),\n\t\t\t\t\t\tlabel: node && !this.multiSelect ? t('core', 'Choose {file}', { file: target }) : t('core', 'Choose'),\n\t\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (type === FilePickerType.CopyMove || type === FilePickerType.Copy) {\n\t\t\t\t\tbuttons.push({\n\t\t\t\t\t\tcallback: legacyCallback(callback, FilePickerType.Copy),\n\t\t\t\t\t\tlabel: target ? t('core', 'Copy to {target}', { target }) : t('core', 'Copy'),\n\t\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\t\ticon: IconCopy,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (type === FilePickerType.Move || type === FilePickerType.CopyMove) {\n\t\t\t\t\tbuttons.push({\n\t\t\t\t\t\tcallback: legacyCallback(callback, FilePickerType.Move),\n\t\t\t\t\t\tlabel: target ? t('core', 'Move to {target}', { target }) : t('core', 'Move'),\n\t\t\t\t\t\tvariant: type === FilePickerType.Move ? 'primary' : 'secondary',\n\t\t\t\t\t\ticon: IconMove,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\treturn buttons\n\t\t\t})\n\t\t}\n\n\t\tif (mimetype) {\n\t\t\tbuilder.setMimeTypeFilter(typeof mimetype === 'string' ? [mimetype] : (mimetype || []))\n\t\t}\n\t\tif (typeof options?.filter === 'function') {\n\t\t\tbuilder.setFilter((node) => options.filter(nodeToLegacyFile(node)))\n\t\t}\n\t\tbuilder.allowDirectories(options?.allowDirectoryChooser === true || mimetype?.includes('httpd/unix-directory') || false)\n\t\t\t.setMultiSelect(multiselect)\n\t\t\t.startAt(path)\n\t\t\t.build()\n\t\t\t.pick()\n\t},\n\n\t/**\n\t * Displays raw dialog\n\t * You better use a wrapper instead ...\n\t *\n\t * @param content\n\t * @param title\n\t * @param dialogType\n\t * @param buttons\n\t * @param callback\n\t * @param modal\n\t * @param allowHtml\n\t * @deprecated 30.0.0 Use `@nextcloud/dialogs` instead or build your own with `@nextcloud/vue` NcDialog\n\t */\n\tmessage: function(content, title, dialogType, buttons, callback = () => {}, modal, allowHtml) {\n\t\tconst builder = (new DialogBuilder())\n\t\t\t.setName(title)\n\t\t\t.setText(allowHtml ? '' : content)\n\t\t\t.setButtons(Dialogs._getLegacyButtons(buttons, callback))\n\n\t\tswitch (dialogType) {\n\t\t\tcase 'alert':\n\t\t\t\tbuilder.setSeverity('warning')\n\t\t\t\tbreak\n\t\t\tcase 'notice':\n\t\t\t\tbuilder.setSeverity('info')\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tbreak\n\t\t}\n\n\t\tconst dialog = builder.build()\n\n\t\tif (allowHtml) {\n\t\t\tdialog.setHTML(content)\n\t\t}\n\n\t\treturn dialog.show().then(() => {\n\t\t\tif (!callback._clicked) {\n\t\t\t\tcallback(false)\n\t\t\t}\n\t\t})\n\t},\n\n\t/**\n\t * Helper for legacy API\n\t *\n\t * @param buttons\n\t * @param callback\n\t * @deprecated\n\t */\n\t_getLegacyButtons(buttons, callback) {\n\t\tconst buttonList = []\n\n\t\tswitch (typeof buttons === 'object' ? buttons.type : buttons) {\n\t\t\tcase Dialogs.YES_NO_BUTTONS:\n\t\t\t\tbuttonList.push({\n\t\t\t\t\tlabel: buttons?.cancel ?? t('core', 'No'),\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tcallback._clicked = true\n\t\t\t\t\t\tcallback(false)\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tbuttonList.push({\n\t\t\t\t\tlabel: buttons?.confirm ?? t('core', 'Yes'),\n\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tcallback._clicked = true\n\t\t\t\t\t\tcallback(true)\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tbreak\n\t\t\tcase Dialogs.OK_BUTTONS:\n\t\t\t\tbuttonList.push({\n\t\t\t\t\tlabel: buttons?.confirm ?? t('core', 'OK'),\n\t\t\t\t\tvariant: 'primary',\n\t\t\t\t\tcallback: () => {\n\t\t\t\t\t\tcallback._clicked = true\n\t\t\t\t\t\tcallback(true)\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tlogger.error('Invalid call to OC.dialogs')\n\t\t\t\tbreak\n\t\t}\n\t\treturn buttonList\n\t},\n}\n\nexport default Dialogs\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\n/**\n * Get the current CSRF token.\n */\nexport function getRequestToken() {\n return document.head.dataset.requesttoken;\n}\n/**\n * Set a new CSRF token (e.g. because of session refresh).\n * This also emits an event bus event for the updated token.\n *\n * @param token - The new token\n * @fires Error - If the passed token is not a potential valid token\n */\nexport function setRequestToken(token) {\n if (!token || typeof token !== 'string') {\n throw new Error('Invalid CSRF token given', { cause: { token } });\n }\n document.head.dataset.requesttoken = token;\n emit('csrf-token-update', { token });\n}\n/**\n * Fetch the request token from the API.\n * This does also set it on the current context, see `setRequestToken`.\n *\n * @fires Error - If the request failed\n */\nexport async function fetchRequestToken() {\n const url = generateUrl('/csrftoken');\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error('Could not fetch CSRF token from API', { cause: response });\n }\n const { token } = await response.json();\n setRequestToken(token);\n return token;\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2015 ownCloud, Inc.\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getRequestToken } from './requesttoken.ts'\n\n/**\n * Create a new event source\n *\n * @param {string} src\n * @param {object} [data] to be send as GET\n *\n * @constructs OCEventSource\n */\nfunction OCEventSource(src, data) {\n\tlet dataStr = ''\n\tlet name\n\tlet joinChar\n\tthis.typelessListeners = []\n\tthis.closed = false\n\tif (data) {\n\t\tfor (name in data) {\n\t\t\tdataStr += name + '=' + encodeURIComponent(data[name]) + '&'\n\t\t}\n\t}\n\tdataStr += 'requesttoken=' + encodeURIComponent(getRequestToken())\n\tjoinChar = '&'\n\tif (src.indexOf('?') === -1) {\n\t\tjoinChar = '?'\n\t}\n\tthis.source = new EventSource(src + joinChar + dataStr)\n\tthis.source.onmessage = function(e) {\n\t\tfor (let i = 0; i < this.typelessListeners.length; i++) {\n\t\t\tthis.typelessListeners[i](JSON.parse(e.data))\n\t\t}\n\t}.bind(this)\n\t// add close listener\n\tthis.listen('__internal__', function(data) {\n\t\tif (data === 'close') {\n\t\t\tthis.close()\n\t\t}\n\t}.bind(this))\n}\nOCEventSource.prototype = {\n\ttypelessListeners: [],\n\t/**\n\t * Listen to a given type of events.\n\t *\n\t * @param {string} type event type\n\t * @param {Function} callback event callback\n\t */\n\tlisten: function(type, callback) {\n\t\tif (callback && callback.call) {\n\t\t\tif (type) {\n\t\t\t\tthis.source.addEventListener(type, function(e) {\n\t\t\t\t\tif (typeof e.data !== 'undefined') {\n\t\t\t\t\t\tcallback(JSON.parse(e.data))\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcallback('')\n\t\t\t\t\t}\n\t\t\t\t}, false)\n\t\t\t} else {\n\t\t\t\tthis.typelessListeners.push(callback)\n\t\t\t}\n\t\t}\n\t},\n\t/**\n\t * Closes this event source.\n\t */\n\tclose: function() {\n\t\tthis.closed = true\n\t\tthis.source.close()\n\t},\n}\n\nexport default OCEventSource\n","/**\n * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors\n * SPDX-FileCopyrightText: 2014 ownCloud, Inc.\n * SPDX-FileCopyrightText: 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport {\n\tloadTranslations,\n\tregister,\n\ttranslate,\n\ttranslatePlural,\n\tunregister,\n} from '@nextcloud/l10n'\n\n/**\n * L10N namespace with localization functions.\n *\n * @namespace OC.L10n\n * @deprecated 26.0.0 use https://www.npmjs.com/package/@nextcloud/l10n\n */\nconst L10n = {\n\n\t/**\n\t * Load an app's translation bundle if not loaded already.\n\t *\n\t * @deprecated 26.0.0 use `loadTranslations` from https://www.npmjs.com/package/@nextcloud/l10n\n\t *\n\t * @param {string} appName name of the app\n\t * @param {Function} callback callback to be called when\n\t * the translations are loaded\n\t * @return {Promise} promise\n\t */\n\tload: loadTranslations,\n\n\t/**\n\t * Register an app's translation bundle.\n\t *\n\t * @deprecated 26.0.0 use `register` from https://www.npmjs.com/package/@nextcloud/l10\n\t *\n\t * @param {string} appName name of the app\n\t * @param {Record} bundle bundle\n\t */\n\tregister,\n\n\t/**\n\t * @private\n\t * @deprecated 26.0.0 use `unregister` from https://www.npmjs.com/package/@nextcloud/l10n\n\t */\n\t_unregister: unregister,\n\n\t/**\n\t * Translate a string\n\t *\n\t * @deprecated 26.0.0 use `translate` from https://www.npmjs.com/package/@nextcloud/l10n\n\t *\n\t * @param {string} app the id of the app for which to translate the string\n\t * @param {string} text the string to translate\n\t * @param {object} [vars] map of placeholder key to value\n\t * @param {number} [count] number to replace %n with\n\t * @param {Array} [options] options array\n\t * @param {boolean} [options.escape=true] enable/disable auto escape of placeholders (by default enabled)\n\t * @param {boolean} [options.sanitize=true] enable/disable sanitization (by default enabled)\n\t * @return {string}\n\t */\n\ttranslate,\n\n\t/**\n\t * Translate a plural string\n\t *\n\t * @deprecated 26.0.0 use `translatePlural` from https://www.npmjs.com/package/@nextcloud/l10n\n\t *\n\t * @param {string} app the id of the app for which to translate the string\n\t * @param {string} textSingular the string to translate for exactly one object\n\t * @param {string} textPlural the string to translate for n objects\n\t * @param {number} count number to determine whether to use singular or plural\n\t * @param {object} [vars] map of placeholder key to value\n\t * @param {Array} [options] options array\n\t * @param {boolean} [options.escape=true] enable/disable auto escape of placeholders (by default enabled)\n\t * @return {string} Translated string\n\t */\n\ttranslatePlural,\n}\n\nexport default L10n\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { generateUrl, getRootUrl } from '@nextcloud/router'\n\nconst iconCache = new Map()\n\n/**\n * Return the url to icon of the given mimeType\n *\n * @param {string} mimeType The mimeType to get the icon for\n * @return {string} Url to the icon for mimeType\n */\nexport function getIconUrl(mimeType) {\n\tif (typeof mimeType === 'undefined') {\n\t\treturn undefined\n\t}\n\n\twhile (mimeType in window.OC.MimeTypeList.aliases) {\n\t\tmimeType = window.OC.MimeTypeList.aliases[mimeType]\n\t}\n\n\tif (!iconCache.has(mimeType)) {\n\t\tlet gotIcon = false\n\t\tlet path = ''\n\t\t// First try to get the correct icon from the current legacy-theme\n\t\tif (OC.theme.folder !== '' && Array.isArray(OC.MimeTypeList.themes[OC.theme.folder])) {\n\t\t\tpath = getRootUrl() + '/themes/' + window.OC.theme.folder + '/core/img/filetypes/'\n\t\t\tconst icon = getMimeTypeIcon(mimeType, window.OC.MimeTypeList.themes[OC.theme.folder])\n\t\t\tif (icon) {\n\t\t\t\tgotIcon = true\n\t\t\t\tpath += icon + '.svg'\n\t\t\t}\n\t\t}\n\n\t\t// theming is always enabled since Nextcloud 20 so we get it from that\n\t\tif (!gotIcon) {\n\t\t\tpath = generateUrl('/apps/theming/img/core/filetypes/' + getMimeTypeIcon(mimeType, window.OC.MimeTypeList.files) + '.svg')\n\t\t}\n\n\t\tpath += '?v=' + window.OCA.Theming.cacheBuster\n\t\t// Cache the result\n\t\ticonCache.set(mimeType, path)\n\t}\n\n\treturn iconCache.get(mimeType)\n}\n\n/**\n * Return the file icon we want to use for the given mimeType.\n * The file needs to be present in the supplied file list\n *\n * @param {string} mimeType The mimeType we want an icon for\n * @param {string[]} files The available icons in this theme\n * @return {string | null} The icon to use or null if there is no match\n */\nfunction getMimeTypeIcon(mimeType, files) {\n\tconst icon = mimeType.replace(new RegExp('/', 'g'), '-')\n\n\t// Generate path\n\tif (mimeType === 'dir' && files.includes('folder')) {\n\t\treturn 'folder'\n\t} else if (mimeType === 'dir-encrypted' && files.includes('folder-encrypted')) {\n\t\treturn 'folder-encrypted'\n\t} else if (mimeType === 'dir-shared' && files.includes('folder-shared')) {\n\t\treturn 'folder-shared'\n\t} else if (mimeType === 'dir-public' && files.includes('folder-public')) {\n\t\treturn 'folder-public'\n\t} else if ((mimeType === 'dir-external' || mimeType === 'dir-external-root') && files.includes('folder-external')) {\n\t\treturn 'folder-external'\n\t} else if (files.includes(icon)) {\n\t\treturn icon\n\t} else if (files.includes(icon.split('-')[0])) {\n\t\treturn icon.split('-')[0]\n\t} else if (files.includes('file')) {\n\t\treturn 'file'\n\t}\n\n\treturn null\n}\n\n/**\n * Clear the icon cache\n */\nexport function clearIconCache() {\n\ticonCache.clear()\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { t } from '@nextcloud/l10n';\n/**\n * A little class to manage a status field for a \"saving\" process.\n * It can be used to display a starting message (e.g. \"Saving...\") and then\n * replace it with a green success message or a red error message.\n */\nexport default {\n /**\n * Displayes a \"Saving...\" message in the given message placeholder\n *\n * @param selector - Query selectior for the element to display the message in\n */\n startSaving(selector) {\n this.startAction(selector, t('core', 'Saving …'));\n },\n /**\n * Displayes a custom message in the given message placeholder\n *\n * @param selector - Query selectior for the element to display the message in\n * @param message - Plain text message to display (no HTML allowed)\n */\n startAction(selector, message) {\n const el = document.querySelector(selector);\n if (!el || !(el instanceof HTMLElement)) {\n return;\n }\n el.textContent = message;\n el.classList.remove('success');\n el.classList.remove('error');\n el.getAnimations?.().forEach((animation) => animation.cancel());\n el.style.display = 'block';\n },\n /**\n * Displayes an success/error message in the given selector\n *\n * @param selector - Query selectior for the element to display the message in\n * @param response - Response of the server\n * @param response.data - Data of the servers response\n * @param response.data.message - Plain text message to display (no HTML allowed)\n * @param response.status - is being used to decide whether the message is displayed as an error/success\n */\n finishedSaving(selector, response) {\n this.finishedAction(selector, response);\n },\n /**\n * Displayes an success/error message in the given selector\n *\n * @param selector - Query selector for the element to display the message in\n * @param response - Response of the server\n * @param response.data - Data of the servers response\n * @param response.data.message - Plain text message to display (no HTML allowed)\n * @param response.status . Is being used to decide whether the message is displayed as an error/success\n */\n finishedAction(selector, response) {\n if (response.status === 'success') {\n this.finishedSuccess(selector, response.data.message);\n }\n else {\n this.finishedError(selector, response.data.message);\n }\n },\n /**\n * Displayes an success message in the given selector\n *\n * @param selector - Query selector for the element to display the message in\n * @param message - Plain text success message to display (no HTML allowed)\n */\n finishedSuccess(selector, message) {\n const el = document.querySelector(selector);\n if (!el || !(el instanceof HTMLElement)) {\n return;\n }\n el.textContent = message;\n el.classList.remove('error');\n el.classList.add('success');\n el.getAnimations?.().forEach((animation) => animation.cancel());\n window.setTimeout(fadeOut, 3000);\n el.style.display = 'block';\n /**\n * Fades out the message element\n */\n function fadeOut() {\n if (!el || !(el instanceof HTMLElement)) {\n return;\n }\n // eslint-disable-next-line @stylistic/exp-list-style\n const animation = el.animate?.([\n { opacity: 1 },\n { opacity: 0 },\n ], {\n duration: 900,\n fill: 'forwards',\n });\n if (animation) {\n animation.addEventListener('finish', () => {\n el.style.display = 'none';\n });\n }\n else {\n window.setTimeout(() => {\n el.style.display = 'none';\n }, 900);\n }\n }\n },\n /**\n * Displayes an error message in the given selector\n *\n * @param selector - Query selector for the element to display the message in\n * @param message - Plain text error message to display (no HTML allowed)\n */\n finishedError(selector, message) {\n const el = document.querySelector(selector);\n if (!el || !(el instanceof HTMLElement)) {\n return;\n }\n el.textContent = message;\n el.classList.remove('success');\n el.classList.add('error');\n el.style.display = 'block';\n },\n};\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { confirmPassword, isPasswordConfirmationRequired } from '@nextcloud/password-confirmation'\n\n/**\n * @namespace OC.PasswordConfirmation\n */\nexport default {\n\n\t/**\n\t * @deprecated 28.0.0 use methods from '@nextcloud/password-confirmation'\n\t */\n\trequiresPasswordConfirmation() {\n\t\treturn isPasswordConfirmationRequired()\n\t},\n\n\t/**\n\t * @param {Function} callback success callback function\n\t * @param {object} options options currently not used by confirmPassword\n\t * @param {Function} rejectCallback error callback function\n\t *\n\t * @deprecated 28.0.0 use methods from '@nextcloud/password-confirmation'\n\t */\n\trequirePasswordConfirmation(callback, options, rejectCallback) {\n\t\tconfirmPassword().then(callback, rejectCallback)\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default {\n\n\t/**\n\t * @type {Array.}\n\t */\n\t_plugins: {},\n\n\t/**\n\t * Register plugin\n\t *\n\t * @param {string} targetName app name / class name to hook into\n\t * @param {OC.Plugin} plugin plugin\n\t */\n\tregister(targetName, plugin) {\n\t\tlet plugins = this._plugins[targetName]\n\t\tif (!plugins) {\n\t\t\tplugins = this._plugins[targetName] = []\n\t\t}\n\t\tplugins.push(plugin)\n\t},\n\n\t/**\n\t * Returns all plugin registered to the given target\n\t * name / app name / class name.\n\t *\n\t * @param {string} targetName app name / class name to hook into\n\t * @return {Array.} array of plugins\n\t */\n\tgetPlugins(targetName) {\n\t\treturn this._plugins[targetName] || []\n\t},\n\n\t/**\n\t * Call attach() on all plugins registered to the given target name.\n\t *\n\t * @param {string} targetName app name / class name\n\t * @param {object} targetObject to be extended\n\t * @param {object} [options] options\n\t */\n\tattach(targetName, targetObject, options) {\n\t\tconst plugins = this.getPlugins(targetName)\n\t\tfor (let i = 0; i < plugins.length; i++) {\n\t\t\tif (plugins[i].attach) {\n\t\t\t\tplugins[i].attach(targetObject, options)\n\t\t\t}\n\t\t}\n\t},\n\n\t/**\n\t * Call detach() on all plugins registered to the given target name.\n\t *\n\t * @param {string} targetName app name / class name\n\t * @param {object} targetObject to be extended\n\t * @param {object} [options] options\n\t */\n\tdetach(targetName, targetObject, options) {\n\t\tconst plugins = this.getPlugins(targetName)\n\t\tfor (let i = 0; i < plugins.length; i++) {\n\t\t\tif (plugins[i].detach) {\n\t\t\t\tplugins[i].detach(targetObject, options)\n\t\t\t}\n\t\t}\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 const theme = window._theme || {}\n","// Current version.\nexport var VERSION = '1.13.8';\n\n// Establish the root object, `window` (`self`) in the browser, `global`\n// on the server, or `this` in some virtual machines. We use `self`\n// instead of `window` for `WebWorker` support.\nexport var root = (typeof self == 'object' && self.self === self && self) ||\n (typeof global == 'object' && global.global === global && global) ||\n Function('return this')() ||\n {};\n\n// Save bytes in the minified (but not gzipped) version:\nexport var ArrayProto = Array.prototype, ObjProto = Object.prototype;\nexport var SymbolProto = typeof Symbol !== 'undefined' ? Symbol.prototype : null;\n\n// Create quick reference variables for speed access to core prototypes.\nexport var push = ArrayProto.push,\n slice = ArrayProto.slice,\n toString = ObjProto.toString,\n hasOwnProperty = ObjProto.hasOwnProperty;\n\n// Modern feature detection.\nexport var supportsArrayBuffer = typeof ArrayBuffer !== 'undefined',\n supportsDataView = typeof DataView !== 'undefined';\n\n// All **ECMAScript 5+** native function implementations that we hope to use\n// are declared here.\nexport var nativeIsArray = Array.isArray,\n nativeKeys = Object.keys,\n nativeCreate = Object.create,\n nativeIsView = supportsArrayBuffer && ArrayBuffer.isView;\n\n// Create references to these builtin functions because we override them.\nexport var _isNaN = isNaN,\n _isFinite = isFinite;\n\n// Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed.\nexport var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString');\nexport var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString',\n 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString'];\n\n// The largest integer that can be represented exactly.\nexport var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1;\n","// Some functions take a variable number of arguments, or a few expected\n// arguments at the beginning and then a variable number of values to operate\n// on. This helper accumulates all remaining arguments past the function’s\n// argument length (or an explicit `startIndex`), into an array that becomes\n// the last argument. Similar to ES6’s \"rest parameter\".\nexport default function restArguments(func, startIndex) {\n startIndex = startIndex == null ? func.length - 1 : +startIndex;\n return function() {\n var length = Math.max(arguments.length - startIndex, 0),\n rest = Array(length),\n index = 0;\n for (; index < length; index++) {\n rest[index] = arguments[index + startIndex];\n }\n switch (startIndex) {\n case 0: return func.call(this, rest);\n case 1: return func.call(this, arguments[0], rest);\n case 2: return func.call(this, arguments[0], arguments[1], rest);\n }\n var args = Array(startIndex + 1);\n for (index = 0; index < startIndex; index++) {\n args[index] = arguments[index];\n }\n args[startIndex] = rest;\n return func.apply(this, args);\n };\n}\n","// Is a given variable an object?\nexport default function isObject(obj) {\n var type = typeof obj;\n return type === 'function' || (type === 'object' && !!obj);\n}\n","// Is a given value equal to null?\nexport default function isNull(obj) {\n return obj === null;\n}\n","// Is a given variable undefined?\nexport default function isUndefined(obj) {\n return obj === void 0;\n}\n","import { toString } from './_setup.js';\n\n// Is a given value a boolean?\nexport default function isBoolean(obj) {\n return obj === true || obj === false || toString.call(obj) === '[object Boolean]';\n}\n","// Is a given value a DOM element?\nexport default function isElement(obj) {\n return !!(obj && obj.nodeType === 1);\n}\n","import { toString } from './_setup.js';\n\n// Internal function for creating a `toString`-based type tester.\nexport default function tagTester(name) {\n var tag = '[object ' + name + ']';\n return function(obj) {\n return toString.call(obj) === tag;\n };\n}\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('String');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Number');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Date');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('RegExp');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Error');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Symbol');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('ArrayBuffer');\n","import tagTester from './_tagTester.js';\nimport { root } from './_setup.js';\n\nvar isFunction = tagTester('Function');\n\n// Optimize `isFunction` if appropriate. Work around some `typeof` bugs in old\n// v8, IE 11 (#1621), Safari 8 (#1929), and PhantomJS (#2236).\nvar nodelist = root.document && root.document.childNodes;\nif (typeof /./ != 'function' && typeof Int8Array != 'object' && typeof nodelist != 'function') {\n isFunction = function(obj) {\n return typeof obj == 'function' || false;\n };\n}\n\nexport default isFunction;\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('Object');\n","import { supportsDataView } from './_setup.js';\nimport hasObjectTag from './_hasObjectTag.js';\n\n// In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.\n// In IE 11, the most common among them, this problem also applies to\n// `Map`, `WeakMap` and `Set`.\n// Also, there are cases where an application can override the native\n// `DataView` object, in cases like that we can't use the constructor\n// safely and should just rely on alternate `DataView` checks\nexport var hasDataViewBug = (\n supportsDataView && (!/\\[native code\\]/.test(String(DataView)) || hasObjectTag(new DataView(new ArrayBuffer(8))))\n ),\n isIE11 = (typeof Map !== 'undefined' && hasObjectTag(new Map));\n","import tagTester from './_tagTester.js';\nimport isFunction from './isFunction.js';\nimport isArrayBuffer from './isArrayBuffer.js';\nimport { hasDataViewBug } from './_stringTagBug.js';\n\nvar isDataView = tagTester('DataView');\n\n// In IE 10 - Edge 13, we need a different heuristic\n// to determine whether an object is a `DataView`.\n// Also, in cases where the native `DataView` is\n// overridden we can't rely on the tag itself.\nfunction alternateIsDataView(obj) {\n return obj != null && isFunction(obj.getInt8) && isArrayBuffer(obj.buffer);\n}\n\nexport default (hasDataViewBug ? alternateIsDataView : isDataView);\n","import { nativeIsArray } from './_setup.js';\nimport tagTester from './_tagTester.js';\n\n// Is a given value an array?\n// Delegates to ECMA5's native `Array.isArray`.\nexport default nativeIsArray || tagTester('Array');\n","import { hasOwnProperty } from './_setup.js';\n\n// Internal function to check whether `key` is an own property name of `obj`.\nexport default function has(obj, key) {\n return obj != null && hasOwnProperty.call(obj, key);\n}\n","import tagTester from './_tagTester.js';\nimport has from './_has.js';\n\nvar isArguments = tagTester('Arguments');\n\n// Define a fallback version of the method in browsers (ahem, IE < 9), where\n// there isn't any inspectable \"Arguments\" type.\n(function() {\n if (!isArguments(arguments)) {\n isArguments = function(obj) {\n return has(obj, 'callee');\n };\n }\n}());\n\nexport default isArguments;\n","import { _isFinite } from './_setup.js';\nimport isSymbol from './isSymbol.js';\n\n// Is a given object a finite number?\nexport default function isFinite(obj) {\n return !isSymbol(obj) && _isFinite(obj) && !isNaN(parseFloat(obj));\n}\n","import { _isNaN } from './_setup.js';\nimport isNumber from './isNumber.js';\n\n// Is the given value `NaN`?\nexport default function isNaN(obj) {\n return isNumber(obj) && _isNaN(obj);\n}\n","// Predicate-generating function. Often useful outside of Underscore.\nexport default function constant(value) {\n return function() {\n return value;\n };\n}\n","import { MAX_ARRAY_INDEX } from './_setup.js';\n\n// Common internal logic for `isArrayLike` and `isBufferLike`.\nexport default function createSizePropertyCheck(getSizeProperty) {\n return function(collection) {\n var sizeProperty = getSizeProperty(collection);\n return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX;\n }\n}\n","// Internal helper to generate a function to obtain property `key` from `obj`.\nexport default function shallowProperty(key) {\n return function(obj) {\n return obj == null ? void 0 : obj[key];\n };\n}\n","import shallowProperty from './_shallowProperty.js';\n\n// Internal helper to obtain the `byteLength` property of an object.\nexport default shallowProperty('byteLength');\n","import createSizePropertyCheck from './_createSizePropertyCheck.js';\nimport getByteLength from './_getByteLength.js';\n\n// Internal helper to determine whether we should spend extensive checks against\n// `ArrayBuffer` et al.\nexport default createSizePropertyCheck(getByteLength);\n","import { supportsArrayBuffer, nativeIsView, toString } from './_setup.js';\nimport isDataView from './isDataView.js';\nimport constant from './constant.js';\nimport isBufferLike from './_isBufferLike.js';\n\n// Is a given value a typed array?\nvar typedArrayPattern = /\\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\\]/;\nfunction isTypedArray(obj) {\n // `ArrayBuffer.isView` is the most future-proof, so use it when available.\n // Otherwise, fall back on the above regular expression.\n return nativeIsView ? (nativeIsView(obj) && !isDataView(obj)) :\n isBufferLike(obj) && typedArrayPattern.test(toString.call(obj));\n}\n\nexport default supportsArrayBuffer ? isTypedArray : constant(false);\n","import shallowProperty from './_shallowProperty.js';\n\n// Internal helper to obtain the `length` property of an object.\nexport default shallowProperty('length');\n","import { nonEnumerableProps, ObjProto } from './_setup.js';\nimport isFunction from './isFunction.js';\nimport has from './_has.js';\n\n// Internal helper to create a simple lookup structure.\n// `collectNonEnumProps` used to depend on `_.contains`, but this led to\n// circular imports. `emulatedSet` is a one-off solution that only works for\n// arrays of strings.\nfunction emulatedSet(keys) {\n var hash = {};\n for (var l = keys.length, i = 0; i < l; ++i) hash[keys[i]] = true;\n return {\n contains: function(key) { return hash[key] === true; },\n push: function(key) {\n hash[key] = true;\n return keys.push(key);\n }\n };\n}\n\n// Internal helper. Checks `keys` for the presence of keys in IE < 9 that won't\n// be iterated by `for key in ...` and thus missed. Extends `keys` in place if\n// needed.\nexport default function collectNonEnumProps(obj, keys) {\n keys = emulatedSet(keys);\n var nonEnumIdx = nonEnumerableProps.length;\n var constructor = obj.constructor;\n var proto = (isFunction(constructor) && constructor.prototype) || ObjProto;\n\n // Constructor is a special case.\n var prop = 'constructor';\n if (has(obj, prop) && !keys.contains(prop)) keys.push(prop);\n\n while (nonEnumIdx--) {\n prop = nonEnumerableProps[nonEnumIdx];\n if (prop in obj && obj[prop] !== proto[prop] && !keys.contains(prop)) {\n keys.push(prop);\n }\n }\n}\n","import isObject from './isObject.js';\nimport { nativeKeys, hasEnumBug } from './_setup.js';\nimport has from './_has.js';\nimport collectNonEnumProps from './_collectNonEnumProps.js';\n\n// Retrieve the names of an object's own properties.\n// Delegates to **ECMAScript 5**'s native `Object.keys`.\nexport default function keys(obj) {\n if (!isObject(obj)) return [];\n if (nativeKeys) return nativeKeys(obj);\n var keys = [];\n for (var key in obj) if (has(obj, key)) keys.push(key);\n // Ahem, IE < 9.\n if (hasEnumBug) collectNonEnumProps(obj, keys);\n return keys;\n}\n","import getLength from './_getLength.js';\nimport isArray from './isArray.js';\nimport isString from './isString.js';\nimport isArguments from './isArguments.js';\nimport keys from './keys.js';\n\n// Is a given array, string, or object empty?\n// An \"empty\" object has no enumerable own-properties.\nexport default function isEmpty(obj) {\n if (obj == null) return true;\n // Skip the more expensive `toString`-based type checks if `obj` has no\n // `.length`.\n var length = getLength(obj);\n if (typeof length == 'number' && (\n isArray(obj) || isString(obj) || isArguments(obj)\n )) return length === 0;\n return getLength(keys(obj)) === 0;\n}\n","import keys from './keys.js';\n\n// Returns whether an object has a given set of `key:value` pairs.\nexport default function isMatch(object, attrs) {\n var _keys = keys(attrs), length = _keys.length;\n if (object == null) return !length;\n var obj = Object(object);\n for (var i = 0; i < length; i++) {\n var key = _keys[i];\n if (attrs[key] !== obj[key] || !(key in obj)) return false;\n }\n return true;\n}\n","import { VERSION } from './_setup.js';\n\n// If Underscore is called as a function, it returns a wrapped object that can\n// be used OO-style. This wrapper holds altered versions of all functions added\n// through `_.mixin`. Wrapped objects may be chained.\nexport default function _(obj) {\n if (obj instanceof _) return obj;\n if (!(this instanceof _)) return new _(obj);\n this._wrapped = obj;\n}\n\n_.VERSION = VERSION;\n\n// Extracts the result from a wrapped and chained object.\n_.prototype.value = function() {\n return this._wrapped;\n};\n\n// Provide unwrapping proxies for some methods used in engine operations\n// such as arithmetic and JSON stringification.\n_.prototype.valueOf = _.prototype.toJSON = _.prototype.value;\n\n_.prototype.toString = function() {\n return String(this._wrapped);\n};\n","import getByteLength from './_getByteLength.js';\n\n// Internal function to wrap or shallow-copy an ArrayBuffer,\n// typed array or DataView to a new view, reusing the buffer.\nexport default function toBufferView(bufferSource) {\n return new Uint8Array(\n bufferSource.buffer || bufferSource,\n bufferSource.byteOffset || 0,\n getByteLength(bufferSource)\n );\n}\n","import _ from './underscore.js';\nimport { toString, SymbolProto } from './_setup.js';\nimport getByteLength from './_getByteLength.js';\nimport isTypedArray from './isTypedArray.js';\nimport isFunction from './isFunction.js';\nimport { hasDataViewBug } from './_stringTagBug.js';\nimport isDataView from './isDataView.js';\nimport keys from './keys.js';\nimport has from './_has.js';\nimport toBufferView from './_toBufferView.js';\n\n// We use this string twice, so give it a name for minification.\nvar tagDataView = '[object DataView]';\n\n// Perform a deep comparison to check if two objects are equal.\nexport default function isEqual(a, b) {\n var todo = [{a: a, b: b}];\n // Initializing stacks of traversed objects for cycle detection.\n var aStack = [], bStack = [];\n\n while (todo.length) {\n var frame = todo.pop();\n if (frame === true) {\n // Remove the first object from the stack of traversed objects.\n aStack.pop();\n bStack.pop();\n continue;\n }\n a = frame.a;\n b = frame.b;\n\n // Identical objects are equal. `0 === -0`, but they aren't identical.\n // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal).\n if (a === b) {\n if (a !== 0 || 1 / a === 1 / b) continue;\n return false;\n }\n // `null` or `undefined` only equal to itself (strict comparison).\n if (a == null || b == null) return false;\n // `NaN`s are equivalent, but non-reflexive.\n if (a !== a) {\n if (b !== b) continue;\n return false;\n }\n // Exhaust primitive checks\n var type = typeof a;\n if (type !== 'function' && type !== 'object' && typeof b != 'object') return false;\n\n// Internal recursive comparison function for `_.isEqual`.\n // Unwrap any wrapped objects.\n if (a instanceof _) a = a._wrapped;\n if (b instanceof _) b = b._wrapped;\n // Compare `[[Class]]` names.\n var className = toString.call(a);\n if (className !== toString.call(b)) return false;\n // Work around a bug in IE 10 - Edge 13.\n if (hasDataViewBug && className == '[object Object]' && isDataView(a)) {\n if (!isDataView(b)) return false;\n className = tagDataView;\n }\n switch (className) {\n // These types are compared by value.\n case '[object RegExp]':\n // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')\n case '[object String]':\n // Primitives and their corresponding object wrappers are equivalent; thus, `\"5\"` is\n // equivalent to `new String(\"5\")`.\n if ('' + a === '' + b) continue;\n return false;\n case '[object Number]':\n todo.push({a: +a, b: +b});\n continue;\n case '[object Date]':\n case '[object Boolean]':\n // Coerce dates and booleans to numeric primitive values. Dates are compared by their\n // millisecond representations. Note that invalid dates with millisecond representations\n // of `NaN` are not equivalent.\n if (+a === +b) continue;\n return false;\n case '[object Symbol]':\n if (SymbolProto.valueOf.call(a) === SymbolProto.valueOf.call(b)) continue;\n return false;\n case '[object ArrayBuffer]':\n case tagDataView:\n // Coerce to typed array so we can fall through.\n todo.push({a: toBufferView(a), b: toBufferView(b)});\n continue;\n }\n\n var areArrays = className === '[object Array]';\n if (!areArrays && isTypedArray(a)) {\n var byteLength = getByteLength(a);\n if (byteLength !== getByteLength(b)) return false;\n if (a.buffer === b.buffer && a.byteOffset === b.byteOffset) continue;\n areArrays = true;\n }\n if (!areArrays) {\n if (typeof a != 'object' || typeof b != 'object') return false;\n\n // Objects with different constructors are not equivalent, but `Object`s or `Array`s\n // from different frames are.\n var aCtor = a.constructor, bCtor = b.constructor;\n if (aCtor !== bCtor && !(isFunction(aCtor) && aCtor instanceof aCtor &&\n isFunction(bCtor) && bCtor instanceof bCtor)\n && ('constructor' in a && 'constructor' in b)) {\n return false;\n }\n }\n\n // Assume equality for cyclic structures. The algorithm for detecting cyclic\n // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.\n\n var length = aStack.length;\n while (length--) {\n // Linear search. Performance is inversely proportional to the number of\n // unique nested structures.\n if (aStack[length] === a) {\n if (bStack[length] === b) break;\n return false;\n }\n }\n if (length >= 0) continue;\n\n // Add the first object to the stack of traversed objects.\n aStack.push(a);\n bStack.push(b);\n todo.push(true);\n\n // Recursively compare objects and arrays.\n if (areArrays) {\n // Compare array lengths to determine if a deep comparison is necessary.\n length = a.length;\n if (length !== b.length) return false;\n // Deep compare the contents, ignoring non-numeric properties.\n while (length--) {\n todo.push({a: a[length], b: b[length]});\n }\n } else {\n // Deep compare objects.\n var _keys = keys(a), key;\n length = _keys.length;\n // Ensure that both objects contain the same number of properties before comparing deep equality.\n if (keys(b).length !== length) return false;\n while (length--) {\n // Deep compare each member\n key = _keys[length];\n if (!has(b, key)) return false;\n todo.push({a: a[key], b: b[key]});\n }\n }\n }\n return true;\n}\n","import isObject from './isObject.js';\nimport { hasEnumBug } from './_setup.js';\nimport collectNonEnumProps from './_collectNonEnumProps.js';\n\n// Retrieve all the enumerable property names of an object.\nexport default function allKeys(obj) {\n if (!isObject(obj)) return [];\n var keys = [];\n for (var key in obj) keys.push(key);\n // Ahem, IE < 9.\n if (hasEnumBug) collectNonEnumProps(obj, keys);\n return keys;\n}\n","import getLength from './_getLength.js';\nimport isFunction from './isFunction.js';\nimport allKeys from './allKeys.js';\n\n// Since the regular `Object.prototype.toString` type tests don't work for\n// some types in IE 11, we use a fingerprinting heuristic instead, based\n// on the methods. It's not great, but it's the best we got.\n// The fingerprint method lists are defined below.\nexport function ie11fingerprint(methods) {\n var length = getLength(methods);\n return function(obj) {\n if (obj == null) return false;\n // `Map`, `WeakMap` and `Set` have no enumerable keys.\n var keys = allKeys(obj);\n if (getLength(keys)) return false;\n for (var i = 0; i < length; i++) {\n if (!isFunction(obj[methods[i]])) return false;\n }\n // If we are testing against `WeakMap`, we need to ensure that\n // `obj` doesn't have a `forEach` method in order to distinguish\n // it from a regular `Map`.\n return methods !== weakMapMethods || !isFunction(obj[forEachName]);\n };\n}\n\n// In the interest of compact minification, we write\n// each string in the fingerprints only once.\nvar forEachName = 'forEach',\n hasName = 'has',\n commonInit = ['clear', 'delete'],\n mapTail = ['get', hasName, 'set'];\n\n// `Map`, `WeakMap` and `Set` each have slightly different\n// combinations of the above sublists.\nexport var mapMethods = commonInit.concat(forEachName, mapTail),\n weakMapMethods = commonInit.concat(mapTail),\n setMethods = ['add'].concat(commonInit, forEachName, hasName);\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, mapMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(mapMethods) : tagTester('Map');\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, weakMapMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(weakMapMethods) : tagTester('WeakMap');\n","import tagTester from './_tagTester.js';\nimport { isIE11 } from './_stringTagBug.js';\nimport { ie11fingerprint, setMethods } from './_methodFingerprint.js';\n\nexport default isIE11 ? ie11fingerprint(setMethods) : tagTester('Set');\n","import tagTester from './_tagTester.js';\n\nexport default tagTester('WeakSet');\n","import keys from './keys.js';\n\n// Retrieve the values of an object's properties.\nexport default function values(obj) {\n var _keys = keys(obj);\n var length = _keys.length;\n var values = Array(length);\n for (var i = 0; i < length; i++) {\n values[i] = obj[_keys[i]];\n }\n return values;\n}\n","import keys from './keys.js';\n\n// Convert an object into a list of `[key, value]` pairs.\n// The opposite of `_.object` with one argument.\nexport default function pairs(obj) {\n var _keys = keys(obj);\n var length = _keys.length;\n var pairs = Array(length);\n for (var i = 0; i < length; i++) {\n pairs[i] = [_keys[i], obj[_keys[i]]];\n }\n return pairs;\n}\n","import keys from './keys.js';\n\n// Invert the keys and values of an object. The values must be serializable.\nexport default function invert(obj) {\n var result = {};\n var _keys = keys(obj);\n for (var i = 0, length = _keys.length; i < length; i++) {\n result[obj[_keys[i]]] = _keys[i];\n }\n return result;\n}\n","import isFunction from './isFunction.js';\n\n// Return a sorted list of the function names available on the object.\nexport default function functions(obj) {\n var names = [];\n for (var key in obj) {\n if (isFunction(obj[key])) names.push(key);\n }\n return names.sort();\n}\n","// An internal function for creating assigner functions.\nexport default function createAssigner(keysFunc, defaults) {\n return function(obj) {\n var length = arguments.length;\n if (defaults) obj = Object(obj);\n if (length < 2 || obj == null) return obj;\n for (var index = 1; index < length; index++) {\n var source = arguments[index],\n keys = keysFunc(source),\n l = keys.length;\n for (var i = 0; i < l; i++) {\n var key = keys[i];\n if (!defaults || obj[key] === void 0) obj[key] = source[key];\n }\n }\n return obj;\n };\n}\n","import createAssigner from './_createAssigner.js';\nimport allKeys from './allKeys.js';\n\n// Extend a given object with all the properties in passed-in object(s).\nexport default createAssigner(allKeys);\n","import createAssigner from './_createAssigner.js';\nimport keys from './keys.js';\n\n// Assigns a given object with all the own properties in the passed-in\n// object(s).\n// (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)\nexport default createAssigner(keys);\n","import createAssigner from './_createAssigner.js';\nimport allKeys from './allKeys.js';\n\n// Fill in a given object with default properties.\nexport default createAssigner(allKeys, true);\n","import isObject from './isObject.js';\nimport { nativeCreate } from './_setup.js';\n\n// Create a naked function reference for surrogate-prototype-swapping.\nfunction ctor() {\n return function(){};\n}\n\n// An internal function for creating a new object that inherits from another.\nexport default function baseCreate(prototype) {\n if (!isObject(prototype)) return {};\n if (nativeCreate) return nativeCreate(prototype);\n var Ctor = ctor();\n Ctor.prototype = prototype;\n var result = new Ctor;\n Ctor.prototype = null;\n return result;\n}\n","import baseCreate from './_baseCreate.js';\nimport extendOwn from './extendOwn.js';\n\n// Creates an object that inherits from the given prototype object.\n// If additional properties are provided then they will be added to the\n// created object.\nexport default function create(prototype, props) {\n var result = baseCreate(prototype);\n if (props) extendOwn(result, props);\n return result;\n}\n","import isObject from './isObject.js';\nimport isArray from './isArray.js';\nimport extend from './extend.js';\n\n// Create a (shallow-cloned) duplicate of an object.\nexport default function clone(obj) {\n if (!isObject(obj)) return obj;\n return isArray(obj) ? obj.slice() : extend({}, obj);\n}\n","// Invokes `interceptor` with the `obj` and then returns `obj`.\n// The primary purpose of this method is to \"tap into\" a method chain, in\n// order to perform operations on intermediate results within the chain.\nexport default function tap(obj, interceptor) {\n interceptor(obj);\n return obj;\n}\n","import _ from './underscore.js';\nimport isArray from './isArray.js';\n\n// Normalize a (deep) property `path` to array.\n// Like `_.iteratee`, this function can be customized.\nexport default function toPath(path) {\n return isArray(path) ? path : [path];\n}\n_.toPath = toPath;\n","import _ from './underscore.js';\nimport './toPath.js';\n\n// Internal wrapper for `_.toPath` to enable minification.\n// Similar to `cb` for `_.iteratee`.\nexport default function toPath(path) {\n return _.toPath(path);\n}\n","// Internal function to obtain a nested property in `obj` along `path`.\nexport default function deepGet(obj, path) {\n var length = path.length;\n for (var i = 0; i < length; i++) {\n if (obj == null) return void 0;\n obj = obj[path[i]];\n }\n return length ? obj : void 0;\n}\n","import toPath from './_toPath.js';\nimport deepGet from './_deepGet.js';\nimport isUndefined from './isUndefined.js';\n\n// Get the value of the (deep) property on `path` from `object`.\n// If any property in `path` does not exist or if the value is\n// `undefined`, return `defaultValue` instead.\n// The `path` is normalized through `_.toPath`.\nexport default function get(object, path, defaultValue) {\n var value = deepGet(object, toPath(path));\n return isUndefined(value) ? defaultValue : value;\n}\n","import _has from './_has.js';\nimport toPath from './_toPath.js';\n\n// Shortcut function for checking if an object has a given property directly on\n// itself (in other words, not on a prototype). Unlike the internal `has`\n// function, this public version can also traverse nested properties.\nexport default function has(obj, path) {\n path = toPath(path);\n var length = path.length;\n for (var i = 0; i < length; i++) {\n var key = path[i];\n if (!_has(obj, key)) return false;\n obj = obj[key];\n }\n return !!length;\n}\n","// Keep the identity function around for default iteratees.\nexport default function identity(value) {\n return value;\n}\n","import extendOwn from './extendOwn.js';\nimport isMatch from './isMatch.js';\n\n// Returns a predicate for checking whether an object has a given set of\n// `key:value` pairs.\nexport default function matcher(attrs) {\n attrs = extendOwn({}, attrs);\n return function(obj) {\n return isMatch(obj, attrs);\n };\n}\n","import deepGet from './_deepGet.js';\nimport toPath from './_toPath.js';\n\n// Creates a function that, when passed an object, will traverse that object’s\n// properties down the given `path`, specified as an array of keys or indices.\nexport default function property(path) {\n path = toPath(path);\n return function(obj) {\n return deepGet(obj, path);\n };\n}\n","// Internal function that returns an efficient (for current engines) version\n// of the passed-in callback, to be repeatedly applied in other Underscore\n// functions.\nexport default function optimizeCb(func, context, argCount) {\n if (context === void 0) return func;\n switch (argCount == null ? 3 : argCount) {\n case 1: return function(value) {\n return func.call(context, value);\n };\n // The 2-argument case is omitted because we’re not using it.\n case 3: return function(value, index, collection) {\n return func.call(context, value, index, collection);\n };\n case 4: return function(accumulator, value, index, collection) {\n return func.call(context, accumulator, value, index, collection);\n };\n }\n return function() {\n return func.apply(context, arguments);\n };\n}\n","import identity from './identity.js';\nimport isFunction from './isFunction.js';\nimport isObject from './isObject.js';\nimport isArray from './isArray.js';\nimport matcher from './matcher.js';\nimport property from './property.js';\nimport optimizeCb from './_optimizeCb.js';\n\n// An internal function to generate callbacks that can be applied to each\n// element in a collection, returning the desired result — either `_.identity`,\n// an arbitrary callback, a property matcher, or a property accessor.\nexport default function baseIteratee(value, context, argCount) {\n if (value == null) return identity;\n if (isFunction(value)) return optimizeCb(value, context, argCount);\n if (isObject(value) && !isArray(value)) return matcher(value);\n return property(value);\n}\n","import _ from './underscore.js';\nimport baseIteratee from './_baseIteratee.js';\n\n// External wrapper for our callback generator. Users may customize\n// `_.iteratee` if they want additional predicate/iteratee shorthand styles.\n// This abstraction hides the internal-only `argCount` argument.\nexport default function iteratee(value, context) {\n return baseIteratee(value, context, Infinity);\n}\n_.iteratee = iteratee;\n","import _ from './underscore.js';\nimport baseIteratee from './_baseIteratee.js';\nimport iteratee from './iteratee.js';\n\n// The function we call internally to generate a callback. It invokes\n// `_.iteratee` if overridden, otherwise `baseIteratee`.\nexport default function cb(value, context, argCount) {\n if (_.iteratee !== iteratee) return _.iteratee(value, context);\n return baseIteratee(value, context, argCount);\n}\n","import cb from './_cb.js';\nimport keys from './keys.js';\n\n// Returns the results of applying the `iteratee` to each element of `obj`.\n// In contrast to `_.map` it returns an object.\nexport default function mapObject(obj, iteratee, context) {\n iteratee = cb(iteratee, context);\n var _keys = keys(obj),\n length = _keys.length,\n results = {};\n for (var index = 0; index < length; index++) {\n var currentKey = _keys[index];\n results[currentKey] = iteratee(obj[currentKey], currentKey, obj);\n }\n return results;\n}\n","// Predicate-generating function. Often useful outside of Underscore.\nexport default function noop(){}\n","import noop from './noop.js';\nimport get from './get.js';\n\n// Generates a function for a given object that returns a given property.\nexport default function propertyOf(obj) {\n if (obj == null) return noop;\n return function(path) {\n return get(obj, path);\n };\n}\n","import optimizeCb from './_optimizeCb.js';\n\n// Run a function **n** times.\nexport default function times(n, iteratee, context) {\n var accum = Array(Math.max(0, n));\n iteratee = optimizeCb(iteratee, context, 1);\n for (var i = 0; i < n; i++) accum[i] = iteratee(i);\n return accum;\n}\n","// Return a random integer between `min` and `max` (inclusive).\nexport default function random(min, max) {\n if (max == null) {\n max = min;\n min = 0;\n }\n return min + Math.floor(Math.random() * (max - min + 1));\n}\n","// A (possibly faster) way to get the current timestamp as an integer.\nexport default Date.now || function() {\n return new Date().getTime();\n};\n","import keys from './keys.js';\n\n// Internal helper to generate functions for escaping and unescaping strings\n// to/from HTML interpolation.\nexport default function createEscaper(map) {\n var escaper = function(match) {\n return map[match];\n };\n // Regexes for identifying a key that needs to be escaped.\n var source = '(?:' + keys(map).join('|') + ')';\n var testRegexp = RegExp(source);\n var replaceRegexp = RegExp(source, 'g');\n return function(string) {\n string = string == null ? '' : '' + string;\n return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;\n };\n}\n","// Internal list of HTML entities for escaping.\nexport default {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '`': '`'\n};\n","import createEscaper from './_createEscaper.js';\nimport escapeMap from './_escapeMap.js';\n\n// Function for escaping strings to HTML interpolation.\nexport default createEscaper(escapeMap);\n","import createEscaper from './_createEscaper.js';\nimport unescapeMap from './_unescapeMap.js';\n\n// Function for unescaping strings from HTML interpolation.\nexport default createEscaper(unescapeMap);\n","import invert from './invert.js';\nimport escapeMap from './_escapeMap.js';\n\n// Internal list of HTML entities for unescaping.\nexport default invert(escapeMap);\n","import _ from './underscore.js';\n\n// By default, Underscore uses ERB-style template delimiters. Change the\n// following template settings to use alternative delimiters.\nexport default _.templateSettings = {\n evaluate: /<%([\\s\\S]+?)%>/g,\n interpolate: /<%=([\\s\\S]+?)%>/g,\n escape: /<%-([\\s\\S]+?)%>/g\n};\n","import defaults from './defaults.js';\nimport _ from './underscore.js';\nimport './templateSettings.js';\n\n// When customizing `_.templateSettings`, if you don't want to define an\n// interpolation, evaluation or escaping regex, we need one that is\n// guaranteed not to match.\nvar noMatch = /(.)^/;\n\n// Certain characters need to be escaped so that they can be put into a\n// string literal.\nvar escapes = {\n \"'\": \"'\",\n '\\\\': '\\\\',\n '\\r': 'r',\n '\\n': 'n',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n};\n\nvar escapeRegExp = /\\\\|'|\\r|\\n|\\u2028|\\u2029/g;\n\nfunction escapeChar(match) {\n return '\\\\' + escapes[match];\n}\n\n// In order to prevent third-party code injection through\n// `_.templateSettings.variable`, we test it against the following regular\n// expression. It is intentionally a bit more liberal than just matching valid\n// identifiers, but still prevents possible loopholes through defaults or\n// destructuring assignment.\nvar bareIdentifier = /^\\s*(\\w|\\$)+\\s*$/;\n\n// JavaScript micro-templating, similar to John Resig's implementation.\n// Underscore templating handles arbitrary delimiters, preserves whitespace,\n// and correctly escapes quotes within interpolated code.\n// NB: `oldSettings` only exists for backwards compatibility.\nexport default function template(text, settings, oldSettings) {\n if (!settings && oldSettings) settings = oldSettings;\n settings = defaults({}, settings, _.templateSettings);\n\n // Combine delimiters into one regular expression via alternation.\n var matcher = RegExp([\n (settings.escape || noMatch).source,\n (settings.interpolate || noMatch).source,\n (settings.evaluate || noMatch).source\n ].join('|') + '|$', 'g');\n\n // Compile the template source, escaping string literals appropriately.\n var index = 0;\n var source = \"__p+='\";\n text.replace(matcher, function(match, escape, interpolate, evaluate, offset) {\n source += text.slice(index, offset).replace(escapeRegExp, escapeChar);\n index = offset + match.length;\n\n if (escape) {\n source += \"'+\\n((__t=(\" + escape + \"))==null?'':_.escape(__t))+\\n'\";\n } else if (interpolate) {\n source += \"'+\\n((__t=(\" + interpolate + \"))==null?'':__t)+\\n'\";\n } else if (evaluate) {\n source += \"';\\n\" + evaluate + \"\\n__p+='\";\n }\n\n // Adobe VMs need the match returned to produce the correct offset.\n return match;\n });\n source += \"';\\n\";\n\n var argument = settings.variable;\n if (argument) {\n // Insure against third-party code injection. (CVE-2021-23358)\n if (!bareIdentifier.test(argument)) throw new Error(\n 'variable is not a bare identifier: ' + argument\n );\n } else {\n // If a variable is not specified, place data values in local scope.\n source = 'with(obj||{}){\\n' + source + '}\\n';\n argument = 'obj';\n }\n\n source = \"var __t,__p='',__j=Array.prototype.join,\" +\n \"print=function(){__p+=__j.call(arguments,'');};\\n\" +\n source + 'return __p;\\n';\n\n var render;\n try {\n render = new Function(argument, '_', source);\n } catch (e) {\n e.source = source;\n throw e;\n }\n\n var template = function(data) {\n return render.call(this, data, _);\n };\n\n // Provide the compiled source as a convenience for precompilation.\n template.source = 'function(' + argument + '){\\n' + source + '}';\n\n return template;\n}\n","import isFunction from './isFunction.js';\nimport toPath from './_toPath.js';\n\n// Traverses the children of `obj` along `path`. If a child is a function, it\n// is invoked with its parent as context. Returns the value of the final\n// child, or `fallback` if any child is undefined.\nexport default function result(obj, path, fallback) {\n path = toPath(path);\n var length = path.length;\n if (!length) {\n return isFunction(fallback) ? fallback.call(obj) : fallback;\n }\n for (var i = 0; i < length; i++) {\n var prop = obj == null ? void 0 : obj[path[i]];\n if (prop === void 0) {\n prop = fallback;\n i = length; // Ensure we don't continue iterating.\n }\n obj = isFunction(prop) ? prop.call(obj) : prop;\n }\n return obj;\n}\n","// Generate a unique integer id (unique within the entire client session).\n// Useful for temporary DOM ids.\nvar idCounter = 0;\nexport default function uniqueId(prefix) {\n var id = ++idCounter + '';\n return prefix ? prefix + id : id;\n}\n","import _ from './underscore.js';\n\n// Start chaining a wrapped Underscore object.\nexport default function chain(obj) {\n var instance = _(obj);\n instance._chain = true;\n return instance;\n}\n","import baseCreate from './_baseCreate.js';\nimport isObject from './isObject.js';\n\n// Internal function to execute `sourceFunc` bound to `context` with optional\n// `args`. Determines whether to execute a function as a constructor or as a\n// normal function.\nexport default function executeBound(sourceFunc, boundFunc, context, callingContext, args) {\n if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);\n var self = baseCreate(sourceFunc.prototype);\n var result = sourceFunc.apply(self, args);\n if (isObject(result)) return result;\n return self;\n}\n","import restArguments from './restArguments.js';\nimport executeBound from './_executeBound.js';\nimport _ from './underscore.js';\n\n// Partially apply a function by creating a version that has had some of its\n// arguments pre-filled, without changing its dynamic `this` context. `_` acts\n// as a placeholder by default, allowing any combination of arguments to be\n// pre-filled. Set `_.partial.placeholder` for a custom placeholder argument.\nvar partial = restArguments(function(func, boundArgs) {\n var placeholder = partial.placeholder;\n var bound = function() {\n var position = 0, length = boundArgs.length;\n var args = Array(length);\n for (var i = 0; i < length; i++) {\n args[i] = boundArgs[i] === placeholder ? arguments[position++] : boundArgs[i];\n }\n while (position < arguments.length) args.push(arguments[position++]);\n return executeBound(func, bound, this, this, args);\n };\n return bound;\n});\n\npartial.placeholder = _;\nexport default partial;\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport executeBound from './_executeBound.js';\n\n// Create a function bound to a given object (assigning `this`, and arguments,\n// optionally).\nexport default restArguments(function(func, context, args) {\n if (!isFunction(func)) throw new TypeError('Bind must be called on a function');\n var bound = restArguments(function(callArgs) {\n return executeBound(func, bound, context, this, args.concat(callArgs));\n });\n return bound;\n});\n","import createSizePropertyCheck from './_createSizePropertyCheck.js';\nimport getLength from './_getLength.js';\n\n// Internal helper for collection methods to determine whether a collection\n// should be iterated as an array or as an object.\n// Related: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength\n// Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094\nexport default createSizePropertyCheck(getLength);\n","import getLength from './_getLength.js';\nimport isArrayLike from './_isArrayLike.js';\nimport isArray from './isArray.js';\nimport isArguments from './isArguments.js';\n\n// Internal implementation of a recursive `flatten` function.\nexport default function flatten(input, depth, strict) {\n if (!depth && depth !== 0) depth = Infinity;\n var output = [], idx = 0, i = 0, length = getLength(input) || 0, stack = [];\n while (true) {\n if (i >= length) {\n if (!stack.length) break;\n var frame = stack.pop();\n i = frame.i;\n input = frame.v;\n length = getLength(input);\n continue;\n }\n var value = input[i++];\n if (stack.length >= depth) {\n output[idx++] = value;\n } else if (isArrayLike(value) && (isArray(value) || isArguments(value))) {\n // Flatten current level of array or arguments object.\n stack.push({i: i, v: input});\n i = 0;\n input = value;\n length = getLength(input);\n } else if (!strict) {\n output[idx++] = value;\n }\n }\n return output;\n}\n","import restArguments from './restArguments.js';\nimport flatten from './_flatten.js';\nimport bind from './bind.js';\n\n// Bind a number of an object's methods to that object. Remaining arguments\n// are the method names to be bound. Useful for ensuring that all callbacks\n// defined on an object belong to it.\nexport default restArguments(function(obj, keys) {\n keys = flatten(keys, false, false);\n var index = keys.length;\n if (index < 1) throw new Error('bindAll must be passed function names');\n while (index--) {\n var key = keys[index];\n obj[key] = bind(obj[key], obj);\n }\n return obj;\n});\n","import has from './_has.js';\n\n// Memoize an expensive function by storing its results.\nexport default function memoize(func, hasher) {\n var memoize = function(key) {\n var cache = memoize.cache;\n var address = '' + (hasher ? hasher.apply(this, arguments) : key);\n if (!has(cache, address)) cache[address] = func.apply(this, arguments);\n return cache[address];\n };\n memoize.cache = {};\n return memoize;\n}\n","import restArguments from './restArguments.js';\n\n// Delays a function for the given number of milliseconds, and then calls\n// it with the arguments supplied.\nexport default restArguments(function(func, wait, args) {\n return setTimeout(function() {\n return func.apply(null, args);\n }, wait);\n});\n","import partial from './partial.js';\nimport delay from './delay.js';\nimport _ from './underscore.js';\n\n// Defers a function, scheduling it to run after the current call stack has\n// cleared.\nexport default partial(delay, _, 1);\n","import now from './now.js';\n\n// Returns a function, that, when invoked, will only be triggered at most once\n// during a given window of time. Normally, the throttled function will run\n// as much as it can, without ever going more than once per `wait` duration;\n// but if you'd like to disable the execution on the leading edge, pass\n// `{leading: false}`. To disable execution on the trailing edge, ditto.\nexport default function throttle(func, wait, options) {\n var timeout, context, args, result;\n var previous = 0;\n if (!options) options = {};\n\n var later = function() {\n previous = options.leading === false ? 0 : now();\n timeout = null;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n };\n\n var throttled = function() {\n var _now = now();\n if (!previous && options.leading === false) previous = _now;\n var remaining = wait - (_now - previous);\n context = this;\n args = arguments;\n if (remaining <= 0 || remaining > wait) {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n previous = _now;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n } else if (!timeout && options.trailing !== false) {\n timeout = setTimeout(later, remaining);\n }\n return result;\n };\n\n throttled.cancel = function() {\n clearTimeout(timeout);\n previous = 0;\n timeout = context = args = null;\n };\n\n return throttled;\n}\n","import restArguments from './restArguments.js';\nimport now from './now.js';\n\n// When a sequence of calls of the returned function ends, the argument\n// function is triggered. The end of a sequence is defined by the `wait`\n// parameter. If `immediate` is passed, the argument function will be\n// triggered at the beginning of the sequence instead of at the end.\nexport default function debounce(func, wait, immediate) {\n var timeout, previous, args, result, context;\n\n var later = function() {\n var passed = now() - previous;\n if (wait > passed) {\n timeout = setTimeout(later, wait - passed);\n } else {\n timeout = null;\n if (!immediate) result = func.apply(context, args);\n // This check is needed because `func` can recursively invoke `debounced`.\n if (!timeout) args = context = null;\n }\n };\n\n var debounced = restArguments(function(_args) {\n context = this;\n args = _args;\n previous = now();\n if (!timeout) {\n timeout = setTimeout(later, wait);\n if (immediate) result = func.apply(context, args);\n }\n return result;\n });\n\n debounced.cancel = function() {\n clearTimeout(timeout);\n timeout = args = context = null;\n };\n\n return debounced;\n}\n","import partial from './partial.js';\n\n// Returns the first function passed as an argument to the second,\n// allowing you to adjust arguments, run code before and after, and\n// conditionally execute the original function.\nexport default function wrap(func, wrapper) {\n return partial(wrapper, func);\n}\n","// Returns a negated version of the passed-in predicate.\nexport default function negate(predicate) {\n return function() {\n return !predicate.apply(this, arguments);\n };\n}\n","// Returns a function that is the composition of a list of functions, each\n// consuming the return value of the function that follows.\nexport default function compose() {\n var args = arguments;\n var start = args.length - 1;\n return function() {\n var i = start;\n var result = args[start].apply(this, arguments);\n while (i--) result = args[i].call(this, result);\n return result;\n };\n}\n","// Returns a function that will only be executed on and after the Nth call.\nexport default function after(times, func) {\n return function() {\n if (--times < 1) {\n return func.apply(this, arguments);\n }\n };\n}\n","// Returns a function that will only be executed up to (but not including) the\n// Nth call.\nexport default function before(times, func) {\n var memo;\n return function() {\n if (--times > 0) {\n memo = func.apply(this, arguments);\n }\n if (times <= 1) func = null;\n return memo;\n };\n}\n","import partial from './partial.js';\nimport before from './before.js';\n\n// Returns a function that will be executed at most one time, no matter how\n// often you call it. Useful for lazy initialization.\nexport default partial(before, 2);\n","import cb from './_cb.js';\nimport keys from './keys.js';\n\n// Returns the first key on an object that passes a truth test.\nexport default function findKey(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = keys(obj), key;\n for (var i = 0, length = _keys.length; i < length; i++) {\n key = _keys[i];\n if (predicate(obj[key], key, obj)) return key;\n }\n}\n","import cb from './_cb.js';\nimport getLength from './_getLength.js';\n\n// Internal function to generate `_.findIndex` and `_.findLastIndex`.\nexport default function createPredicateIndexFinder(dir) {\n return function(array, predicate, context) {\n predicate = cb(predicate, context);\n var length = getLength(array);\n var index = dir > 0 ? 0 : length - 1;\n for (; index >= 0 && index < length; index += dir) {\n if (predicate(array[index], index, array)) return index;\n }\n return -1;\n };\n}\n","import createPredicateIndexFinder from './_createPredicateIndexFinder.js';\n\n// Returns the first index on an array-like that passes a truth test.\nexport default createPredicateIndexFinder(1);\n","import createPredicateIndexFinder from './_createPredicateIndexFinder.js';\n\n// Returns the last index on an array-like that passes a truth test.\nexport default createPredicateIndexFinder(-1);\n","import cb from './_cb.js';\nimport getLength from './_getLength.js';\n\n// Use a comparator function to figure out the smallest index at which\n// an object should be inserted so as to maintain order. Uses binary search.\nexport default function sortedIndex(array, obj, iteratee, context) {\n iteratee = cb(iteratee, context, 1);\n var value = iteratee(obj);\n var low = 0, high = getLength(array);\n while (low < high) {\n var mid = Math.floor((low + high) / 2);\n if (iteratee(array[mid]) < value) low = mid + 1; else high = mid;\n }\n return low;\n}\n","import getLength from './_getLength.js';\nimport { slice } from './_setup.js';\nimport isNaN from './isNaN.js';\n\n// Internal function to generate the `_.indexOf` and `_.lastIndexOf` functions.\nexport default function createIndexFinder(dir, predicateFind, sortedIndex) {\n return function(array, item, idx) {\n var i = 0, length = getLength(array);\n if (typeof idx == 'number') {\n if (dir > 0) {\n i = idx >= 0 ? idx : Math.max(idx + length, i);\n } else {\n length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1;\n }\n } else if (sortedIndex && idx && length) {\n idx = sortedIndex(array, item);\n return array[idx] === item ? idx : -1;\n }\n if (item !== item) {\n idx = predicateFind(slice.call(array, i, length), isNaN);\n return idx >= 0 ? idx + i : -1;\n }\n for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) {\n if (array[idx] === item) return idx;\n }\n return -1;\n };\n}\n","import sortedIndex from './sortedIndex.js';\nimport findIndex from './findIndex.js';\nimport createIndexFinder from './_createIndexFinder.js';\n\n// Return the position of the first occurrence of an item in an array,\n// or -1 if the item is not included in the array.\n// If the array is large and already in sort order, pass `true`\n// for **isSorted** to use binary search.\nexport default createIndexFinder(1, findIndex, sortedIndex);\n","import findLastIndex from './findLastIndex.js';\nimport createIndexFinder from './_createIndexFinder.js';\n\n// Return the position of the last occurrence of an item in an array,\n// or -1 if the item is not included in the array.\nexport default createIndexFinder(-1, findLastIndex);\n","import isArrayLike from './_isArrayLike.js';\nimport findIndex from './findIndex.js';\nimport findKey from './findKey.js';\n\n// Return the first value which passes a truth test.\nexport default function find(obj, predicate, context) {\n var keyFinder = isArrayLike(obj) ? findIndex : findKey;\n var key = keyFinder(obj, predicate, context);\n if (key !== void 0 && key !== -1) return obj[key];\n}\n","import find from './find.js';\nimport matcher from './matcher.js';\n\n// Convenience version of a common use case of `_.find`: getting the first\n// object containing specific `key:value` pairs.\nexport default function findWhere(obj, attrs) {\n return find(obj, matcher(attrs));\n}\n","import optimizeCb from './_optimizeCb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// The cornerstone for collection functions, an `each`\n// implementation, aka `forEach`.\n// Handles raw objects in addition to array-likes. Treats all\n// sparse array-likes as if they were dense.\nexport default function each(obj, iteratee, context) {\n iteratee = optimizeCb(iteratee, context);\n var i, length;\n if (isArrayLike(obj)) {\n for (i = 0, length = obj.length; i < length; i++) {\n iteratee(obj[i], i, obj);\n }\n } else {\n var _keys = keys(obj);\n for (i = 0, length = _keys.length; i < length; i++) {\n iteratee(obj[_keys[i]], _keys[i], obj);\n }\n }\n return obj;\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Return the results of applying the iteratee to each element.\nexport default function map(obj, iteratee, context) {\n iteratee = cb(iteratee, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length,\n results = Array(length);\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n results[index] = iteratee(obj[currentKey], currentKey, obj);\n }\n return results;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\nimport optimizeCb from './_optimizeCb.js';\n\n// Internal helper to create a reducing function, iterating left or right.\nexport default function createReduce(dir) {\n // Wrap code that reassigns argument variables in a separate function than\n // the one that accesses `arguments.length` to avoid a perf hit. (#1991)\n var reducer = function(obj, iteratee, memo, initial) {\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length,\n index = dir > 0 ? 0 : length - 1;\n if (!initial) {\n memo = obj[_keys ? _keys[index] : index];\n index += dir;\n }\n for (; index >= 0 && index < length; index += dir) {\n var currentKey = _keys ? _keys[index] : index;\n memo = iteratee(memo, obj[currentKey], currentKey, obj);\n }\n return memo;\n };\n\n return function(obj, iteratee, memo, context) {\n var initial = arguments.length >= 3;\n return reducer(obj, optimizeCb(iteratee, context, 4), memo, initial);\n };\n}\n","import createReduce from './_createReduce.js';\n\n// **Reduce** builds up a single result from a list of values, aka `inject`,\n// or `foldl`.\nexport default createReduce(1);\n","import createReduce from './_createReduce.js';\n\n// The right-associative version of reduce, also known as `foldr`.\nexport default createReduce(-1);\n","import cb from './_cb.js';\nimport each from './each.js';\n\n// Return all the elements that pass a truth test.\nexport default function filter(obj, predicate, context) {\n var results = [];\n predicate = cb(predicate, context);\n each(obj, function(value, index, list) {\n if (predicate(value, index, list)) results.push(value);\n });\n return results;\n}\n","import filter from './filter.js';\nimport negate from './negate.js';\nimport cb from './_cb.js';\n\n// Return all the elements for which a truth test fails.\nexport default function reject(obj, predicate, context) {\n return filter(obj, negate(cb(predicate)), context);\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Determine whether all of the elements pass a truth test.\nexport default function every(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length;\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n if (!predicate(obj[currentKey], currentKey, obj)) return false;\n }\n return true;\n}\n","import cb from './_cb.js';\nimport isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Determine if at least one element in the object passes a truth test.\nexport default function some(obj, predicate, context) {\n predicate = cb(predicate, context);\n var _keys = !isArrayLike(obj) && keys(obj),\n length = (_keys || obj).length;\n for (var index = 0; index < length; index++) {\n var currentKey = _keys ? _keys[index] : index;\n if (predicate(obj[currentKey], currentKey, obj)) return true;\n }\n return false;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport indexOf from './indexOf.js';\n\n// Determine if the array or object contains a given item (using `===`).\nexport default function contains(obj, item, fromIndex, guard) {\n if (!isArrayLike(obj)) obj = values(obj);\n if (typeof fromIndex != 'number' || guard) fromIndex = 0;\n return indexOf(obj, item, fromIndex) >= 0;\n}\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport map from './map.js';\nimport deepGet from './_deepGet.js';\nimport toPath from './_toPath.js';\n\n// Invoke a method (with arguments) on every item in a collection.\nexport default restArguments(function(obj, path, args) {\n var contextPath, func;\n if (isFunction(path)) {\n func = path;\n } else {\n path = toPath(path);\n contextPath = path.slice(0, -1);\n path = path[path.length - 1];\n }\n return map(obj, function(context) {\n var method = func;\n if (!method) {\n if (contextPath && contextPath.length) {\n context = deepGet(context, contextPath);\n }\n if (context == null) return void 0;\n method = context[path];\n }\n return method == null ? method : method.apply(context, args);\n });\n});\n","import map from './map.js';\nimport property from './property.js';\n\n// Convenience version of a common use case of `_.map`: fetching a property.\nexport default function pluck(obj, key) {\n return map(obj, property(key));\n}\n","import filter from './filter.js';\nimport matcher from './matcher.js';\n\n// Convenience version of a common use case of `_.filter`: selecting only\n// objects containing specific `key:value` pairs.\nexport default function where(obj, attrs) {\n return filter(obj, matcher(attrs));\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport cb from './_cb.js';\nimport each from './each.js';\n\n// Return the maximum element (or element-based computation).\nexport default function max(obj, iteratee, context) {\n var result = -Infinity, lastComputed = -Infinity,\n value, computed;\n if (iteratee == null || (typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null)) {\n obj = isArrayLike(obj) ? obj : values(obj);\n for (var i = 0, length = obj.length; i < length; i++) {\n value = obj[i];\n if (value != null && value > result) {\n result = value;\n }\n }\n } else {\n iteratee = cb(iteratee, context);\n each(obj, function(v, index, list) {\n computed = iteratee(v, index, list);\n if (computed > lastComputed || (computed === -Infinity && result === -Infinity)) {\n result = v;\n lastComputed = computed;\n }\n });\n }\n return result;\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport cb from './_cb.js';\nimport each from './each.js';\n\n// Return the minimum element (or element-based computation).\nexport default function min(obj, iteratee, context) {\n var result = Infinity, lastComputed = Infinity,\n value, computed;\n if (iteratee == null || (typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null)) {\n obj = isArrayLike(obj) ? obj : values(obj);\n for (var i = 0, length = obj.length; i < length; i++) {\n value = obj[i];\n if (value != null && value < result) {\n result = value;\n }\n }\n } else {\n iteratee = cb(iteratee, context);\n each(obj, function(v, index, list) {\n computed = iteratee(v, index, list);\n if (computed < lastComputed || (computed === Infinity && result === Infinity)) {\n result = v;\n lastComputed = computed;\n }\n });\n }\n return result;\n}\n","import isArray from './isArray.js';\nimport { slice } from './_setup.js';\nimport isString from './isString.js';\nimport isArrayLike from './_isArrayLike.js';\nimport map from './map.js';\nimport identity from './identity.js';\nimport values from './values.js';\n\n// Safely create a real, live array from anything iterable.\nvar reStrSymbol = /[^\\ud800-\\udfff]|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff]/g;\nexport default function toArray(obj) {\n if (!obj) return [];\n if (isArray(obj)) return slice.call(obj);\n if (isString(obj)) {\n // Keep surrogate pair characters together.\n return obj.match(reStrSymbol);\n }\n if (isArrayLike(obj)) return map(obj, identity);\n return values(obj);\n}\n","import isArrayLike from './_isArrayLike.js';\nimport values from './values.js';\nimport getLength from './_getLength.js';\nimport random from './random.js';\nimport toArray from './toArray.js';\n\n// Sample **n** random values from a collection using the modern version of the\n// [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher–Yates_shuffle).\n// If **n** is not specified, returns a single random element.\n// The internal `guard` argument allows it to work with `_.map`.\nexport default function sample(obj, n, guard) {\n if (n == null || guard) {\n if (!isArrayLike(obj)) obj = values(obj);\n return obj[random(obj.length - 1)];\n }\n var sample = toArray(obj);\n var length = getLength(sample);\n n = Math.max(Math.min(n, length), 0);\n var last = length - 1;\n for (var index = 0; index < n; index++) {\n var rand = random(index, last);\n var temp = sample[index];\n sample[index] = sample[rand];\n sample[rand] = temp;\n }\n return sample.slice(0, n);\n}\n","import sample from './sample.js';\n\n// Shuffle a collection.\nexport default function shuffle(obj) {\n return sample(obj, Infinity);\n}\n","import cb from './_cb.js';\nimport pluck from './pluck.js';\nimport map from './map.js';\n\n// Sort the object's values by a criterion produced by an iteratee.\nexport default function sortBy(obj, iteratee, context) {\n var index = 0;\n iteratee = cb(iteratee, context);\n return pluck(map(obj, function(value, key, list) {\n return {\n value: value,\n index: index++,\n criteria: iteratee(value, key, list)\n };\n }).sort(function(left, right) {\n var a = left.criteria;\n var b = right.criteria;\n if (a !== b) {\n if (a > b || a === void 0) return 1;\n if (a < b || b === void 0) return -1;\n }\n return left.index - right.index;\n }), 'value');\n}\n","import cb from './_cb.js';\nimport each from './each.js';\n\n// An internal function used for aggregate \"group by\" operations.\nexport default function group(behavior, partition) {\n return function(obj, iteratee, context) {\n var result = partition ? [[], []] : {};\n iteratee = cb(iteratee, context);\n each(obj, function(value, index) {\n var key = iteratee(value, index, obj);\n behavior(result, value, key);\n });\n return result;\n };\n}\n","import group from './_group.js';\nimport has from './_has.js';\n\n// Groups the object's values by a criterion. Pass either a string attribute\n// to group by, or a function that returns the criterion.\nexport default group(function(result, value, key) {\n if (has(result, key)) result[key].push(value); else result[key] = [value];\n});\n","import group from './_group.js';\n\n// Indexes the object's values by a criterion, similar to `_.groupBy`, but for\n// when you know that your index values will be unique.\nexport default group(function(result, value, key) {\n result[key] = value;\n});\n","import group from './_group.js';\nimport has from './_has.js';\n\n// Counts instances of an object that group by a certain criterion. Pass\n// either a string attribute to count by, or a function that returns the\n// criterion.\nexport default group(function(result, value, key) {\n if (has(result, key)) result[key]++; else result[key] = 1;\n});\n","import group from './_group.js';\n\n// Split a collection into two arrays: one whose elements all pass the given\n// truth test, and one whose elements all do not pass the truth test.\nexport default group(function(result, value, pass) {\n result[pass ? 0 : 1].push(value);\n}, true);\n","import isArrayLike from './_isArrayLike.js';\nimport keys from './keys.js';\n\n// Return the number of elements in a collection.\nexport default function size(obj) {\n if (obj == null) return 0;\n return isArrayLike(obj) ? obj.length : keys(obj).length;\n}\n","// Internal `_.pick` helper function to determine whether `key` is an enumerable\n// property name of `obj`.\nexport default function keyInObj(value, key, obj) {\n return key in obj;\n}\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport optimizeCb from './_optimizeCb.js';\nimport allKeys from './allKeys.js';\nimport keyInObj from './_keyInObj.js';\nimport flatten from './_flatten.js';\n\n// Return a copy of the object only containing the allowed properties.\nexport default restArguments(function(obj, keys) {\n var result = {}, iteratee = keys[0];\n if (obj == null) return result;\n if (isFunction(iteratee)) {\n if (keys.length > 1) iteratee = optimizeCb(iteratee, keys[1]);\n keys = allKeys(obj);\n } else {\n iteratee = keyInObj;\n keys = flatten(keys, false, false);\n obj = Object(obj);\n }\n for (var i = 0, length = keys.length; i < length; i++) {\n var key = keys[i];\n var value = obj[key];\n if (iteratee(value, key, obj)) result[key] = value;\n }\n return result;\n});\n","import restArguments from './restArguments.js';\nimport isFunction from './isFunction.js';\nimport negate from './negate.js';\nimport map from './map.js';\nimport flatten from './_flatten.js';\nimport contains from './contains.js';\nimport pick from './pick.js';\n\n// Return a copy of the object without the disallowed properties.\nexport default restArguments(function(obj, keys) {\n var iteratee = keys[0], context;\n if (isFunction(iteratee)) {\n iteratee = negate(iteratee);\n if (keys.length > 1) context = keys[1];\n } else {\n keys = map(flatten(keys, false, false), String);\n iteratee = function(value, key) {\n return !contains(keys, key);\n };\n }\n return pick(obj, iteratee, context);\n});\n","import { slice } from './_setup.js';\n\n// Returns everything but the last entry of the array. Especially useful on\n// the arguments object. Passing **n** will return all the values in\n// the array, excluding the last N.\nexport default function initial(array, n, guard) {\n return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n)));\n}\n","import initial from './initial.js';\n\n// Get the first element of an array. Passing **n** will return the first N\n// values in the array. The **guard** check allows it to work with `_.map`.\nexport default function first(array, n, guard) {\n if (array == null || array.length < 1) return n == null || guard ? void 0 : [];\n if (n == null || guard) return array[0];\n return initial(array, array.length - n);\n}\n","import { slice } from './_setup.js';\n\n// Returns everything but the first entry of the `array`. Especially useful on\n// the `arguments` object. Passing an **n** will return the rest N values in the\n// `array`.\nexport default function rest(array, n, guard) {\n return slice.call(array, n == null || guard ? 1 : n);\n}\n","import rest from './rest.js';\n\n// Get the last element of an array. Passing **n** will return the last N\n// values in the array.\nexport default function last(array, n, guard) {\n if (array == null || array.length < 1) return n == null || guard ? void 0 : [];\n if (n == null || guard) return array[array.length - 1];\n return rest(array, Math.max(0, array.length - n));\n}\n","import filter from './filter.js';\n\n// Trim out all falsy values from an array.\nexport default function compact(array) {\n return filter(array, Boolean);\n}\n","import _flatten from './_flatten.js';\n\n// Flatten out an array, either recursively (by default), or up to `depth`.\n// Passing `true` or `false` as `depth` means `1` or `Infinity`, respectively.\nexport default function flatten(array, depth) {\n return _flatten(array, depth, false);\n}\n","import restArguments from './restArguments.js';\nimport flatten from './_flatten.js';\nimport filter from './filter.js';\nimport contains from './contains.js';\n\n// Take the difference between one array and a number of other arrays.\n// Only the elements present in just the first array will remain.\nexport default restArguments(function(array, rest) {\n rest = flatten(rest, true, true);\n return filter(array, function(value){\n return !contains(rest, value);\n });\n});\n","import restArguments from './restArguments.js';\nimport difference from './difference.js';\n\n// Return a version of the array that does not contain the specified value(s).\nexport default restArguments(function(array, otherArrays) {\n return difference(array, otherArrays);\n});\n","import isBoolean from './isBoolean.js';\nimport cb from './_cb.js';\nimport getLength from './_getLength.js';\nimport contains from './contains.js';\n\n// Produce a duplicate-free version of the array. If the array has already\n// been sorted, you have the option of using a faster algorithm.\n// The faster algorithm will not work with an iteratee if the iteratee\n// is not a one-to-one function, so providing an iteratee will disable\n// the faster algorithm.\nexport default function uniq(array, isSorted, iteratee, context) {\n if (!isBoolean(isSorted)) {\n context = iteratee;\n iteratee = isSorted;\n isSorted = false;\n }\n if (iteratee != null) iteratee = cb(iteratee, context);\n var result = [];\n var seen = [];\n for (var i = 0, length = getLength(array); i < length; i++) {\n var value = array[i],\n computed = iteratee ? iteratee(value, i, array) : value;\n if (isSorted && !iteratee) {\n if (!i || seen !== computed) result.push(value);\n seen = computed;\n } else if (iteratee) {\n if (!contains(seen, computed)) {\n seen.push(computed);\n result.push(value);\n }\n } else if (!contains(result, value)) {\n result.push(value);\n }\n }\n return result;\n}\n","import restArguments from './restArguments.js';\nimport uniq from './uniq.js';\nimport flatten from './_flatten.js';\n\n// Produce an array that contains the union: each distinct element from all of\n// the passed-in arrays.\nexport default restArguments(function(arrays) {\n return uniq(flatten(arrays, true, true));\n});\n","import getLength from './_getLength.js';\nimport contains from './contains.js';\n\n// Produce an array that contains every item shared between all the\n// passed-in arrays.\nexport default function intersection(array) {\n var result = [];\n var argsLength = arguments.length;\n for (var i = 0, length = getLength(array); i < length; i++) {\n var item = array[i];\n if (contains(result, item)) continue;\n var j;\n for (j = 1; j < argsLength; j++) {\n if (!contains(arguments[j], item)) break;\n }\n if (j === argsLength) result.push(item);\n }\n return result;\n}\n","import max from './max.js';\nimport getLength from './_getLength.js';\nimport pluck from './pluck.js';\n\n// Complement of zip. Unzip accepts an array of arrays and groups\n// each array's elements on shared indices.\nexport default function unzip(array) {\n var length = (array && max(array, getLength).length) || 0;\n var result = Array(length);\n\n for (var index = 0; index < length; index++) {\n result[index] = pluck(array, index);\n }\n return result;\n}\n","import restArguments from './restArguments.js';\nimport unzip from './unzip.js';\n\n// Zip together multiple lists into a single array -- elements that share\n// an index go together.\nexport default restArguments(unzip);\n","import getLength from './_getLength.js';\n\n// Converts lists into objects. Pass either a single array of `[key, value]`\n// pairs, or two parallel arrays of the same length -- one of keys, and one of\n// the corresponding values. Passing by pairs is the reverse of `_.pairs`.\nexport default function object(list, values) {\n var result = {};\n for (var i = 0, length = getLength(list); i < length; i++) {\n if (values) {\n result[list[i]] = values[i];\n } else {\n result[list[i][0]] = list[i][1];\n }\n }\n return result;\n}\n","// Generate an integer Array containing an arithmetic progression. A port of\n// the native Python `range()` function. See\n// [the Python documentation](https://docs.python.org/library/functions.html#range).\nexport default function range(start, stop, step) {\n if (stop == null) {\n stop = start || 0;\n start = 0;\n }\n if (!step) {\n step = stop < start ? -1 : 1;\n }\n\n var length = Math.max(Math.ceil((stop - start) / step), 0);\n var range = Array(length);\n\n for (var idx = 0; idx < length; idx++, start += step) {\n range[idx] = start;\n }\n\n return range;\n}\n","import { slice } from './_setup.js';\n\n// Chunk a single array into multiple arrays, each containing `count` or fewer\n// items.\nexport default function chunk(array, count) {\n if (count == null || count < 1) return [];\n var result = [];\n var i = 0, length = array.length;\n while (i < length) {\n result.push(slice.call(array, i, i += count));\n }\n return result;\n}\n","import _ from './underscore.js';\n\n// Helper function to continue chaining intermediate results.\nexport default function chainResult(instance, obj) {\n return instance._chain ? _(obj).chain() : obj;\n}\n","import _ from './underscore.js';\nimport each from './each.js';\nimport functions from './functions.js';\nimport { push } from './_setup.js';\nimport chainResult from './_chainResult.js';\n\n// Add your own custom functions to the Underscore object.\nexport default function mixin(obj) {\n each(functions(obj), function(name) {\n var func = _[name] = obj[name];\n _.prototype[name] = function() {\n var args = [this._wrapped];\n push.apply(args, arguments);\n return chainResult(this, func.apply(_, args));\n };\n });\n return _;\n}\n","import _ from './underscore.js';\nimport each from './each.js';\nimport { ArrayProto } from './_setup.js';\nimport chainResult from './_chainResult.js';\n\n// Add all mutator `Array` functions to the wrapper.\neach(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {\n var method = ArrayProto[name];\n _.prototype[name] = function() {\n var obj = this._wrapped;\n if (obj != null) {\n method.apply(obj, arguments);\n if ((name === 'shift' || name === 'splice') && obj.length === 0) {\n delete obj[0];\n }\n }\n return chainResult(this, obj);\n };\n});\n\n// Add all accessor `Array` functions to the wrapper.\neach(['concat', 'join', 'slice'], function(name) {\n var method = ArrayProto[name];\n _.prototype[name] = function() {\n var obj = this._wrapped;\n if (obj != null) obj = method.apply(obj, arguments);\n return chainResult(this, obj);\n };\n});\n\nexport default _;\n","// Default Export\n// ==============\n// In this module, we mix our bundled exports into the `_` object and export\n// the result. This is analogous to setting `module.exports = _` in CommonJS.\n// Hence, this module is also the entry point of our UMD bundle and the package\n// entry point for CommonJS and AMD users. In other words, this is (the source\n// of) the module you are interfacing with when you do any of the following:\n//\n// ```js\n// // CommonJS\n// var _ = require('underscore');\n//\n// // AMD\n// define(['underscore'], function(_) {...});\n//\n// // UMD in the browser\n// // _ is available as a global variable\n// ```\nimport * as allExports from './index.js';\nimport { mixin } from './index.js';\n\n// Add all of the Underscore functions to the wrapper object.\nvar _ = mixin(allExports);\n// Legacy Node.js API.\n_._ = _;\n// Export the Underscore API.\nexport default _;\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport _ from 'underscore'\nimport OC from './index.js'\n\n/**\n * Utility class for the history API,\n * includes fallback to using the URL hash when\n * the browser doesn't support the history API.\n *\n * @namespace OC.Util.History\n */\nexport default {\n\n\t_handlers: [],\n\n\t/**\n\t * Push the current URL parameters to the history stack\n\t * and change the visible URL.\n\t * Note: this includes a workaround for IE8/IE9 that uses\n\t * the hash part instead of the search part.\n\t *\n\t * @param {object | string} params to append to the URL, can be either a string\n\t * or a map\n\t * @param {string} [url] URL to be used, otherwise the current URL will be used,\n\t * using the params as query string\n\t * @param {boolean} [replace] whether to replace instead of pushing\n\t */\n\t_pushState(params, url, replace) {\n\t\tlet strParams\n\t\tif (typeof (params) === 'string') {\n\t\t\tstrParams = params\n\t\t} else {\n\t\t\tstrParams = OC.buildQueryString(params)\n\t\t}\n\n\t\tif (window.history.pushState) {\n\t\t\turl = url || location.pathname + '?' + strParams\n\t\t\t// Workaround for bug with SVG and window.history.pushState on Firefox < 51\n\t\t\t// https://bugzilla.mozilla.org/show_bug.cgi?id=652991\n\t\t\tconst isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1\n\t\t\tif (isFirefox && parseInt(navigator.userAgent.split('/').pop()) < 51) {\n\t\t\t\tconst patterns = document.querySelectorAll('[fill^=\"url(#\"], [stroke^=\"url(#\"], [filter^=\"url(#invert\"]')\n\t\t\t\tfor (let i = 0, ii = patterns.length, pattern; i < ii; i++) {\n\t\t\t\t\tpattern = patterns[i]\n\t\t\t\t\t// eslint-disable-next-line no-self-assign\n\t\t\t\t\tpattern.style.fill = pattern.style.fill\n\t\t\t\t\t// eslint-disable-next-line no-self-assign\n\t\t\t\t\tpattern.style.stroke = pattern.style.stroke\n\t\t\t\t\tpattern.removeAttribute('filter')\n\t\t\t\t\tpattern.setAttribute('filter', 'url(#invert)')\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (replace) {\n\t\t\t\twindow.history.replaceState(params, '', url)\n\t\t\t} else {\n\t\t\t\twindow.history.pushState(params, '', url)\n\t\t\t}\n\t\t} else {\n\t\t\t// use URL hash for IE8\n\t\t\twindow.location.hash = '?' + strParams\n\t\t\t// inhibit next onhashchange that just added itself\n\t\t\t// to the event queue\n\t\t\tthis._cancelPop = true\n\t\t}\n\t},\n\n\t/**\n\t * Push the current URL parameters to the history stack\n\t * and change the visible URL.\n\t * Note: this includes a workaround for IE8/IE9 that uses\n\t * the hash part instead of the search part.\n\t *\n\t * @param {object | string} params to append to the URL, can be either a string or a map\n\t * @param {string} [url] URL to be used, otherwise the current URL will be used, using the params as query string\n\t */\n\tpushState(params, url) {\n\t\tthis._pushState(params, url, false)\n\t},\n\n\t/**\n\t * Push the current URL parameters to the history stack\n\t * and change the visible URL.\n\t * Note: this includes a workaround for IE8/IE9 that uses\n\t * the hash part instead of the search part.\n\t *\n\t * @param {object | string} params to append to the URL, can be either a string\n\t * or a map\n\t * @param {string} [url] URL to be used, otherwise the current URL will be used,\n\t * using the params as query string\n\t */\n\treplaceState(params, url) {\n\t\tthis._pushState(params, url, true)\n\t},\n\n\t/**\n\t * Add a popstate handler\n\t *\n\t * @param {Function} handler handler\n\t */\n\taddOnPopStateHandler(handler) {\n\t\tthis._handlers.push(handler)\n\t},\n\n\t/**\n\t * Parse a query string from the hash part of the URL.\n\t * (workaround for IE8 / IE9)\n\t *\n\t * @return {string}\n\t */\n\t_parseHashQuery() {\n\t\tconst hash = window.location.hash\n\t\tconst pos = hash.indexOf('?')\n\t\tif (pos >= 0) {\n\t\t\treturn hash.substr(pos + 1)\n\t\t}\n\t\tif (hash.length) {\n\t\t\t// remove hash sign\n\t\t\treturn hash.substr(1)\n\t\t}\n\t\treturn ''\n\t},\n\n\t_decodeQuery(query) {\n\t\treturn query.replace(/\\+/g, ' ')\n\t},\n\n\t/**\n\t * Parse the query/search part of the URL.\n\t * Also try and parse it from the URL hash (for IE8)\n\t *\n\t * @return {object} map of parameters\n\t */\n\tparseUrlQuery() {\n\t\tconst query = this._parseHashQuery()\n\t\tlet params\n\t\t// try and parse from URL hash first\n\t\tif (query) {\n\t\t\tparams = OC.parseQueryString(this._decodeQuery(query))\n\t\t}\n\t\t// else read from query attributes\n\t\tparams = _.extend(params || {}, OC.parseQueryString(this._decodeQuery(location.search)))\n\t\treturn params || {}\n\t},\n\n\t_onPopState(e) {\n\t\tif (this._cancelPop) {\n\t\t\tthis._cancelPop = false\n\t\t\treturn\n\t\t}\n\t\tlet params\n\t\tif (!this._handlers.length) {\n\t\t\treturn\n\t\t}\n\t\tparams = (e && e.state)\n\t\tif (_.isString(params)) {\n\t\t\tparams = OC.parseQueryString(params)\n\t\t} else if (!params) {\n\t\t\tparams = this.parseUrlQuery() || {}\n\t\t}\n\t\tfor (let i = 0; i < this._handlers.length; i++) {\n\t\t\tthis._handlers[i](params)\n\t\t}\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { formatFileSize as humanFileSize } from '@nextcloud/files'\nimport moment from 'moment'\nimport logger from '../logger.js'\nimport OC from './index.js'\nimport History from './util-history.js'\n\n/**\n * @param {any} t -\n */\nfunction chunkify(t) {\n\t// Adapted from http://my.opera.com/GreyWyvern/blog/show.dml/1671288\n\tconst tz = []\n\tlet x = 0\n\tlet y = -1\n\tlet n = 0\n\tlet c\n\n\twhile (x < t.length) {\n\t\tc = t.charAt(x)\n\t\t// only include the dot in strings\n\t\tconst m = ((!n && c === '.') || (c >= '0' && c <= '9'))\n\t\tif (m !== n) {\n\t\t\t// next chunk\n\t\t\ty++\n\t\t\ttz[y] = ''\n\t\t\tn = m\n\t\t}\n\t\ttz[y] += c\n\t\tx++\n\t}\n\treturn tz\n}\n\n/**\n * Utility functions\n *\n * @namespace OC.Util\n */\nexport default {\n\n\tHistory,\n\n\t/**\n\t * @deprecated use https://nextcloud.github.io/nextcloud-files/functions/formatFileSize.html\n\t */\n\thumanFileSize,\n\n\t/**\n\t * Returns a file size in bytes from a humanly readable string\n\t * Makes 2kB to 2048.\n\t * Inspired by computerFileSize in helper.php\n\t *\n\t * @param {string} string file size in human-readable format\n\t * @return {number} or null if string could not be parsed\n\t */\n\tcomputerFileSize(string) {\n\t\tif (typeof string !== 'string') {\n\t\t\treturn null\n\t\t}\n\n\t\tconst s = string.toLowerCase().trim()\n\t\tconst bytesArray = {\n\t\t\tb: 1,\n\t\t\tk: 1024,\n\t\t\tkb: 1024,\n\t\t\tmb: 1024 * 1024,\n\t\t\tm: 1024 * 1024,\n\t\t\tgb: 1024 * 1024 * 1024,\n\t\t\tg: 1024 * 1024 * 1024,\n\t\t\ttb: 1024 * 1024 * 1024 * 1024,\n\t\t\tt: 1024 * 1024 * 1024 * 1024,\n\t\t\tpb: 1024 * 1024 * 1024 * 1024 * 1024,\n\t\t\tp: 1024 * 1024 * 1024 * 1024 * 1024,\n\t\t}\n\n\t\tlet bytes\n\t\tconst matches = s.match(/^[\\s+]?([0-9]*)(\\.([0-9]+))?( +)?([kmgtp]?b?)$/i)\n\t\tif (matches !== null) {\n\t\t\tbytes = parseFloat(s)\n\t\t\tif (!isFinite(bytes)) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t} else {\n\t\t\treturn null\n\t\t}\n\t\tif (matches[5]) {\n\t\t\tbytes = bytes * bytesArray[matches[5]]\n\t\t}\n\n\t\tbytes = Math.round(bytes)\n\t\treturn bytes\n\t},\n\n\t/**\n\t * @param {string|number} timestamp timestamp\n\t * @param {string} format date format, see momentjs docs\n\t * @return {string} timestamp formatted as requested\n\t */\n\tformatDate(timestamp, format) {\n\t\tif (window.TESTING === undefined && OC.debug) {\n\t\t\tlogger.warn('OC.Util.formatDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment')\n\t\t}\n\t\tformat = format || 'LLL'\n\t\treturn moment(timestamp).format(format)\n\t},\n\n\t/**\n\t * @param {string|number} timestamp timestamp\n\t * @return {string} human readable difference from now\n\t */\n\trelativeModifiedDate(timestamp) {\n\t\tif (window.TESTING === undefined && OC.debug) {\n\t\t\tlogger.warn('OC.Util.relativeModifiedDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment')\n\t\t}\n\t\tconst diff = moment().diff(moment(timestamp))\n\t\tif (diff >= 0 && diff < 45000) {\n\t\t\treturn t('core', 'seconds ago')\n\t\t}\n\t\treturn moment(timestamp).fromNow()\n\t},\n\n\t/**\n\t * Returns the width of a generic browser scrollbar\n\t *\n\t * @return {number} width of scrollbar\n\t */\n\tgetScrollBarWidth() {\n\t\tif (this._scrollBarWidth) {\n\t\t\treturn this._scrollBarWidth\n\t\t}\n\n\t\tconst inner = document.createElement('p')\n\t\tinner.style.width = '100%'\n\t\tinner.style.height = '200px'\n\n\t\tconst outer = document.createElement('div')\n\t\touter.style.position = 'absolute'\n\t\touter.style.top = '0px'\n\t\touter.style.left = '0px'\n\t\touter.style.visibility = 'hidden'\n\t\touter.style.width = '200px'\n\t\touter.style.height = '150px'\n\t\touter.style.overflow = 'hidden'\n\t\touter.appendChild(inner)\n\n\t\tdocument.body.appendChild(outer)\n\t\tconst w1 = inner.offsetWidth\n\t\touter.style.overflow = 'scroll'\n\t\tlet w2 = inner.offsetWidth\n\t\tif (w1 === w2) {\n\t\t\tw2 = outer.clientWidth\n\t\t}\n\n\t\tdocument.body.removeChild(outer)\n\n\t\tthis._scrollBarWidth = (w1 - w2)\n\n\t\treturn this._scrollBarWidth\n\t},\n\n\t/**\n\t * Remove the time component from a given date\n\t *\n\t * @param {Date} date date\n\t * @return {Date} date with stripped time\n\t */\n\tstripTime(date) {\n\t\t// FIXME: likely to break when crossing DST\n\t\t// would be better to use a library like momentJS\n\t\treturn new Date(date.getFullYear(), date.getMonth(), date.getDate())\n\t},\n\n\t/**\n\t * Compare two strings to provide a natural sort\n\t *\n\t * @param {string} a first string to compare\n\t * @param {string} b second string to compare\n\t * @return {number} -1 if b comes before a, 1 if a comes before b\n\t * or 0 if the strings are identical\n\t */\n\tnaturalSortCompare(a, b) {\n\t\tlet x\n\t\tconst aa = chunkify(a)\n\t\tconst bb = chunkify(b)\n\n\t\tfor (x = 0; aa[x] && bb[x]; x++) {\n\t\t\tif (aa[x] !== bb[x]) {\n\t\t\t\tconst aNum = Number(aa[x])\n\t\t\t\tconst bNum = Number(bb[x])\n\t\t\t\t// note: == is correct here to include null == undefined\n\t\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\t\tif (aNum == aa[x] && bNum == bb[x]) {\n\t\t\t\t\treturn aNum - bNum\n\t\t\t\t} else {\n\t\t\t\t\t// Note: This locale setting isn't supported by all browsers but for the ones\n\t\t\t\t\t// that do there will be more consistency between client-server sorting\n\t\t\t\t\treturn aa[x].localeCompare(bb[x], OC.getLanguage())\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn aa.length - bb.length\n\t},\n\n\t/**\n\t * Calls the callback in a given interval until it returns true\n\t *\n\t * @param {Function} callback function to call on success\n\t * @param {number} interval in milliseconds\n\t */\n\twaitFor(callback, interval) {\n\t\tconst internalCallback = function() {\n\t\t\tif (callback() !== true) {\n\t\t\t\tsetTimeout(internalCallback, interval)\n\t\t\t}\n\t\t}\n\n\t\tinternalCallback()\n\t},\n\n\t/**\n\t * Checks if a cookie with the given name is present and is set to the provided value.\n\t *\n\t * @param {string} name name of the cookie\n\t * @param {string} value value of the cookie\n\t * @return {boolean} true if the cookie with the given name has the given value\n\t */\n\tisCookieSetToValue(name, value) {\n\t\tconst cookies = document.cookie.split(';')\n\t\tfor (let i = 0; i < cookies.length; i++) {\n\t\t\tconst cookie = cookies[i].split('=')\n\t\t\tif (cookie[0].trim() === name && cookie[1].trim() === value) {\n\t\t\t\treturn true\n\t\t\t}\n\t\t}\n\t\treturn false\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nlet webroot = window._oc_webroot\n\nif (typeof webroot === 'undefined') {\n\twebroot = location.pathname\n\tconst pos = webroot.indexOf('/index.php/')\n\tif (pos !== -1) {\n\t\twebroot = webroot.substr(0, pos)\n\t} else {\n\t\twebroot = webroot.substr(0, webroot.lastIndexOf('/'))\n\t}\n}\n\nexport default webroot\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { subscribe } from '@nextcloud/event-bus'\nimport {\n\tgetCanonicalLocale,\n\tgetLanguage,\n\tgetLocale,\n} from '@nextcloud/l10n'\nimport {\n\tbasename,\n\tdirname,\n\tencodePath,\n\tisSamePath,\n\tjoin,\n} from '@nextcloud/paths'\nimport {\n\tgenerateFilePath,\n\tgenerateOcsUrl,\n\tgenerateRemoteUrl,\n\tgenerateUrl,\n\tgetRootUrl,\n\timagePath,\n\tlinkTo,\n} from '@nextcloud/router'\nimport logger from '../logger.js'\nimport { isUserAdmin } from './admin.js'\nimport { appConfig } from './appconfig.js'\nimport appswebroots from './appswebroots.js'\nimport { getCapabilities } from './capabilities.js'\nimport Config from './config.js'\nimport {\n\tcoreApps,\n\tmenuSpeed,\n\tPERMISSION_ALL,\n\tPERMISSION_CREATE,\n\tPERMISSION_DELETE,\n\tPERMISSION_NONE,\n\tPERMISSION_READ,\n\tPERMISSION_SHARE,\n\tPERMISSION_UPDATE,\n\tTAG_FAVORITE,\n} from './constants.js'\nimport { currentUser, getCurrentUser } from './currentuser.js'\nimport { debug } from './debug.js'\nimport Dialogs from './dialogs.js'\nimport EventSource from './eventsource.js'\nimport L10N from './l10n.js'\nimport * as MimeType from './mimeType.js'\nimport msg from './msg.js'\nimport PasswordConfirmation from './password-confirmation.js'\nimport Plugins from './plugins.js'\nimport {\n\tbuild as buildQueryString,\n\tparse as parseQueryString,\n} from './query-string.ts'\nimport { getRequestToken } from './requesttoken.ts'\nimport {\n\tlinkToRemoteBase,\n} from './routing.js'\nimport { theme } from './theme.js'\nimport Util from './util.js'\nimport webroot from './webroot.js'\n\n/** @namespace OC */\nexport default {\n\t/*\n\t * Constants\n\t */\n\tcoreApps,\n\tmenuSpeed,\n\tPERMISSION_ALL,\n\tPERMISSION_CREATE,\n\tPERMISSION_DELETE,\n\tPERMISSION_NONE,\n\tPERMISSION_READ,\n\tPERMISSION_SHARE,\n\tPERMISSION_UPDATE,\n\tTAG_FAVORITE,\n\n\t/*\n\t * Deprecated helpers to be removed\n\t */\n\tappConfig,\n\tappswebroots,\n\tconfig: Config,\n\t/**\n\t * Currently logged in user or null if none\n\t *\n\t * @type {string}\n\t * @deprecated use `getCurrentUser` from https://www.npmjs.com/package/@nextcloud/auth\n\t */\n\tcurrentUser,\n\tdialogs: Dialogs,\n\tEventSource,\n\tMimeType,\n\t/**\n\t * Returns the currently logged in user or null if there is no logged in\n\t * user (public page mode)\n\t *\n\t * @since 9.0.0\n\t * @deprecated 19.0.0 use `getCurrentUser` from https://www.npmjs.com/package/@nextcloud/auth\n\t */\n\tgetCurrentUser,\n\tisUserAdmin,\n\tL10N,\n\n\t/**\n\t * This is already handled by `interceptRequests` in `core/src/init.js`.\n\t *\n\t * @deprecated 33.0.0 - unused by Nextcloud and only a stub remains. Just remove usage.\n\t */\n\tregisterXHRForErrorProcessing: () => {},\n\n\t/**\n\t * Capabilities\n\t *\n\t * @type {Array}\n\t * @deprecated 20.0.0 use @nextcloud/capabilities instead\n\t */\n\tgetCapabilities,\n\n\t/*\n\t * Path helpers\n\t */\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tbasename,\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tencodePath,\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tdirname,\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tisSamePath,\n\t/**\n\t * @deprecated 18.0.0 use https://www.npmjs.com/package/@nextcloud/paths\n\t */\n\tjoinPaths: join,\n\n\t/**\n\t * @deprecated 20.0.0 use `getCanonicalLocale` from https://www.npmjs.com/package/@nextcloud/l10n\n\t */\n\tgetCanonicalLocale,\n\t/**\n\t * @deprecated 26.0.0 use `getLocale` from https://www.npmjs.com/package/@nextcloud/l10n\n\t */\n\tgetLocale,\n\t/**\n\t * @deprecated 26.0.0 use `getLanguage` from https://www.npmjs.com/package/@nextcloud/l10n\n\t */\n\tgetLanguage,\n\n\t// Query string helpers\n\tbuildQueryString,\n\tparseQueryString,\n\n\tmsg,\n\t/**\n\t * @deprecated 28.0.0 use methods from '@nextcloud/password-confirmation'\n\t */\n\tPasswordConfirmation,\n\tPlugins,\n\ttheme,\n\tUtil,\n\tdebug,\n\t/**\n\t * @deprecated 19.0.0 use `generateFilePath` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tfilePath: generateFilePath,\n\t/**\n\t * @deprecated 19.0.0 use `WgenerateUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tgenerateUrl,\n\t/**\n\t * @deprecated 19.0.0 use `getRootUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tgetRootPath: getRootUrl,\n\t/**\n\t * @deprecated 19.0.0 use `imagePath` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\timagePath,\n\trequestToken: getRequestToken(),\n\t/**\n\t * @deprecated 19.0.0 use `linkTo` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tlinkTo,\n\t/**\n\t * @param {string} service service name\n\t * @param {number} version OCS API version\n\t * @return {string} OCS API base path\n\t * @deprecated 19.0.0 use `generateOcsUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tlinkToOCS: (service, version) => {\n\t\treturn generateOcsUrl(service, {}, {\n\t\t\tocsVersion: version || 1,\n\t\t}) + '/'\n\t},\n\t/**\n\t * @deprecated 19.0.0 use `generateRemoteUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t */\n\tlinkToRemote: generateRemoteUrl,\n\tlinkToRemoteBase,\n\t/**\n\t * Relative path to Nextcloud root.\n\t * For example: \"/nextcloud\"\n\t *\n\t * @type {string}\n\t *\n\t * @deprecated 19.0.0 use `getRootUrl` from https://www.npmjs.com/package/@nextcloud/router\n\t * @see OC#getRootPath\n\t */\n\twebroot,\n}\n\n// Keep the request token prop in sync\nsubscribe('csrf-token-update', (e) => {\n\tOC.requestToken = e.token\n\n\t// Logging might help debug (Sentry) issues\n\tlogger.info('OC.requestToken changed', { token: e.token })\n})\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport const coreApps = ['', 'admin', 'log', 'core/search', 'core', '3rdparty']\nexport const menuSpeed = 50\nexport const PERMISSION_NONE = 0\nexport const PERMISSION_CREATE = 4\nexport const PERMISSION_READ = 1\nexport const PERMISSION_UPDATE = 2\nexport const PERMISSION_DELETE = 8\nexport const PERMISSION_SHARE = 16\nexport const PERMISSION_ALL = 31\nexport const TAG_FAVORITE = '_$!!$_'\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCapabilities as realGetCapabilities } from '@nextcloud/capabilities'\nimport logger from '../logger.js'\n\n/**\n * Returns the capabilities\n *\n * @return {Array} capabilities\n *\n * @since 14.0.0\n */\nexport function getCapabilities() {\n\tif (OC.debug) {\n\t\tlogger.warn('OC.getCapabilities is deprecated and will be removed in Nextcloud 21. See @nextcloud/capabilities')\n\t}\n\treturn realGetCapabilities()\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * Parses a URL query string into a JS map\n *\n * @param queryString - Query string in the format param1=1234¶m2=abcde¶m3=xyz\n * @return Object containing key/values matching the URL parameters\n * @deprecated 33.0.0 - Use `URLSearchParams` instead\n */\nexport function parse(queryString) {\n const params = new URLSearchParams(queryString);\n return Object.fromEntries(params.entries());\n}\n/**\n * Builds a URL query from a JS map.\n *\n * @param params - Object containing key/values matching the URL parameters\n * @return String containing a URL query (without question) mark\n * @deprecated 33.0.0 - Use `URLSearchParams` instead\n */\nexport function build(params) {\n if (!params) {\n return '';\n }\n const search = new URLSearchParams(params);\n return search.toString();\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport {\n\tgetRootUrl as realGetRootUrl,\n} from '@nextcloud/router'\n\n/**\n * Creates a relative url for remote use\n *\n * @param {string} service id\n * @return {string} the url\n */\nexport function linkToRemoteBase(service) {\n\treturn realGetRootUrl() + '/remote.php/' + service\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport OC from '../OC/index.js'\nimport L10n from '../OC/l10n.js'\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tOC,\n\t\t}\n\t},\n\tmethods: {\n\t\tt: L10n.translate.bind(L10n),\n\t\tn: L10n.translatePlural.bind(L10n),\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport Vue from 'vue'\nimport LoginView from './views/Login.vue'\nimport Nextcloud from './mixins/Nextcloud.js'\n// eslint-disable-next-line no-unused-vars\nimport OC from './OC/index.js' // TODO: Not needed but L10n breaks if removed\n\nVue.mixin(Nextcloud)\n\nconst View = Vue.extend(LoginView)\nnew View().$mount('#login')\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, `.button-vue[data-v-bbf83d00]{margin-top:.5rem}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/LoginButton.vue\"],\"names\":[],\"mappings\":\"AACA,6BACC,gBAAA\",\"sourcesContent\":[\"\\n.button-vue {\\n\\tmargin-top: .5rem;\\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, `.login-form[data-v-fac76c6a]{text-align:start;font-size:1rem;margin:0}.login-form__fieldset[data-v-fac76c6a]{width:100%;display:flex;flex-direction:column;gap:.5rem}.login-form__headline[data-v-fac76c6a]{text-align:center;overflow-wrap:anywhere}.login-form[data-v-fac76c6a] input:invalid:not(:user-invalid){border-color:var(--color-border-maxcontrast) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/LoginForm.vue\"],\"names\":[],\"mappings\":\"AACA,6BACC,gBAAA,CACA,cAAA,CACA,QAAA,CAEA,uCACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,SAAA,CAGD,uCACC,iBAAA,CACA,sBAAA,CAID,8DACC,uDAAA\",\"sourcesContent\":[\"\\n.login-form {\\n\\ttext-align: start;\\n\\tfont-size: 1rem;\\n\\tmargin: 0;\\n\\n\\t&__fieldset {\\n\\t\\twidth: 100%;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: .5rem;\\n\\t}\\n\\n\\t&__headline {\\n\\t\\ttext-align: center;\\n\\t\\toverflow-wrap: anywhere;\\n\\t}\\n\\n\\t// Only show the error state if the user interacted with the login box\\n\\t:deep(input:invalid:not(:user-invalid)) {\\n\\t\\tborder-color: var(--color-border-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, `.password-less-login-form[data-v-25758ef3]{display:flex;flex-direction:column;gap:.5rem;margin:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/PasswordLessLoginForm.vue\"],\"names\":[],\"mappings\":\"AACA,2CACC,YAAA,CACA,qBAAA,CACA,SAAA,CACA,QAAA\",\"sourcesContent\":[\"\\n.password-less-login-form {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 0.5rem;\\n\\tmargin: 0;\\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, `.reset-password-form[data-v-759a0fdd]{display:flex;flex-direction:column;gap:.5rem;width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/ResetPassword.vue\"],\"names\":[],\"mappings\":\"AACA,sCACC,YAAA,CACA,qBAAA,CACA,SAAA,CACA,UAAA\",\"sourcesContent\":[\"\\n.reset-password-form {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: .5rem;\\n\\twidth: 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, `.login-box[data-v-518c0816]{width:320px;box-sizing:border-box}.login-box__wrapper[data-v-518c0816]{display:flex;flex-direction:column;gap:calc(2*var(--default-grid-baseline))}.login-box__alternative-logins[data-v-518c0816]{display:flex;flex-direction:column;gap:.75rem}.fade-enter-active[data-v-518c0816],.fade-leave-active[data-v-518c0816]{transition:opacity .3s}.fade-enter[data-v-518c0816],.fade-leave-to[data-v-518c0816]{opacity:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/Login.vue\"],\"names\":[],\"mappings\":\"AACA,4BAEC,WAAA,CACA,qBAAA,CAEA,qCACC,YAAA,CACA,qBAAA,CACA,wCAAA,CAGD,gDACC,YAAA,CACA,qBAAA,CACA,UAAA,CAIF,wEACC,sBAAA,CAGD,6DACC,SAAA\",\"sourcesContent\":[\"\\n.login-box {\\n\\t// Same size as dashboard panels\\n\\twidth: 320px;\\n\\tbox-sizing: border-box;\\n\\n\\t&__wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: calc(2 * var(--default-grid-baseline));\\n\\t}\\n\\n\\t&__alternative-logins {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: 0.75rem;\\n\\t}\\n}\\n\\n.fade-enter-active, .fade-leave-active {\\n\\ttransition: opacity .3s;\\n}\\n\\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\\n\\topacity: 0;\\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, `\nfieldset[data-v-2c0ecaf9] {\n\ttext-align: center;\n}\ninput[type=submit][data-v-2c0ecaf9] {\n\tmargin-top: 20px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/login/UpdatePassword.vue\"],\"names\":[],\"mappings\":\";AAmIA;CACA,kBAAA;AACA;AAEA;CACA,gBAAA;AACA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","const map = {\n\t\"./af\": 25177,\n\t\"./af.js\": 25177,\n\t\"./ar\": 61509,\n\t\"./ar-dz\": 41488,\n\t\"./ar-dz.js\": 41488,\n\t\"./ar-kw\": 58676,\n\t\"./ar-kw.js\": 58676,\n\t\"./ar-ly\": 42353,\n\t\"./ar-ly.js\": 42353,\n\t\"./ar-ma\": 24496,\n\t\"./ar-ma.js\": 24496,\n\t\"./ar-ps\": 6947,\n\t\"./ar-ps.js\": 6947,\n\t\"./ar-sa\": 82682,\n\t\"./ar-sa.js\": 82682,\n\t\"./ar-tn\": 89756,\n\t\"./ar-tn.js\": 89756,\n\t\"./ar.js\": 61509,\n\t\"./az\": 95533,\n\t\"./az.js\": 95533,\n\t\"./be\": 28959,\n\t\"./be.js\": 28959,\n\t\"./bg\": 47777,\n\t\"./bg.js\": 47777,\n\t\"./bm\": 54903,\n\t\"./bm.js\": 54903,\n\t\"./bn\": 61290,\n\t\"./bn-bd\": 17357,\n\t\"./bn-bd.js\": 17357,\n\t\"./bn.js\": 61290,\n\t\"./bo\": 31545,\n\t\"./bo.js\": 31545,\n\t\"./br\": 11470,\n\t\"./br.js\": 11470,\n\t\"./bs\": 44429,\n\t\"./bs.js\": 44429,\n\t\"./ca\": 7306,\n\t\"./ca.js\": 7306,\n\t\"./cs\": 56464,\n\t\"./cs.js\": 56464,\n\t\"./cv\": 73635,\n\t\"./cv.js\": 73635,\n\t\"./cy\": 64226,\n\t\"./cy.js\": 64226,\n\t\"./da\": 93601,\n\t\"./da.js\": 93601,\n\t\"./de\": 77853,\n\t\"./de-at\": 26111,\n\t\"./de-at.js\": 26111,\n\t\"./de-ch\": 54697,\n\t\"./de-ch.js\": 54697,\n\t\"./de.js\": 77853,\n\t\"./dv\": 60708,\n\t\"./dv.js\": 60708,\n\t\"./el\": 54691,\n\t\"./el.js\": 54691,\n\t\"./en-au\": 53872,\n\t\"./en-au.js\": 53872,\n\t\"./en-ca\": 28298,\n\t\"./en-ca.js\": 28298,\n\t\"./en-gb\": 56195,\n\t\"./en-gb.js\": 56195,\n\t\"./en-ie\": 66584,\n\t\"./en-ie.js\": 66584,\n\t\"./en-il\": 65543,\n\t\"./en-il.js\": 65543,\n\t\"./en-in\": 9033,\n\t\"./en-in.js\": 9033,\n\t\"./en-nz\": 79402,\n\t\"./en-nz.js\": 79402,\n\t\"./en-sg\": 43004,\n\t\"./en-sg.js\": 43004,\n\t\"./eo\": 32934,\n\t\"./eo.js\": 32934,\n\t\"./es\": 97650,\n\t\"./es-do\": 20838,\n\t\"./es-do.js\": 20838,\n\t\"./es-mx\": 17730,\n\t\"./es-mx.js\": 17730,\n\t\"./es-us\": 56575,\n\t\"./es-us.js\": 56575,\n\t\"./es.js\": 97650,\n\t\"./et\": 3035,\n\t\"./et.js\": 3035,\n\t\"./eu\": 3508,\n\t\"./eu.js\": 3508,\n\t\"./fa\": 119,\n\t\"./fa.js\": 119,\n\t\"./fi\": 90527,\n\t\"./fi.js\": 90527,\n\t\"./fil\": 95995,\n\t\"./fil.js\": 95995,\n\t\"./fo\": 52477,\n\t\"./fo.js\": 52477,\n\t\"./fr\": 85498,\n\t\"./fr-ca\": 26435,\n\t\"./fr-ca.js\": 26435,\n\t\"./fr-ch\": 37892,\n\t\"./fr-ch.js\": 37892,\n\t\"./fr.js\": 85498,\n\t\"./fy\": 37071,\n\t\"./fy.js\": 37071,\n\t\"./ga\": 41734,\n\t\"./ga.js\": 41734,\n\t\"./gd\": 70217,\n\t\"./gd.js\": 70217,\n\t\"./gl\": 77329,\n\t\"./gl.js\": 77329,\n\t\"./gom-deva\": 32124,\n\t\"./gom-deva.js\": 32124,\n\t\"./gom-latn\": 93383,\n\t\"./gom-latn.js\": 93383,\n\t\"./gu\": 95050,\n\t\"./gu.js\": 95050,\n\t\"./he\": 11713,\n\t\"./he.js\": 11713,\n\t\"./hi\": 43861,\n\t\"./hi.js\": 43861,\n\t\"./hr\": 26308,\n\t\"./hr.js\": 26308,\n\t\"./hu\": 90609,\n\t\"./hu.js\": 90609,\n\t\"./hy-am\": 17160,\n\t\"./hy-am.js\": 17160,\n\t\"./id\": 74063,\n\t\"./id.js\": 74063,\n\t\"./is\": 89374,\n\t\"./is.js\": 89374,\n\t\"./it\": 88383,\n\t\"./it-ch\": 21827,\n\t\"./it-ch.js\": 21827,\n\t\"./it.js\": 88383,\n\t\"./ja\": 23827,\n\t\"./ja.js\": 23827,\n\t\"./jv\": 89722,\n\t\"./jv.js\": 89722,\n\t\"./ka\": 41794,\n\t\"./ka.js\": 41794,\n\t\"./kk\": 27088,\n\t\"./kk.js\": 27088,\n\t\"./km\": 96870,\n\t\"./km.js\": 96870,\n\t\"./kn\": 84451,\n\t\"./kn.js\": 84451,\n\t\"./ko\": 63164,\n\t\"./ko.js\": 63164,\n\t\"./ku\": 98174,\n\t\"./ku-kmr\": 6181,\n\t\"./ku-kmr.js\": 6181,\n\t\"./ku.js\": 98174,\n\t\"./ky\": 78474,\n\t\"./ky.js\": 78474,\n\t\"./lb\": 79680,\n\t\"./lb.js\": 79680,\n\t\"./lo\": 15867,\n\t\"./lo.js\": 15867,\n\t\"./lt\": 45766,\n\t\"./lt.js\": 45766,\n\t\"./lv\": 69532,\n\t\"./lv.js\": 69532,\n\t\"./me\": 58076,\n\t\"./me.js\": 58076,\n\t\"./mi\": 41848,\n\t\"./mi.js\": 41848,\n\t\"./mk\": 30306,\n\t\"./mk.js\": 30306,\n\t\"./ml\": 73739,\n\t\"./ml.js\": 73739,\n\t\"./mn\": 99053,\n\t\"./mn.js\": 99053,\n\t\"./mr\": 86169,\n\t\"./mr.js\": 86169,\n\t\"./ms\": 73386,\n\t\"./ms-my\": 92297,\n\t\"./ms-my.js\": 92297,\n\t\"./ms.js\": 73386,\n\t\"./mt\": 77075,\n\t\"./mt.js\": 77075,\n\t\"./my\": 72264,\n\t\"./my.js\": 72264,\n\t\"./nb\": 22274,\n\t\"./nb.js\": 22274,\n\t\"./ne\": 8235,\n\t\"./ne.js\": 8235,\n\t\"./nl\": 92572,\n\t\"./nl-be\": 43784,\n\t\"./nl-be.js\": 43784,\n\t\"./nl.js\": 92572,\n\t\"./nn\": 54566,\n\t\"./nn.js\": 54566,\n\t\"./oc-lnc\": 69330,\n\t\"./oc-lnc.js\": 69330,\n\t\"./pa-in\": 29849,\n\t\"./pa-in.js\": 29849,\n\t\"./pl\": 94418,\n\t\"./pl.js\": 94418,\n\t\"./pt\": 79834,\n\t\"./pt-br\": 48303,\n\t\"./pt-br.js\": 48303,\n\t\"./pt.js\": 79834,\n\t\"./ro\": 24457,\n\t\"./ro.js\": 24457,\n\t\"./ru\": 82271,\n\t\"./ru.js\": 82271,\n\t\"./sd\": 1221,\n\t\"./sd.js\": 1221,\n\t\"./se\": 33478,\n\t\"./se.js\": 33478,\n\t\"./si\": 17538,\n\t\"./si.js\": 17538,\n\t\"./sk\": 5784,\n\t\"./sk.js\": 5784,\n\t\"./sl\": 46637,\n\t\"./sl.js\": 46637,\n\t\"./sq\": 86794,\n\t\"./sq.js\": 86794,\n\t\"./sr\": 45719,\n\t\"./sr-cyrl\": 3322,\n\t\"./sr-cyrl.js\": 3322,\n\t\"./sr.js\": 45719,\n\t\"./ss\": 56000,\n\t\"./ss.js\": 56000,\n\t\"./sv\": 41011,\n\t\"./sv.js\": 41011,\n\t\"./sw\": 40748,\n\t\"./sw.js\": 40748,\n\t\"./ta\": 11025,\n\t\"./ta.js\": 11025,\n\t\"./te\": 11885,\n\t\"./te.js\": 11885,\n\t\"./tet\": 28861,\n\t\"./tet.js\": 28861,\n\t\"./tg\": 86571,\n\t\"./tg.js\": 86571,\n\t\"./th\": 55802,\n\t\"./th.js\": 55802,\n\t\"./tk\": 59527,\n\t\"./tk.js\": 59527,\n\t\"./tl-ph\": 29231,\n\t\"./tl-ph.js\": 29231,\n\t\"./tlh\": 31052,\n\t\"./tlh.js\": 31052,\n\t\"./tr\": 85096,\n\t\"./tr.js\": 85096,\n\t\"./tzl\": 79846,\n\t\"./tzl.js\": 79846,\n\t\"./tzm\": 81765,\n\t\"./tzm-latn\": 97711,\n\t\"./tzm-latn.js\": 97711,\n\t\"./tzm.js\": 81765,\n\t\"./ug-cn\": 48414,\n\t\"./ug-cn.js\": 48414,\n\t\"./uk\": 16618,\n\t\"./uk.js\": 16618,\n\t\"./ur\": 57777,\n\t\"./ur.js\": 57777,\n\t\"./uz\": 57609,\n\t\"./uz-latn\": 72475,\n\t\"./uz-latn.js\": 72475,\n\t\"./uz.js\": 57609,\n\t\"./vi\": 21135,\n\t\"./vi.js\": 21135,\n\t\"./x-pseudo\": 64051,\n\t\"./x-pseudo.js\": 64051,\n\t\"./yo\": 82218,\n\t\"./yo.js\": 82218,\n\t\"./zh-cn\": 52648,\n\t\"./zh-cn.js\": 52648,\n\t\"./zh-hk\": 1632,\n\t\"./zh-hk.js\": 1632,\n\t\"./zh-mo\": 31541,\n\t\"./zh-mo.js\": 31541,\n\t\"./zh-tw\": 50304,\n\t\"./zh-tw.js\": 50304\n};\n\n\nfunction webpackContext(req) {\n\tconst id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tconst e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 35358;","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst 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\tconst 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","const 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\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet 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\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst 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/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\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=\" + {\"3108\":\"71c2314a13f8bd9bb9f3\",\"4005\":\"aee79e7f1049b5e8188f\",\"4017\":\"d1523b8db423fbe47986\",\"5236\":\"295a99f2ba6e3a05a834\",\"7859\":\"0aa7564896cee7ea552c\",\"8259\":\"e914ef6a65a38374620a\",\"8374\":\"e925f5901b71aeaa37db\",\"8689\":\"5fcce4026be999b251c3\"}[chunkId] + \"\";\n};","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","const inProgress = {};\nconst dataWebpackPrefix = \"nextcloud-ui-legacy:\";\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\tlet script, needAttach;\n\tif(key !== undefined) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tconst 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\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\tconst onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tconst doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode?.removeChild(script);\n\t\tdoneFns?.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tconst 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};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(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 = 1418;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","let scriptUrl;\nif (globalThis.importScripts) scriptUrl = globalThis.location + \"\";\nconst document = globalThis.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript?.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tlet 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(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = (typeof document !== 'undefined' && 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\nconst installedChunks = {\n\t1418: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tlet 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\tconst 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\tconst 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\tconst error = new Error();\n\t\t\t\t\tconst 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\tconst errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tconst 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\terror.event = event;\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\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\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\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\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\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(24163)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["login_LoginButtonvue_type_script_lang_js","name","components","ArrowRight","A","NcButton","props","value","type","String","default","t","valueLoading","loading","Boolean","required","invertedColors","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","LoginButtonvue_type_style_index_0_id_bbf83d00_prod_lang_scss_scoped_true","locals","LoginButton","componentNormalizer","_vm","this","_c","_self","attrs","variant","wide","disabled","on","click","$event","$emit","scopedSlots","_u","key","fn","staticClass","proxy","_v","_s","auth","computed","userNameInputLengthIs255","user","length","userInputHelperText","login_LoginFormvue_type_script_lang_js","NcCheckboxRadioSwitch","NcPasswordField","NcTextField","NcNoteCard","mixins","AuthMixin","username","redirectUrl","errors","Array","messages","throttleDelay","Number","autoCompleteAllowed","remembermeAllowed","directLogin","emailStates","setup","l10n_dist","Tl","headlineText","productName","OC","theme","undefined","sanitize","escape","loginTimeout","loadState","requestToken","window","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","timezoneOffset","Date","getTimezoneOffset","data","password","rememberme","visible","resetFormTimeout","debounce","handleResetForm","isError","invalidPassword","userDisabled","errorLabel","apacheAuthFailed","indexOf","csrfCheckFailed","internalException","loadingIcon","imagePath","loginActionUrl","generateUrl","emailEnabled","every","state","loginText","watch","mounted","$refs","inputField","input","focus","methods","updateUsername","submit","event","preventDefault","LoginFormvue_type_style_index_0_id_fac76c6a_prod_lang_scss_scoped_true_options","LoginFormvue_type_style_index_0_id_fac76c6a_prod_lang_scss_scoped_true","LoginForm","ref","method","action","title","_e","heading","_l","message","index","class","id","alt","src","staticStyle","clear","shake","label","maxlength","autocapitalize","spellchecking","autocomplete","error","change","model","callback","$$v","expression","domProps","WebAuthnError","Error","constructor","code","cause","super","Object","defineProperty","enumerable","configurable","writable","WebAuthnAbortService","createNewAbortSignal","controller","abortError","abort","newController","AbortController","signal","cancelCeremony","bufferToBase64URLString_bufferToBase64URLString","buffer","bytes","Uint8Array","str","charCode","fromCharCode","btoa","replace","base64URLStringToBuffer_base64URLStringToBuffer","base64URLString","base64","padLength","padded","padEnd","binary","atob","ArrayBuffer","i","charCodeAt","browserSupportsWebAuthn_browserSupportsWebAuthn","_browserSupportsWebAuthnInternals","stubThis","globalThis","PublicKeyCredential","_browserSupportsWebAuthnAutofillInternals","toPublicKeyCredentialDescriptor_toPublicKeyCredentialDescriptor","descriptor","transports","attachments","toAuthenticatorAttachment_toAuthenticatorAttachment","attachment","vue_material_design_icons_LockOpenvue_type_script_lang_js","emits","fillColor","size","LockOpen","_b","role","$attrs","fill","width","height","viewBox","d","logger","getCurrentUser","getLoggerBuilder","setApp","build","setUid","uid","detectUser","NoValidCredentials","login_PasswordLessLoginFormvue_type_script_lang_js","defineComponent","InformationIcon","InformationOutline","LockOpenIcon","NcEmptyContent","isHttps","isLocalhost","supportsWebauthn","browserSupportsWebAuthn","validCredentials","authenticate","loginForm","checkValidity","debug","params","async","loginName","url","Axios","post","allowCredentials","optionsJSON","challenge","console","warn","useBrowserAutofill","verifyBrowserAutofillInput","map","publicKey","getOptions","Promise","resolve","globalPublicKeyCredential","isConditionalMediationAvailable","browserSupportsWebAuthnAutofill","document","querySelectorAll","mediation","credential","navigator","credentials","get","err","AbortSignal","effectiveDomain","location","hostname","test","rpId","identifyAuthenticationError","rawId","response","userHandle","authenticatorData","clientDataJSON","signature","clientExtensionResults","getClientExtensionResults","authenticatorAttachment","startWebauthnAuthentication","startAuthentication","completeAuthentication","changeUsername","authData","JSON","stringify","finishAuthentication","then","defaultRedirectUrl","charAt","href","getBaseUrl","catch","PasswordLessLoginFormvue_type_style_index_0_id_25758ef3_prod_lang_scss_scoped_true_options","PasswordLessLoginFormvue_type_style_index_0_id_25758ef3_prod_lang_scss_scoped_true","PasswordLessLoginForm_component","_setupProxy","apply","arguments","placeholder","description","PasswordLessLoginForm","login_ResetPasswordvue_type_script_lang_ts","resetPasswordLink","axios","status","ResetPasswordvue_type_style_index_0_id_759a0fdd_prod_lang_scss_scoped_true_options","ResetPasswordvue_type_style_index_0_id_759a0fdd_prod_lang_scss_scoped_true","ResetPassword_component","ResetPassword","login_UpdatePasswordvue_type_script_lang_js","resetPasswordTarget","encrypted","proceed","encryption","msg","e","UpdatePasswordvue_type_style_index_0_id_2c0ecaf9_prod_scoped_true_lang_css_options","UpdatePasswordvue_type_style_index_0_id_2c0ecaf9_prod_scoped_true_lang_css","UpdatePassword_component","for","directives","rawName","spellcheck","target","composing","checked","isArray","_i","$$a","$$el","$$c","$$i","concat","slice","warning","UpdatePassword","query","queryString","parse","search","localStorage","sessionStorage","indexedDBList","indexedDB","databases","deleteDatabase","wipeBrowserStorages","views_Loginvue_type_script_lang_js","passwordlessLogin","resetPassword","canResetPassword","resetPasswordUser","direct","hasPasswordless","countAlternativeLogins","alternativeLogins","protocol","hideLoginForm","passwordResetFinished","Loginvue_type_style_index_0_id_518c0816_prod_scoped_true_lang_scss_options","Loginvue_type_style_index_0_id_518c0816_prod_scoped_true_lang_scss","Login","mode","done","alternativeLogin","isAdmin","_oc_isadmin","appConfig","oc_appconfig","OC_appswebroots","_oc_appswebroots","OC_config","_oc_config","rawUid","getElementsByTagName","getAttribute","displayName","currentUser","_oc_debug","Dialogs","YES_NO_BUTTONS","OK_BUTTONS","FILEPICKER_TYPE_CHOOSE","FILEPICKER_TYPE_MOVE","FILEPICKER_TYPE_COPY","FILEPICKER_TYPE_COPY_MOVE","FILEPICKER_TYPE_CUSTOM","alert","text","modal","OK_BUTTON","info","confirm","confirmDestructive","buttons","DialogBuilder","setName","setText","setButtons","clicked","_getLegacyButtons","show","confirmHtml","setHTML","prompt","spawnDialog","defineAsyncComponent","all","__webpack_require__","inputName","isPassword","args","filepicker","multiselect","mimetype","_modal","FilePickerType","Choose","path","legacyCallback","getPath","node","root","startsWith","nodes","builder","getFilePickerBuilder","forEach","button","addButton","defaultButton","setButtonFactory","displayname","basename","push","multiSelect","file","CopyMove","Copy","icon","IconCopy","Move","setMimeTypeFilter","filter","setFilter","fileid","mime","mtime","getTime","permissions","attributes","etag","hasPreview","mountType","quotaAvailableBytes","sharePermissions","nodeToLegacyFile","allowDirectories","allowDirectoryChooser","includes","setMultiSelect","startAt","pick","content","dialogType","allowHtml","setSeverity","dialog","_clicked","buttonList","cancel","dialogs","getRequestToken","head","dataset","requesttoken","OCEventSource","joinChar","dataStr","typelessListeners","closed","encodeURIComponent","source","EventSource","onmessage","listen","close","prototype","call","addEventListener","eventsource","l10n","load","loadTranslations","register","kz","_unregister","unregister","translate","translatePlural","iconCache","Map","getIconUrl","mimeType","MimeTypeList","aliases","has","gotIcon","folder","themes","getRootUrl","getMimeTypeIcon","files","OCA","Theming","cacheBuster","set","RegExp","split","clearIconCache","startSaving","selector","startAction","el","querySelector","HTMLElement","textContent","classList","remove","getAnimations","animation","style","display","finishedSaving","finishedAction","finishedSuccess","finishedError","add","setTimeout","animate","opacity","duration","password_confirmation","requiresPasswordConfirmation","isPasswordConfirmationRequired","requirePasswordConfirmation","rejectCallback","confirmPassword","plugins","_plugins","targetName","plugin","getPlugins","attach","targetObject","detach","_theme","VERSION","self","global","Function","ArrayProto","ObjProto","SymbolProto","Symbol","_setup_toString","toString","_setup_hasOwnProperty","hasOwnProperty","supportsArrayBuffer","supportsDataView","DataView","nativeIsArray","nativeKeys","keys","nativeCreate","create","nativeIsView","isView","_isNaN","isNaN","_isFinite","isFinite","hasEnumBug","propertyIsEnumerable","nonEnumerableProps","MAX_ARRAY_INDEX","Math","pow","restArguments","func","startIndex","max","rest","isObject","obj","isNull","isUndefined","isBoolean","isElement","nodeType","tagTester","tag","isString","isNumber","isDate","isRegExp","isSymbol","isArrayBuffer","isFunction","nodelist","childNodes","Int8Array","modules_isFunction","_hasObjectTag","hasDataViewBug","isIE11","isDataView","modules_isDataView","getInt8","isArguments","modules_isArguments","isFinite_isFinite","parseFloat","isNaN_isNaN","constant","createSizePropertyCheck","getSizeProperty","collection","sizeProperty","shallowProperty","_getByteLength","_isBufferLike","typedArrayPattern","modules_isTypedArray","_getLength","collectNonEnumProps","hash","l","contains","emulatedSet","nonEnumIdx","proto","prop","isEmpty","isMatch","object","_keys","_","_wrapped","toBufferView","bufferSource","byteOffset","valueOf","toJSON","tagDataView","isEqual","a","b","todo","aStack","bStack","frame","pop","className","areArrays","aCtor","bCtor","allKeys","ie11fingerprint","weakMapMethods","forEachName","commonInit","mapTail","mapMethods","setMethods","isMap","isWeakMap","isSet","isWeakSet","values","pairs","invert","result","functions","names","sort","createAssigner","keysFunc","defaults","extend","extendOwn","baseCreate","Ctor","clone","tap","interceptor","toPath","_toPath_toPath","deepGet","defaultValue","has_has","identity","matcher","property","optimizeCb","context","argCount","accumulator","baseIteratee","iteratee","Infinity","cb","mapObject","results","currentKey","noop","propertyOf","times","n","accum","random","min","floor","now","createEscaper","escaper","match","join","testRegexp","replaceRegexp","string","_escapeMap","modules_escape","modules_unescape","templateSettings","evaluate","interpolate","noMatch","escapes","escapeRegExp","escapeChar","bareIdentifier","template","settings","oldSettings","offset","render","argument","variable","fallback","idCounter","uniqueId","prefix","chain","instance","_chain","executeBound","sourceFunc","boundFunc","callingContext","partial","boundArgs","bound","position","modules_partial","TypeError","callArgs","_isArrayLike","flatten","depth","strict","output","idx","stack","v","bindAll","memoize","hasher","cache","address","delay","wait","defer","throttle","timeout","previous","later","leading","throttled","_now","remaining","clearTimeout","trailing","debounce_debounce","immediate","passed","debounced","_args","wrap","wrapper","negate","predicate","compose","start","after","before","memo","once","findKey","createPredicateIndexFinder","dir","array","findIndex","findLastIndex","sortedIndex","low","high","mid","createIndexFinder","predicateFind","item","lastIndexOf","find","findWhere","each","createReduce","initial","reducer","reduce","reduceRight","list","reject","some","fromIndex","guard","invoke","contextPath","pluck","where","lastComputed","reStrSymbol","toArray","sample","last","rand","temp","shuffle","sortBy","criteria","left","right","group","behavior","partition","groupBy","indexBy","countBy","pass","keyInObj","omit","first","compact","flatten_flatten","difference","without","otherArrays","uniq","isSorted","seen","union","arrays","intersection","argsLength","j","unzip","zip","range","stop","step","ceil","chunk","count","chainResult","mixin","underscore_array_methods","index_default_","modules_namespaceObject","index_default","util_history","_handlers","_pushState","strParams","buildQueryString","history","pushState","pathname","userAgent","toLowerCase","parseInt","patterns","pattern","ii","stroke","removeAttribute","setAttribute","replaceState","_cancelPop","addOnPopStateHandler","handler","_parseHashQuery","pos","substr","_decodeQuery","parseUrlQuery","parseQueryString","_onPopState","chunkify","tz","c","x","y","m","util","History","humanFileSize","files_dist","v7","computerFileSize","s","trim","matches","k","kb","mb","gb","g","tb","pb","p","round","formatDate","timestamp","format","TESTING","moment","relativeModifiedDate","diff","fromNow","getScrollBarWidth","_scrollBarWidth","inner","createElement","outer","top","visibility","overflow","appendChild","body","w1","offsetWidth","w2","clientWidth","removeChild","stripTime","date","getFullYear","getMonth","getDate","naturalSortCompare","aa","bb","aNum","bNum","localeCompare","getLanguage","waitFor","interval","internalCallback","isCookieSetToValue","cookies","cookie","webroot","_oc_webroot","OC_webroot","src_OC","coreApps","menuSpeed","PERMISSION_ALL","PERMISSION_CREATE","PERMISSION_DELETE","PERMISSION_NONE","PERMISSION_READ","PERMISSION_SHARE","PERMISSION_UPDATE","TAG_FAVORITE","appswebroots","config","Config","MimeType","mimeType_namespaceObject","isUserAdmin","L10N","registerXHRForErrorProcessing","getCapabilities","realGetCapabilities","paths_dist","P8","encodePath","O0","dirname","pD","isSamePath","ys","joinPaths","getCanonicalLocale","lO","getLocale","JK","Z0","URLSearchParams","fromEntries","entries","PasswordConfirmation","Plugins","Util","filePath","generateFilePath","router_dist","Jv","getRootPath","d0","linkTo","uM","linkToOCS","service","version","generateOcsUrl","ocsVersion","linkToRemote","generateRemoteUrl","linkToRemoteBase","realGetRootUrl","subscribe","token","Nextcloud","L10n","Vue","LoginView","$mount","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","module","sources","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","webpackContext","req","webpackContextResolve","o","exports","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","deferred","O","chunkIds","priority","notFulfilled","fulfilled","splice","r","getter","__esModule","definition","binding","f","chunkId","promises","u","hasOwn","inProgress","dataWebpackPrefix","script","needAttach","scripts","charset","nc","onScriptComplete","prev","onerror","onload","doneFns","parentNode","toStringTag","nmd","paths","children","dn","getOwnPropertyDescriptor","cjs","mod","scriptUrl","importScripts","currentScript","tagName","toUpperCase","baseURI","installedChunks","installedChunkData","promise","loadingEnded","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/core-main.js b/dist/core-main.js index dd7ce13b96676..456ed9307e5a6 100644 --- a/dist/core-main.js +++ b/dist/core-main.js @@ -1,2 +1,2 @@ -(()=>{var e={92951(e,r,n){"use strict";var o={};n.r(o),n.d(o,{VERSION:()=>f,after:()=>Ue,all:()=>ir,allKeys:()=>wt,any:()=>ar,assign:()=>Ut,before:()=>Fe,bind:()=>ke,bindAll:()=>Ie,chain:()=>Ce,chunk:()=>Hr,clone:()=>Vt,collect:()=>Ze,compact:()=>Rr,compose:()=>Be,constant:()=>it,contains:()=>sr,countBy:()=>wr,create:()=>Ht,debounce:()=>Pe,default:()=>Wr,defaults:()=>Ft,defer:()=>Me,delay:()=>je,detect:()=>Je,difference:()=>Mr,drop:()=>Tr,each:()=>Qe,escape:()=>fe,every:()=>ir,extend:()=>Bt,extendOwn:()=>Ut,filter:()=>nr,find:()=>Je,findIndex:()=>qe,findKey:()=>He,findLastIndex:()=>We,findWhere:()=>Xe,first:()=>Or,flatten:()=>jr,foldl:()=>er,foldr:()=>rr,forEach:()=>Qe,functions:()=>Lt,get:()=>Yt,groupBy:()=>Ar,has:()=>Kt,head:()=>Or,identity:()=>Jt,include:()=>sr,includes:()=>sr,indexBy:()=>br,indexOf:()=>Ye,initial:()=>kr,inject:()=>er,intersection:()=>Dr,invert:()=>Pt,invoke:()=>cr,isArguments:()=>rt,isArray:()=>Z,isArrayBuffer:()=>q,isBoolean:()=>P,isDataView:()=>Q,isDate:()=>F,isElement:()=>L,isEmpty:()=>vt,isEqual:()=>bt,isError:()=>H,isFinite:()=>nt,isFunction:()=>$,isMap:()=>Tt,isMatch:()=>gt,isNaN:()=>ot,isNull:()=>M,isNumber:()=>U,isObject:()=>j,isRegExp:()=>z,isSet:()=>Rt,isString:()=>B,isSymbol:()=>V,isTypedArray:()=>ft,isUndefined:()=>N,isWeakMap:()=>It,isWeakSet:()=>jt,iteratee:()=>ee,keys:()=>ht,last:()=>Ir,lastIndexOf:()=>Ke,map:()=>Ze,mapObject:()=>ne,matcher:()=>Xt,matches:()=>Xt,max:()=>fr,memoize:()=>Re,methods:()=>Lt,min:()=>pr,mixin:()=>qr,negate:()=>De,noop:()=>oe,now:()=>ce,object:()=>Fr,omit:()=>Er,once:()=>ze,pairs:()=>Nt,partial:()=>Ee,partition:()=>xr,pick:()=>Sr,pluck:()=>ur,property:()=>Qt,propertyOf:()=>ie,random:()=>se,range:()=>zr,reduce:()=>er,reduceRight:()=>rr,reject:()=>or,rest:()=>Tr,restArguments:()=>R,result:()=>be,sample:()=>vr,select:()=>nr,shuffle:()=>gr,size:()=>Cr,some:()=>ar,sortBy:()=>mr,sortedIndex:()=>Ge,tail:()=>Tr,take:()=>Or,tap:()=>qt,template:()=>Ae,templateSettings:()=>de,throttle:()=>Ne,times:()=>ae,toArray:()=>hr,toPath:()=>Wt,transpose:()=>Br,unescape:()=>pe,union:()=>Lr,uniq:()=>Pr,unique:()=>Pr,uniqueId:()=>xe,unzip:()=>Br,values:()=>Mt,where:()=>lr,without:()=>Nr,wrap:()=>Le,zip:()=>Ur});var i={};n.r(i),n.d(i,{clearIconCache:()=>hi,getIconUrl:()=>pi});var a={};n.r(a),n.d(a,{deleteKey:()=>Ni,getApps:()=>Ii,getKeys:()=>Ri,getValue:()=>ji,setValue:()=>Mi});var s={};n.r(s),n.d(s,{formatLinksPlain:()=>Vi,formatLinksRich:()=>Hi,plainToRich:()=>Fi,richToPlain:()=>zi});var c=n(21777),u=n(44368),l=n(63814),f="1.13.8",p="object"==typeof self&&self.self===self&&self||"object"==typeof globalThis&&globalThis.global===globalThis&&globalThis||Function("return this")()||{},d=Array.prototype,h=Object.prototype,v="undefined"!=typeof Symbol?Symbol.prototype:null,g=d.push,m=d.slice,y=h.toString,A=h.hasOwnProperty,b="undefined"!=typeof ArrayBuffer,w="undefined"!=typeof DataView,x=Array.isArray,C=Object.keys,_=Object.create,S=b&&ArrayBuffer.isView,E=isNaN,k=isFinite,O=!{toString:null}.propertyIsEnumerable("toString"),T=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],I=Math.pow(2,53)-1;function R(t,e){return e=null==e?t.length-1:+e,function(){for(var r=Math.max(arguments.length-e,0),n=Array(r),o=0;o=0&&r<=I}}function st(t){return function(e){return null==e?void 0:e[t]}}const ct=st("byteLength"),ut=at(ct);var lt=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;const ft=b?function(t){return S?S(t)&&!Q(t):ut(t)&<.test(y.call(t))}:it(!1),pt=st("length");function dt(t,e){e=function(t){for(var e={},r=t.length,n=0;n=0))if(n.push(t),o.push(e),r.push(!0),c){if((f=t.length)!==e.length)return!1;for(;f--;)r.push({a:t[f],b:e[f]})}else{var p,d=ht(t);if(f=d.length,ht(e).length!==f)return!1;for(;f--;){if(!tt(e,p=d[f]))return!1;r.push({a:t[p],b:e[p]})}}}else n.pop(),o.pop()}return!0}function wt(t){if(!j(t))return[];var e=[];for(var r in t)e.push(r);return O&&dt(t,e),e}function xt(t){var e=pt(t);return function(r){if(null==r)return!1;var n=wt(r);if(pt(n))return!1;for(var o=0;o":">",'"':""","'":"'","`":"`"},fe=ue(le),pe=ue(Pt(le)),de=mt.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var he=/(.)^/,ve={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},ge=/\\|'|\r|\n|\u2028|\u2029/g;function me(t){return"\\"+ve[t]}var ye=/^\s*(\w|\$)+\s*$/;function Ae(t,e,r){!e&&r&&(e=r),e=Ft({},e,mt.templateSettings);var n=RegExp([(e.escape||he).source,(e.interpolate||he).source,(e.evaluate||he).source].join("|")+"|$","g"),o=0,i="__p+='";t.replace(n,function(e,r,n,a,s){return i+=t.slice(o,s).replace(ge,me),o=s+e.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":n?i+="'+\n((__t=("+n+"))==null?'':__t)+\n'":a&&(i+="';\n"+a+"\n__p+='"),e}),i+="';\n";var a,s=e.variable;if(s){if(!ye.test(s))throw new Error("variable is not a bare identifier: "+s)}else i="with(obj||{}){\n"+i+"}\n",s="obj";i="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{a=new Function(s,"_",i)}catch(t){throw t.source=i,t}var c=function(t){return a.call(this,t,mt)};return c.source="function("+s+"){\n"+i+"}",c}function be(t,e,r){var n=(e=Gt(e)).length;if(!n)return $(r)?r.call(t):r;for(var o=0;o=a){if(!s.length)break;var c=s.pop();i=c.i,t=c.v,a=pt(t)}else{var u=t[i++];s.length>=e?n[o++]=u:Oe(u)&&(Z(u)||rt(u))?(s.push({i,v:t}),i=0,a=pt(t=u)):r||(n[o++]=u)}return n}const Ie=R(function(t,e){var r=(e=Te(e,!1,!1)).length;if(r<1)throw new Error("bindAll must be passed function names");for(;r--;){var n=e[r];t[n]=ke(t[n],t)}return t});function Re(t,e){var r=function(n){var o=r.cache,i=""+(e?e.apply(this,arguments):n);return tt(o,i)||(o[i]=t.apply(this,arguments)),o[i]};return r.cache={},r}const je=R(function(t,e,r){return setTimeout(function(){return t.apply(null,r)},e)}),Me=Ee(je,mt,1);function Ne(t,e,r){var n,o,i,a,s=0;r||(r={});var c=function(){s=!1===r.leading?0:ce(),n=null,a=t.apply(o,i),n||(o=i=null)},u=function(){var u=ce();s||!1!==r.leading||(s=u);var l=e-(u-s);return o=this,i=arguments,l<=0||l>e?(n&&(clearTimeout(n),n=null),s=u,a=t.apply(o,i),n||(o=i=null)):n||!1===r.trailing||(n=setTimeout(c,l)),a};return u.cancel=function(){clearTimeout(n),s=0,n=o=i=null},u}function Pe(t,e,r){var n,o,i,a,s,c=function(){var u=ce()-o;e>u?n=setTimeout(c,e-u):(n=null,r||(a=t.apply(s,i)),n||(i=s=null))},u=R(function(u){return s=this,i=u,o=ce(),n||(n=setTimeout(c,e),r&&(a=t.apply(s,i))),a});return u.cancel=function(){clearTimeout(n),n=i=s=null},u}function Le(t,e){return Ee(e,t)}function De(t){return function(){return!t.apply(this,arguments)}}function Be(){var t=arguments,e=t.length-1;return function(){for(var r=e,n=t[e].apply(this,arguments);r--;)n=t[r].call(this,n);return n}}function Ue(t,e){return function(){if(--t<1)return e.apply(this,arguments)}}function Fe(t,e){var r;return function(){return--t>0&&(r=e.apply(this,arguments)),t<=1&&(e=null),r}}const ze=Ee(Fe,2);function He(t,e,r){e=re(e,r);for(var n,o=ht(t),i=0,a=o.length;i0?0:o-1;i>=0&&i0?a=i>=0?i:Math.max(i+s,a):s=i>=0?Math.min(i+1,s):i+s+1;else if(r&&i&&s)return n[i=r(n,o)]===o?i:-1;if(o!=o)return(i=e(m.call(n,a,s),ot))>=0?i+a:-1;for(i=t>0?a:s-1;i>=0&&i=3;return function(e,r,n,o){var i=!Oe(e)&&ht(e),a=(i||e).length,s=t>0?0:a-1;for(o||(n=e[i?i[s]:s],s+=t);s>=0&&s=0}const cr=R(function(t,e,r){var n,o;return $(e)?o=e:(e=Gt(e),n=e.slice(0,-1),e=e[e.length-1]),Ze(t,function(t){var i=o;if(!i){if(n&&n.length&&(t=$t(t,n)),null==t)return;i=t[e]}return null==i?i:i.apply(t,r)})});function ur(t,e){return Ze(t,Qt(e))}function lr(t,e){return nr(t,Xt(e))}function fr(t,e,r){var n,o,i=-1/0,a=-1/0;if(null==e||"number"==typeof e&&"object"!=typeof t[0]&&null!=t)for(var s=0,c=(t=Oe(t)?t:Mt(t)).length;si&&(i=n);else e=re(e,r),Qe(t,function(t,r,n){((o=e(t,r,n))>a||o===-1/0&&i===-1/0)&&(i=t,a=o)});return i}function pr(t,e,r){var n,o,i=1/0,a=1/0;if(null==e||"number"==typeof e&&"object"!=typeof t[0]&&null!=t)for(var s=0,c=(t=Oe(t)?t:Mt(t)).length;sn||void 0===r)return 1;if(r1&&(n=Zt(n,e[1])),e=wt(t)):(n=_r,e=Te(e,!1,!1),t=Object(t));for(var o=0,i=e.length;o1&&(r=e[1])):(e=Ze(Te(e,!1,!1),String),n=function(t,r){return!sr(e,r)}),Sr(t,n,r)});function kr(t,e,r){return m.call(t,0,Math.max(0,t.length-(null==e||r?1:e)))}function Or(t,e,r){return null==t||t.length<1?null==e||r?void 0:[]:null==e||r?t[0]:kr(t,t.length-e)}function Tr(t,e,r){return m.call(t,null==e||r?1:e)}function Ir(t,e,r){return null==t||t.length<1?null==e||r?void 0:[]:null==e||r?t[t.length-1]:Tr(t,Math.max(0,t.length-e))}function Rr(t){return nr(t,Boolean)}function jr(t,e){return Te(t,e,!1)}const Mr=R(function(t,e){return e=Te(e,!0,!0),nr(t,function(t){return!sr(e,t)})}),Nr=R(function(t,e){return Mr(t,e)});function Pr(t,e,r,n){P(e)||(n=r,r=e,e=!1),null!=r&&(r=re(r,n));for(var o=[],i=[],a=0,s=pt(t);av.value.find(t=>t.teamId===g.value)?.displayName);async function y(t){p.value=""===t?(0,Yr.t)("core","Loading your contacts …"):(0,Yr.t)("core","Looking for {term} …",{term:t}),d.value=!1;try{const{data:e}=await u.Ay.post((0,l.Jv)("/contactsmenu/contacts"),{filter:t,teamId:"$_all_$"!==g.value?g.value:void 0});f.value=e.contacts,s.value=e.contactsAppEnabled,p.value=void 0}catch(e){jn.error("could not load contacts",{error:e,searchTerm:t}),d.value=!0}}(0,Xr.sV)(async()=>{const t=e.getItem("core:contacts:team");if(t&&(g.value=JSON.parse(t)),0===Nn.length)try{const{data:t}=await u.Ay.get((0,l.Jv)("/contactsmenu/teams"));Nn.push(...t)}catch(t){jn.error("could not load user teams",{error:t})}v.value=[...Nn]}),(0,Xr.wB)(g,()=>{e.setItem("core:contacts:team",JSON.stringify(g.value)),y(h.value)});const A=(0,tn.A)(function(){y(h.value)},500);function b(){(0,Xr.dY)(()=>{i.value?.focus(),i.value?.select()})}return{__sfc:!0,userTeams:Nn,storage:e,user:r,contactsAppURL:n,contactsAppMgmtURL:o,contactsMenuInput:i,actions:a,contactsAppEnabled:s,contacts:f,loadingText:p,hasError:d,searchTerm:h,teams:v,selectedTeam:g,selectedTeamName:m,onOpened:async function(){await y("")},getContacts:y,onInputDebounced:A,onReset:function(){h.value="",f.value=[],b()},focusInput:b,mdiAccountGroupOutline:Qr.dgQ,mdiContacts:Qr.aB4,mdiMagnify:Qr.U4M,t:Yr.t,NcActionButton:en.A,NcActions:rn.A,NcButton:nn.A,NcEmptyContent:on.A,NcHeaderMenu:an.A,NcIconSvgWrapper:sn.A,NcLoadingIcon:cn.A,NcTextField:un.A,ContactMenuEntry:In}}}),Ln=Pn;var Dn=n(32351),Bn={};Bn.styleTagTransform=En(),Bn.setAttributes=xn(),Bn.insert=bn().bind(null,"head"),Bn.domAPI=yn(),Bn.insertStyleElement=_n(),gn()(Dn.A,Bn),Dn.A&&Dn.A.locals&&Dn.A.locals;const Un=(0,Tn.A)(Ln,function(){var t=this,e=t._self._c,r=t._self._setupProxy;return e(r.NcHeaderMenu,{staticClass:"contactsmenu",attrs:{id:"contactsmenu","aria-label":r.t("core","Search contacts"),"exclude-click-outside-selectors":".v-popper__popper"},on:{open:r.onOpened},scopedSlots:t._u([{key:"trigger",fn:function(){return[e(r.NcIconSvgWrapper,{staticClass:"contactsmenu__trigger-icon",attrs:{path:r.mdiContacts}})]},proxy:!0}])},[t._v(" "),e("div",{staticClass:"contactsmenu__menu"},[e("div",{staticClass:"contactsmenu__menu__search-container"},[e("div",{staticClass:"contactsmenu__menu__input-wrapper"},[e(r.NcActions,{attrs:{"force-menu":"","aria-label":r.t("core","Filter by team"),variant:"tertiary"},scopedSlots:t._u([{key:"icon",fn:function(){return[e(r.NcIconSvgWrapper,{attrs:{path:r.mdiAccountGroupOutline}})]},proxy:!0},{key:"default",fn:function(){return[e(r.NcActionButton,{attrs:{modelValue:r.selectedTeam,value:"$_all_$",type:"radio"},on:{"update:modelValue":function(t){r.selectedTeam=t},"update:model-value":function(t){r.selectedTeam=t}}},[t._v("\n\t\t\t\t\t\t\t"+t._s(r.t("core","All teams"))+"\n\t\t\t\t\t\t")]),t._v(" "),t._l(r.teams,function(n){return e(r.NcActionButton,{key:n.teamId,attrs:{modelValue:r.selectedTeam,value:n.teamId,type:"radio"},on:{"update:modelValue":function(t){r.selectedTeam=t},"update:model-value":function(t){r.selectedTeam=t}}},[t._v("\n\t\t\t\t\t\t\t"+t._s(n.displayName)+"\n\t\t\t\t\t\t")])})]},proxy:!0}])}),t._v(" "),e(r.NcTextField,{ref:"contactsMenuInput",staticClass:"contactsmenu__menu__search",attrs:{id:"contactsmenu__menu__search","trailing-button-icon":"close",label:r.selectedTeamName?r.t("core","Search contacts in team {team}",{team:r.selectedTeamName}):r.t("core","Search contacts …"),"trailing-button-label":r.t("core","Reset search"),"show-trailing-button":""!==r.searchTerm,type:"search"},on:{input:r.onInputDebounced,"trailing-button-click":r.onReset},model:{value:r.searchTerm,callback:function(t){r.searchTerm=t},expression:"searchTerm"}})],1),t._v(" "),t._l(r.actions,function(n){return e(r.NcButton,{key:n.id,staticClass:"contactsmenu__menu__action",attrs:{"aria-label":n.label,title:n.label,variant:"tertiary-no-background"},on:{click:n.onClick},scopedSlots:t._u([{key:"icon",fn:function(){return[e(r.NcIconSvgWrapper,{attrs:{svg:n.icon}})]},proxy:!0}],null,!0)})})],2),t._v(" "),r.hasError?e(r.NcEmptyContent,{attrs:{name:r.t("core","Could not load your contacts")},scopedSlots:t._u([{key:"icon",fn:function(){return[e(r.NcIconSvgWrapper,{attrs:{path:r.mdiMagnify}})]},proxy:!0}],null,!1,1853740774)}):r.loadingText?e(r.NcEmptyContent,{attrs:{name:r.loadingText},scopedSlots:t._u([{key:"icon",fn:function(){return[e(r.NcLoadingIcon)]},proxy:!0}])}):0===r.contacts.length?e(r.NcEmptyContent,{attrs:{name:r.t("core","No contacts found")},scopedSlots:t._u([{key:"icon",fn:function(){return[e(r.NcIconSvgWrapper,{attrs:{path:r.mdiMagnify}})]},proxy:!0}])}):e("div",{staticClass:"contactsmenu__menu__content"},[e("div",{attrs:{id:"contactsmenu-contacts"}},[e("ul",{attrs:{"aria-label":r.t("core","Contacts list")}},t._l(r.contacts,function(t){return e(r.ContactMenuEntry,{key:t.id,attrs:{contact:t}})}),1)]),t._v(" "),r.contactsAppEnabled?e("div",{staticClass:"contactsmenu__menu__content__footer"},[e(r.NcButton,{attrs:{variant:"tertiary",href:r.contactsAppURL}},[t._v("\n\t\t\t\t\t"+t._s(r.t("core","Show all contacts"))+"\n\t\t\t\t")])],1):r.user.isAdmin?e("div",{staticClass:"contactsmenu__menu__content__footer"},[e(r.NcButton,{attrs:{variant:"tertiary",href:r.contactsAppMgmtURL}},[t._v("\n\t\t\t\t\t"+t._s(r.t("core","Install the Contacts app"))+"\n\t\t\t\t")])],1):t._e()])],1)])},[],!1,null,"253ecd69",null).exports;class Fn{constructor(){(function(t,e,r){(e=function(t){var e=function(t){if("object"!=typeof t||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r})(this,"_actions",void 0),this._actions=[]}get actions(){return this._actions}addAction(t){this._actions.push(t)}}var zn=n(61338),Hn=n(81222),Vn=n(54562);const qn={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Wn=(0,Tn.A)(qn,function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},[],!1,null,null,null).exports,Gn={name:"DotsGridIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},$n=(0,Tn.A)(Gn,function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon dots-grid-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12 16C13.1 16 14 16.9 14 18S13.1 20 12 20 10 19.1 10 18 10.9 16 12 16M12 10C13.1 10 14 10.9 14 12S13.1 14 12 14 10 13.1 10 12 10.9 10 12 10M12 4C13.1 4 14 4.9 14 6S13.1 8 12 8 10 7.1 10 6 10.9 4 12 4M6 16C7.1 16 8 16.9 8 18S7.1 20 6 20 4 19.1 4 18 4.9 16 6 16M6 10C7.1 10 8 10.9 8 12S7.1 14 6 14 4 13.1 4 12 4.9 10 6 10M6 4C7.1 4 8 4.9 8 6S7.1 8 6 8 4 7.1 4 6 4.9 4 6 4M18 16C19.1 16 20 16.9 20 18S19.1 20 18 20 16 19.1 16 18 16.9 16 18 16M18 10C19.1 10 20 10.9 20 12S19.1 14 18 14 16 13.1 16 12 16.9 10 18 10M18 4C19.1 4 20 4.9 20 6S19.1 8 18 8 16 7.1 16 6 16.9 4 18 4Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},[],!1,null,null,null).exports,Yn=(0,Xr.pM)({__name:"AppItem",props:{app:null,newTab:{type:Boolean},outlined:{type:Boolean},tabindex:{default:-1}},setup(t){const e=t,r=(0,Xr.EW)(()=>{if(e.app.unread)return(0,Yr.n)("core","{count} notification","{count} notifications",e.app.unread,{count:e.app.unread})});return{__sfc:!0,props:e,unreadLabel:r}}});var Kn=n(17973),Jn={};Jn.styleTagTransform=En(),Jn.setAttributes=xn(),Jn.insert=bn().bind(null,"head"),Jn.domAPI=yn(),Jn.insertStyleElement=_n(),gn()(Kn.A,Jn),Kn.A&&Kn.A.locals&&Kn.A.locals;const Xn=(0,Tn.A)(Yn,function(){var t=this,e=t._self._c,r=t._self._setupProxy;return e("a",{staticClass:"app-item",class:{"app-item--active":t.app.active,"app-item--outlined":t.outlined},attrs:{href:t.app.href,target:t.newTab?"_blank":void 0,rel:t.newTab?"noopener noreferrer":void 0,"aria-current":t.app.active?"page":void 0,tabindex:t.tabindex,title:t.app.name,role:"menuitem"}},[e("span",{staticClass:"app-item__circle"},[e("img",{staticClass:"app-item__icon",attrs:{src:t.app.icon,alt:"","aria-hidden":"true"}}),t._v(" "),t.app.unread?e("span",{staticClass:"app-item__unread",attrs:{"aria-hidden":"true"}}):t._e()]),t._v(" "),e("span",{staticClass:"app-item__label"},[t._v("\n\t\t"+t._s(t.app.name)+"\n\t\t"),t.app.unread?e("span",{staticClass:"hidden-visually"},[t._v(", "+t._s(r.unreadLabel))]):t._e()])])},[],!1,null,"278c0168",null).exports,Qn=new Set(["logout"]),Zn=(0,Xr.pM)({name:"AppMenu",components:{AppItem:Xn,IconCog:Wn,IconDotsGrid:$n,NcButton:nn.A,NcPopover:Vn.A},setup(){const t=(0,Xr.KR)(!1);return{t:Yr.t,n:Yr.n,opened:t}},data:()=>({appList:(0,Hn.C)("core","apps",[]),settingsList:(0,Hn.C)("core","settingsNavEntries",{}),isAdmin:(0,c.HW)()?.isAdmin??!1,focusedIndex:0,openedFrom:null,moreAppsEntry:{id:"more-apps",active:!1,order:Number.MAX_SAFE_INTEGER,href:(0,l.Jv)("/settings/apps"),icon:(0,l.d0)("core","actions/add.svg"),type:"link",name:(0,Yr.t)("core","More apps"),unread:0},appStoreEntry:{id:"app-store",active:!1,order:Number.MAX_SAFE_INTEGER,href:"https://apps.nextcloud.com/",icon:(0,l.d0)("core","actions/add.svg"),type:"link",name:(0,Yr.t)("core","App store"),unread:0},popoverSkidding:(0,Yr.V8)()?82:-82}),computed:{currentApp(){return this.appList.find(t=>t.active)??Object.values(this.settingsList).find(t=>t.active&&!Qn.has(t.id))},displayName(){return this.currentApp?"settings"===this.currentApp.type?(0,Yr.t)("core","Settings"):this.currentApp.name:""},currentAppLabel(){return this.currentApp?(0,Yr.t)("core","Open apps menu, currently in {app}",{app:this.displayName}):(0,Yr.t)("core","Open apps menu")},gridItems(){const t=this.isAdmin?this.moreAppsEntry:this.appStoreEntry;return[...this.appList,t]}},watch:{opened(t){t&&(this.focusedIndex=this.activeGridIndex(),this.tryRecomputeGridMaxHeight(5))}},mounted(){(0,zn.B1)("nextcloud:app-menu.refresh",this.setApps),this.focusedIndex=this.activeGridIndex(),this.$refs.popover.$on("after-hide",this.onPopoverAfterHide)},beforeUnmount(){(0,zn.al)("nextcloud:app-menu.refresh",this.setApps),this.$refs.popover?.$off("after-hide",this.onPopoverAfterHide)},methods:{returnFocusTarget(){return"currentApp"===this.openedFrom?this.$el.querySelector(".app-menu__current-app"):this.$el.querySelector(".app-menu__waffle")},onPopoverAfterHide(){this.openedFrom=null},onTriggerClick(t){this.openedFrom=t,this.opened=!this.opened},setNavigationCounter(t,e){const r=this.appList.find(({app:e})=>e===t);r?r.unread=e:jn.warn(`Could not find app "${t}" for setting navigation count`)},setApps({apps:t}){this.appList=t,this.focusedIndex>=this.gridItems.length&&(this.focusedIndex=this.activeGridIndex())},tryRecomputeGridMaxHeight(t){!this.opened||t<=0||(this.$refs.grid?this.recomputeGridMaxHeight():requestAnimationFrame(()=>this.tryRecomputeGridMaxHeight(t-1)))},recomputeGridMaxHeight(){const t=this.$refs.grid;if(!t)return;const e=t.children;if(e.length<=24)return void(t.style.maxHeight="");const r=e[24],n=e[0];if(!r||!n)return;const o=r.getBoundingClientRect().top-n.getBoundingClientRect().top,i=parseFloat(getComputedStyle(t).getPropertyValue("--default-grid-baseline"))||4;t.style.maxHeight=`${o+6*i}px`},activeGridIndex(){const t=this.gridItems.findIndex(t=>t.active);return-1===t?0:t},async onGridKeydown(t){if(t.ctrlKey||t.metaKey||t.altKey||t.shiftKey)return;if(0===this.gridItems.length)return;const e=this.gridItems.length,r=this.focusedIndex;let n=r;switch(t.key){case"ArrowRight":r%4!=3&&r+1=0&&(n=r-4);break;case"Home":n=0;break;case"End":n=e-1;break;case"Enter":case" ":{const e=this.$refs.items;return e?.[this.focusedIndex]?.$el?.click(),this.opened=!1,t.preventDefault(),void t.stopPropagation()}default:return}t.preventDefault(),t.stopPropagation(),n!==r&&(this.focusedIndex=n),await this.$nextTick();const o=this.$refs.items;o?.[this.focusedIndex]?.$el?.focus()}}});var to=n(64062),eo={};eo.styleTagTransform=En(),eo.setAttributes=xn(),eo.insert=bn().bind(null,"head"),eo.domAPI=yn(),eo.insertStyleElement=_n(),gn()(to.A,eo),to.A&&to.A.locals&&to.A.locals;var ro=n(28690),no={};no.styleTagTransform=En(),no.setAttributes=xn(),no.insert=bn().bind(null,"head"),no.domAPI=yn(),no.insertStyleElement=_n(),gn()(ro.A,no),ro.A&&ro.A.locals&&ro.A.locals;const oo=(0,Tn.A)(Zn,function(){var t=this,e=t._self._c;return t._self._setupProxy,e("nav",{staticClass:"app-menu",attrs:{"aria-label":t.t("core","Applications")}},[e("NcPopover",{ref:"popover",attrs:{shown:t.opened,triggers:[],placement:"bottom-start",skidding:t.popoverSkidding,"set-return-focus":t.returnFocusTarget,"popover-base-class":"app-menu__popover-base","popup-role":"menu"},on:{"update:shown":function(e){t.opened=e}},scopedSlots:t._u([{key:"trigger",fn:function(){return[e("NcButton",{staticClass:"app-menu__waffle",attrs:{variant:"tertiary-no-background","aria-label":t.t("core","Open apps menu"),"aria-haspopup":"menu","aria-expanded":t.opened?"true":"false"},on:{click:function(e){return t.onTriggerClick("waffle")}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("IconDotsGrid",{attrs:{size:20}})]},proxy:!0}])})]},proxy:!0}])},[t._v(" "),e("div",{staticClass:"app-menu__popover",attrs:{role:"menu","aria-label":t.t("core","Apps")}},[e("div",{ref:"grid",staticClass:"app-menu__grid",on:{keydown:t.onGridKeydown}},t._l(t.gridItems,function(r,n){return e("AppItem",{key:r.id,ref:"items",refInFor:!0,attrs:{app:r,outlined:"more-apps"===r.id||"app-store"===r.id,"new-tab":"app-store"===r.id,tabindex:n===t.focusedIndex?0:-1}})}),1)])]),t._v(" "),t.currentApp?e("NcButton",{staticClass:"app-menu__current-app",attrs:{variant:"tertiary-no-background","aria-label":t.currentAppLabel,"aria-haspopup":"menu","aria-expanded":t.opened?"true":"false"},on:{click:function(e){return t.onTriggerClick("currentApp")}},scopedSlots:t._u([{key:"icon",fn:function(){return["settings"===t.currentApp.type?e("IconCog",{staticClass:"app-menu__current-app-cog",attrs:{size:20}}):e("img",{staticClass:"app-menu__current-app-icon",attrs:{src:t.currentApp.icon,alt:"","aria-hidden":"true"}})]},proxy:!0}],null,!1,3821102756)},[t._v(" "),e("span",{staticClass:"app-menu__current-app-name"},[t._v("\n\t\t\t"+t._s(t.displayName)+"\n\t\t")])]):t._e()],1)},[],!1,null,"20019127",null).exports;var io=n(87485),ao=n(1522);const so=(0,Hn.C)("core","versionHash",""),co=(0,Xr.pM)({name:"AccountMenuEntry",components:{NcListItem:ao.A,NcLoadingIcon:cn.A},props:{id:{type:String,required:!0},name:{type:String,required:!0},href:{type:String,required:!0},active:{type:Boolean,default:!1},icon:{type:String,default:""}},data:()=>({loading:!1}),computed:{iconSource(){return`${this.icon}?v=${so}`}},methods:{onClick(t){this.$emit("click",t),t.defaultPrevented||(this.loading=!0)}}});var uo=n(51286),lo={};lo.styleTagTransform=En(),lo.setAttributes=xn(),lo.insert=bn().bind(null,"head"),lo.domAPI=yn(),lo.insertStyleElement=_n(),gn()(uo.A,lo),uo.A&&uo.A.locals&&uo.A.locals;const fo=(0,Tn.A)(co,function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcListItem",{staticClass:"account-menu-entry",attrs:{id:t.href?void 0:t.id,"anchor-id":t.id,active:t.active,compact:"",href:t.href,name:t.name,target:"_self"},on:{click:t.onClick},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading?e("NcLoadingIcon",{staticClass:"account-menu-entry__loading",attrs:{size:20}}):t.$scopedSlots.icon?t._t("icon"):e("img",{staticClass:"account-menu-entry__icon",class:{"account-menu-entry__icon--active":t.active},attrs:{src:t.iconSource,alt:""}})]},proxy:!0}])})},[],!1,null,"bdb908d2",null).exports;var po=n(93346),ho=n(98469);const vo={name:"QrcodeScanIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},go=(0,Tn.A)(vo,function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon qrcode-scan-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M4,4H10V10H4V4M20,4V10H14V4H20M14,15H16V13H14V11H16V13H18V11H20V13H18V15H20V18H18V20H16V18H13V20H11V16H14V15M16,15V18H18V15H16M4,20V14H10V20H4M6,6V8H8V6H6M16,6V8H18V6H16M6,16V18H8V16H6M4,11H6V13H4V11M9,11H13V15H11V13H9V11M11,6H13V10H11V6M2,2V6H0V2A2,2 0 0,1 2,0H6V2H2M22,0A2,2 0 0,1 24,2V6H22V2H18V0H22M2,18V22H6V24H2A2,2 0 0,1 0,22V18H2M22,22V18H24V22A2,2 0 0,1 22,24H18V22H22Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},[],!1,null,null,null).exports;var mo=n(17816),yo=n.n(mo),Ao=n(55581),bo=n(94219);const wo=(0,Xr.pM)({__name:"AccountQRLoginDialog",props:{data:null},emits:["close"],setup(t,{emit:e}){const r=t,n=window.OC.theme.productName,o=[{label:(0,Yr.t)("spreed","Done"),variant:"primary",callback:()=>{}}],i=3===(r.data?.deviceToken?.type??1),a=(0,Xr.EW)(()=>{const t=r.data?.loginName??"",e=r.data?.token??"";return`nc://${i?"onetime-login":"login"}/user:${t}&password:${e}&server:${(0,l.$_)()}`}),s=(r.data?.deviceToken?.lastActivity?1e3*r.data.deviceToken.lastActivity:Date.now())+12e4,c=setTimeout(()=>{f("expired")},s-Date.now()),u=(0,Ao.SX)(s);function f(t){clearTimeout(c),e("close",t)}return{__sfc:!0,props:r,emit:e,productName:n,buttons:o,isOneTimeToken:i,qrUrl:a,expirationTimestamp:s,expireTimeout:c,timeCountdown:u,onClosing:f,QR:yo(),t:Yr.t,NcDialog:bo.A}}}),xo=wo;var Co=n(35644),_o={};_o.styleTagTransform=En(),_o.setAttributes=xn(),_o.insert=bn().bind(null,"head"),_o.domAPI=yn(),_o.insertStyleElement=_n(),gn()(Co.A,_o),Co.A&&Co.A.locals&&Co.A.locals;const So=(0,Tn.A)(xo,function(){var t=this,e=t._self._c,r=t._self._setupProxy;return e(r.NcDialog,{attrs:{name:r.t("core","Scan QR code to log in"),buttons:r.buttons},on:{closing:r.onClosing}},[e("div",{staticClass:"qr-login__content"},[e("p",{staticClass:"qr-login__description"},[t._v("\n\t\t\t"+t._s(r.t("core","Use {productName} mobile client you want to connect to scan the code",{productName:r.productName}))+"\n\t\t")]),t._v(" "),e(r.QR,{attrs:{value:r.qrUrl}}),t._v(" "),r.isOneTimeToken?[t._v("\n\t\t\t"+t._s(r.t("core","Code will expire {timeCountdown} or after use",{timeCountdown:r.timeCountdown}))+"\n\t\t")]:t._e()],2)])},[],!1,null,null,null).exports;(0,po.IF)(u.Ay);const{profileEnabled:Eo}=(0,Hn.C)("user_status","profileEnabled",{profileEnabled:!1}),ko=(0,io.F)().core?.["can-create-app-token"]??!1,Oo=(0,Xr.pM)({name:"AccountMenuProfileEntry",components:{IconQrcodeScan:go,NcButton:nn.A,NcListItem:ao.A,NcLoadingIcon:cn.A},props:{id:{type:String,required:!0},name:{type:String,required:!0},href:{type:String,required:!0},active:{type:Boolean,required:!0}},setup:()=>({canCreateAppToken:ko,displayName:(0,c.HW)().displayName,profileEnabled:Eo,t:Yr.t}),data:()=>({loading:!1}),mounted(){(0,zn.B1)("settings:profile-enabled:updated",this.handleProfileEnabledUpdate),(0,zn.B1)("settings:display-name:updated",this.handleDisplayNameUpdate)},beforeDestroy(){(0,zn.al)("settings:profile-enabled:updated",this.handleProfileEnabledUpdate),(0,zn.al)("settings:display-name:updated",this.handleDisplayNameUpdate)},methods:{handleClick(){this.profileEnabled&&(this.loading=!0)},async handleQrCodeClick(){const{data:t}=await u.Ay.post((0,l.Jv)("/settings/personal/authtokens"),{qrcodeLogin:!0},{confirmPassword:po.mH.Strict});await(0,ho.S)(So,{data:t})},handleProfileEnabledUpdate(t){this.profileEnabled=t},handleDisplayNameUpdate(t){this.displayName=t}}}),To=Oo,Io=(0,Tn.A)(To,function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcListItem",{attrs:{id:t.profileEnabled?void 0:t.id,"anchor-id":t.id,active:t.active,compact:"",href:t.profileEnabled?t.href:void 0,name:t.displayName,target:"_self"},scopedSlots:t._u([t.profileEnabled?{key:"subname",fn:function(){return[t._v("\n\t\t"+t._s(t.name)+"\n\t")]},proxy:!0}:null,t.canCreateAppToken?{key:"extra-actions",fn:function(){return[e("NcButton",{attrs:{"aria-label":t.t("core","Show QR code for mobile app login"),variant:"secondary"},on:{click:t.handleQrCodeClick},scopedSlots:t._u([{key:"icon",fn:function(){return[e("IconQrcodeScan",{attrs:{size:20}})]},proxy:!0}],null,!1,3784924786)})]},proxy:!0}:null,t.loading?{key:"indicator",fn:function(){return[e("NcLoadingIcon")]},proxy:!0}:null],null,!0)})},[],!1,null,null,null).exports,Ro=[{type:"online",label:(0,Yr.t)("user_status","Online")},{type:"away",label:(0,Yr.t)("user_status","Away")},{type:"busy",label:(0,Yr.t)("user_status","Busy")},{type:"dnd",label:(0,Yr.t)("user_status","Do not disturb"),subline:(0,Yr.t)("user_status","Mute all notifications")},{type:"invisible",label:(0,Yr.t)("user_status","Invisible"),subline:(0,Yr.t)("user_status","Appear offline")}],jo=(0,Xr.pM)({name:"AccountMenu",components:{AccountMenuEntry:fo,AccountMenuProfileEntry:Io,NcAvatar:dn.A,NcHeaderMenu:an.A},setup(){const t=(0,Hn.C)("core","settingsNavEntries",{}),{profile:e,...r}=t;return{currentDisplayName:(0,c.HW)()?.displayName??(0,c.HW)().uid,currentUserId:(0,c.HW)().uid,profileEntry:e,otherEntries:r,t:Yr.t}},data:()=>({showUserStatus:!1,userStatus:{status:null,icon:null,message:null}}),computed:{translatedUserStatus(){return{...this.userStatus,status:this.translateStatus(this.userStatus.status)}},avatarDescription(){return[(0,Yr.t)("core","Avatar of {displayName}",{displayName:this.currentDisplayName}),...Object.values(this.translatedUserStatus).filter(Boolean)].join(" — ")}},async created(){if(!(0,io.F)()?.user_status?.enabled)return;const t=(0,l.KT)("/apps/user_status/api/v1/user_status");try{const e=await u.Ay.get(t),{status:r,icon:n,message:o}=e.data.ocs.data;this.userStatus={status:r,icon:n,message:o}}catch(t){jn.error("Failed to load user status",{error:t})}this.showUserStatus=!0},mounted(){(0,zn.B1)("user_status:status.updated",this.handleUserStatusUpdated),(0,zn.Ic)("core:user-menu:mounted")},methods:{handleUserStatusUpdated(t){this.currentUserId===t.userId&&(this.userStatus={status:t.status,icon:t.icon,message:t.message})},translateStatus(t){const e=Object.fromEntries(Ro.map(({type:t,label:e})=>[t,e]));return e[t]?e[t]:t}}});var Mo=n(33096),No={};No.styleTagTransform=En(),No.setAttributes=xn(),No.insert=bn().bind(null,"head"),No.domAPI=yn(),No.insertStyleElement=_n(),gn()(Mo.A,No),Mo.A&&Mo.A.locals&&Mo.A.locals;const Po=(0,Tn.A)(jo,function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcHeaderMenu",{staticClass:"account-menu",attrs:{id:"user-menu","is-nav":"","aria-label":t.t("core","Settings menu"),description:t.avatarDescription},scopedSlots:t._u([{key:"trigger",fn:function(){return[e("NcAvatar",{key:String(t.showUserStatus),staticClass:"account-menu__avatar",attrs:{"disable-menu":"","disable-tooltip":"","hide-user-status":!t.showUserStatus,user:t.currentUserId,"preloaded-user-status":t.userStatus}})]},proxy:!0}])},[t._v(" "),e("ul",{staticClass:"account-menu__list"},[e("AccountMenuProfileEntry",{attrs:{id:t.profileEntry.id,name:t.profileEntry.name,href:t.profileEntry.href,active:t.profileEntry.active}}),t._v(" "),t._l(t.otherEntries,function(t){return e("AccountMenuEntry",{key:t.id,attrs:{id:t.id,name:t.name,href:t.href,active:t.active,icon:t.icon}})})],2)])},[],!1,null,"6c007912",null).exports;function Lo(){return document.head.dataset.requesttoken}const{auto_logout:Do,session_keepalive:Bo,session_lifetime:Uo}=(0,Hn.C)("core","config",{});async function Fo(){try{await async function(){const t=(0,l.Jv)("/csrftoken"),e=await fetch(t);if(!e.ok)throw new Error("Could not fetch CSRF token from API",{cause:e});const{token:r}=await e.json();return function(t){if(!t||"string"!=typeof t)throw new Error("Invalid CSRF token given",{cause:{token:t}});document.head.dataset.requesttoken=t,(0,zn.Ic)("csrf-token-update",{token:t})}(r),r}()}catch(t){jn.error("session heartbeat failed",{error:t})}}function zo(){const t=window.setInterval(Fo,1e3*function(){const t=Uo?Math.floor(Uo/2):900;return Math.min(86400,Math.max(60,t))}());return jn.info("session heartbeat polling started"),t}function Ho(t){const e=document.createElement("textarea"),r=document.createTextNode(t);e.appendChild(r),document.body.appendChild(e),e.focus({preventScroll:!0}),e.select();try{document.execCommand("copy")}catch(e){window.prompt((0,Yr.t)("core","Clipboard not available, please copy manually"),t),jn.error("files Unable to copy to clipboard",{error:e})}document.body.removeChild(e)}function Vo(t){const e=window.location.protocol+"//"+window.location.host+(0,l.aU)();return t.startsWith(e)||function(t){return!t.startsWith("https://")&&!t.startsWith("http://")}(t)&&t.startsWith((0,l.aU)())}async function qo(){if(null!==(0,c.HW)()&&!0!==qo.running){qo.running=!0;try{const{status:t}=await window.fetch((0,l.Jv)("/apps/files"));401===t&&(jn.warn("User session was terminated, forwarding to login page."),await async function(){try{window.localStorage.clear(),window.sessionStorage.clear();const t=await window.indexedDB.databases();for(const e of t)await window.indexedDB.deleteDatabase(e.name);jn.debug("Browser storages cleared")}catch(t){jn.error("Could not clear browser storages",{error:t})}}(),window.location=(0,l.Jv)("/login?redirect_url={url}",{url:window.location.pathname+window.location.search+window.location.hash}))}catch(t){jn.warn("Could not check login-state",{error:t})}finally{delete qo.running}}}const Wo={zh:"zh-cn",zh_Hans:"zh-cn",zh_Hans_CN:"zh-cn",zh_Hans_HK:"zh-cn",zh_Hans_MO:"zh-cn",zh_Hans_SG:"zh-cn",zh_Hant:"zh-hk",zh_Hant_HK:"zh-hk",zh_Hant_MO:"zh-mo",zh_Hant_TW:"zh-tw"};let Go=(0,Yr.JK)();function $o(){var t;XMLHttpRequest.prototype.open=(t=XMLHttpRequest.prototype.open,function(e,r){t.apply(this,arguments),Vo(r)&&(this.getResponseHeader("X-Requested-With")||this.setRequestHeader("X-Requested-With","XMLHttpRequest"),this.addEventListener("loadend",function(){401===this.status&&qo()}))}),window.fetch=function(t){return async(e,r)=>{if(!Vo(e.url??e.toString()))return await t(e,r);r||(r={}),r.headers||(r.headers=new Headers),r.headers instanceof Headers&&!r.headers.has("X-Requested-With")?r.headers.append("X-Requested-With","XMLHttpRequest"):r.headers instanceof Object&&!r.headers["X-Requested-With"]&&(r.headers["X-Requested-With"]="XMLHttpRequest");const n=await t(e,r);return 401===n.status&&qo(),n}}(window.fetch),window.navigator?.clipboard?.writeText||(jn.info("Clipboard API not available, using fallback"),Object.defineProperty(window.navigator,"clipboard",{value:{writeText:Ho},writable:!1})),function(){if(function(){if(!Do||!(0,c.HW)())return;let t=Date.now();window.addEventListener("mousemove",()=>{t=Date.now(),localStorage.setItem("lastActive",JSON.stringify(t))}),window.addEventListener("touchstart",()=>{t=Date.now(),localStorage.setItem("lastActive",JSON.stringify(t))}),window.addEventListener("storage",e=>{"lastActive"===e.key&&null!==e.newValue&&(t=JSON.parse(e.newValue))});let e=0;e=window.setInterval(()=>{const r=Date.now()-1e3*(Uo??86400);if(t{jn.info("Browser is online again, resuming heartbeat"),t=zo();try{await Fo(),jn.info("Session token successfully updated after resuming network"),(0,zn.Ic)("networkOnline",{success:!0})}catch(t){jn.error("could not update session token after resuming network",{error:t}),(0,zn.Ic)("networkOnline",{success:!1})}}),window.addEventListener("offline",()=>{jn.info("Browser is offline, stopping heartbeat"),(0,zn.Ic)("networkOffline",{}),clearInterval(t),jn.info("Session heartbeat polling stopped")})}(),function(){Xr.Ay.mixin({methods:{t:Yr.Tl,n:Yr.zw}});const t=document.getElementById("header-start__appmenu");if(!t)return;const e=new(Xr.Ay.extend(oo))({}).$mount(t);Object.assign(OC,{setNavigationCounter(t,r){e.setNavigationCounter(t,r)}})}(),function(){const t=document.getElementById("user-menu");t&&new Xr.Ay({name:"AccountMenuRoot",el:t,render:t=>t(Po)})}(),function(){const t=document.getElementById("contactsmenu");t&&(window.OC.ContactsMenu=new Fn,new Xr.Ay({name:"ContactsMenuRoot",el:t,render:t=>t(Un)}))}()}Object.hasOwn(Wo,Go)&&(Go=Wo[Go]),Jr().locale(Go);var Yo=n(71225);const Ko=!!window._oc_isadmin,Jo=window.oc_appconfig||{},Xo=void 0!==window._oc_appswebroots&&window._oc_appswebroots,Qo=window._oc_config||{},Zo=document.getElementsByTagName("head")[0].getAttribute("data-user"),ti=document.getElementsByTagName("head")[0].getAttribute("data-user-displayname"),ei=void 0!==Zo&&Zo,ri=window._oc_debug;var ni=n(21363),oi=n(85168),ii=n(43627);const ai={YES_NO_BUTTONS:70,OK_BUTTONS:71,FILEPICKER_TYPE_CHOOSE:1,FILEPICKER_TYPE_MOVE:2,FILEPICKER_TYPE_COPY:3,FILEPICKER_TYPE_COPY_MOVE:4,FILEPICKER_TYPE_CUSTOM:5,alert:function(t,e,r,n){this.message(t,e,"alert",ai.OK_BUTTON,r,n)},info:function(t,e,r,n){this.message(t,e,"info",ai.OK_BUTTON,r,n)},confirm:function(t,e,r,n){return this.message(t,e,"notice",ai.YES_NO_BUTTONS,r,n)},confirmDestructive:function(t,e,r=ai.OK_BUTTONS,n=()=>{}){return(new oi.ik).setName(e).setText(t).setButtons(r===ai.OK_BUTTONS?[{label:(0,Yr.t)("core","Yes"),variant:"error",callback:()=>{n.clicked=!0,n(!0)}}]:ai._getLegacyButtons(r,n)).build().show().then(()=>{n.clicked||n(!1)})},confirmHtml:function(t,e,r){return(new oi.ik).setName(e).setText("").setButtons([{label:(0,Yr.t)("core","No"),callback:()=>{}},{label:(0,Yr.t)("core","Yes"),variant:"primary",callback:()=>{r.clicked=!0,r(!0)}}]).build().setHTML(t).show().then(()=>{r.clicked||r(!1)})},prompt:function(t,e,r,o,i,a){return new Promise(o=>{(0,ho.S)((0,Xr.$V)(()=>Promise.all([n.e(4208),n.e(9553)]).then(n.bind(n,99553))),{text:t,name:e,callback:r,inputName:i,isPassword:!!a},(...t)=>{r(...t),o()})})},filepicker(t,e,r=!1,n=void 0,o=void 0,i=oi.bh.Choose,a=void 0,s=void 0){const c=(t,e)=>{const n=t=>{const e=t?.root||"";let r=t?.path||"";return r.startsWith(e)&&(r=r.slice(e.length)||"/"),r};return r?r=>t(r.map(n),e):r=>t(n(r[0]),e)},u=(0,oi.a1)(t);i===this.FILEPICKER_TYPE_CUSTOM?(s.buttons||[]).forEach(t=>{u.addButton({callback:c(e,t.type),label:t.text,variant:t.defaultButton?"primary":"secondary"})}):u.setButtonFactory((t,r)=>{const n=[],[o]=t,a=o?.displayname||o?.basename||(0,ii.basename)(r);return i===oi.bh.Choose&&n.push({callback:c(e,oi.bh.Choose),label:o&&!this.multiSelect?(0,Yr.t)("core","Choose {file}",{file:a}):(0,Yr.t)("core","Choose"),variant:"primary"}),i!==oi.bh.CopyMove&&i!==oi.bh.Copy||n.push({callback:c(e,oi.bh.Copy),label:a?(0,Yr.t)("core","Copy to {target}",{target:a}):(0,Yr.t)("core","Copy"),variant:"primary",icon:ni}),i!==oi.bh.Move&&i!==oi.bh.CopyMove||n.push({callback:c(e,oi.bh.Move),label:a?(0,Yr.t)("core","Move to {target}",{target:a}):(0,Yr.t)("core","Move"),variant:i===oi.bh.Move?"primary":"secondary",icon:''}),n}),n&&u.setMimeTypeFilter("string"==typeof n?[n]:n||[]),"function"==typeof s?.filter&&u.setFilter(t=>s.filter((t=>({id:t.fileid||null,path:t.path,mimetype:t.mime||null,mtime:t.mtime?.getTime()||null,permissions:t.permissions,name:t.attributes?.displayName||t.basename,etag:t.attributes?.etag||null,hasPreview:t.attributes?.hasPreview||null,mountType:t.attributes?.mountType||null,quotaAvailableBytes:t.attributes?.quotaAvailableBytes||null,icon:null,sharePermissions:null}))(t))),u.allowDirectories(!0===s?.allowDirectoryChooser||n?.includes("httpd/unix-directory")||!1).setMultiSelect(r).startAt(a).build().pick()},message:function(t,e,r,n,o=()=>{},i,a){const s=(new oi.ik).setName(e).setText(a?"":t).setButtons(ai._getLegacyButtons(n,o));switch(r){case"alert":s.setSeverity("warning");break;case"notice":s.setSeverity("info")}const c=s.build();return a&&c.setHTML(t),c.show().then(()=>{o._clicked||o(!1)})},_getLegacyButtons(t,e){const r=[];switch("object"==typeof t?t.type:t){case ai.YES_NO_BUTTONS:r.push({label:t?.cancel??(0,Yr.t)("core","No"),callback:()=>{e._clicked=!0,e(!1)}}),r.push({label:t?.confirm??(0,Yr.t)("core","Yes"),variant:"primary",callback:()=>{e._clicked=!0,e(!0)}});break;case ai.OK_BUTTONS:r.push({label:t?.confirm??(0,Yr.t)("core","OK"),variant:"primary",callback:()=>{e._clicked=!0,e(!0)}});break;default:jn.error("Invalid call to OC.dialogs")}return r}},si=ai;function ci(t,e){let r,n,o="";if(this.typelessListeners=[],this.closed=!1,e)for(r in e)o+=r+"="+encodeURIComponent(e[r])+"&";o+="requesttoken="+encodeURIComponent(Lo()),n="&",-1===t.indexOf("?")&&(n="?"),this.source=new EventSource(t+n+o),this.source.onmessage=function(t){for(let e=0;et.cancel()),r.style.display="block")},finishedSaving(t,e){this.finishedAction(t,e)},finishedAction(t,e){"success"===e.status?this.finishedSuccess(t,e.data.message):this.finishedError(t,e.data.message)},finishedSuccess(t,e){const r=document.querySelector(t);r&&r instanceof HTMLElement&&(r.textContent=e,r.classList.remove("error"),r.classList.add("success"),r.getAnimations?.().forEach(t=>t.cancel()),window.setTimeout(function(){if(!(r&&r instanceof HTMLElement))return;const t=r.animate?.([{opacity:1},{opacity:0}],{duration:900,fill:"forwards"});t?t.addEventListener("finish",()=>{r.style.display="none"}):window.setTimeout(()=>{r.style.display="none"},900)},3e3),r.style.display="block")},finishedError(t,e){const r=document.querySelector(t);r&&r instanceof HTMLElement&&(r.textContent=e,r.classList.remove("success"),r.classList.add("error"),r.style.display="block")}},gi={requiresPasswordConfirmation:()=>(0,po.oB)(),requirePasswordConfirmation(t,e,r){(0,po.C5)().then(t,r)}},mi={_plugins:{},register(t,e){let r=this._plugins[t];r||(r=this._plugins[t]=[]),r.push(e)},getPlugins(t){return this._plugins[t]||[]},attach(t,e,r){const n=this.getPlugins(t);for(let t=0;t="0"&&r<="9";a!==i&&(o++,e[o]="",i=a),e[o]+=r,n++}return e}const wi={History:{_handlers:[],_pushState(t,e,r){let n;if(n="string"==typeof t?t:_i.buildQueryString(t),window.history.pushState){if(e=e||location.pathname+"?"+n,navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&parseInt(navigator.userAgent.split("/").pop())<51){const t=document.querySelectorAll('[fill^="url(#"], [stroke^="url(#"], [filter^="url(#invert"]');for(let e,r=0,n=t.length;r=0?t.substr(e+1):t.length?t.substr(1):""},_decodeQuery:t=>t.replace(/\+/g," "),parseUrlQuery(){const t=this._parseHashQuery();let e;return t&&(e=_i.parseQueryString(this._decodeQuery(t))),e=$r.extend(e||{},_i.parseQueryString(this._decodeQuery(location.search))),e||{}},_onPopState(t){if(this._cancelPop)return void(this._cancelPop=!1);let e;if(this._handlers.length){e=t&&t.state,$r.isString(e)?e=_i.parseQueryString(e):e||(e=this.parseUrlQuery()||{});for(let t=0;t(void 0===window.TESTING&&_i.debug&&jn.warn("OC.Util.formatDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment"),e=e||"LLL",Jr()(t).format(e)),relativeModifiedDate(e){void 0===window.TESTING&&_i.debug&&jn.warn("OC.Util.relativeModifiedDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment");const r=Jr()().diff(Jr()(e));return r>=0&&r<45e3?t("core","seconds ago"):Jr()(e).fromNow()},getScrollBarWidth(){if(this._scrollBarWidth)return this._scrollBarWidth;const t=document.createElement("p");t.style.width="100%",t.style.height="200px";const e=document.createElement("div");e.style.position="absolute",e.style.top="0px",e.style.left="0px",e.style.visibility="hidden",e.style.width="200px",e.style.height="150px",e.style.overflow="hidden",e.appendChild(t),document.body.appendChild(e);const r=t.offsetWidth;e.style.overflow="scroll";let n=t.offsetWidth;return r===n&&(n=e.clientWidth),document.body.removeChild(e),this._scrollBarWidth=r-n,this._scrollBarWidth},stripTime:t=>new Date(t.getFullYear(),t.getMonth(),t.getDate()),naturalSortCompare(t,e){let r;const n=bi(t),o=bi(e);for(r=0;n[r]&&o[r];r++)if(n[r]!==o[r]){const t=Number(n[r]),e=Number(o[r]);return t==n[r]&&e==o[r]?t-e:n[r].localeCompare(o[r],_i.getLanguage())}return n.length-o.length},waitFor(t,e){const r=function(){!0!==t()&&setTimeout(r,e)};r()},isCookieSetToValue(t,e){const r=document.cookie.split(";");for(let n=0;n!$_",appConfig:Jo,appswebroots:Xo,config:Qo,currentUser:ei,dialogs:si,EventSource:ui,MimeType:i,getCurrentUser:function(){return{uid:ei,displayName:ti}},isUserAdmin:()=>Ko,L10N:li,registerXHRForErrorProcessing:()=>{},getCapabilities:function(){return OC.debug&&jn.warn("OC.getCapabilities is deprecated and will be removed in Nextcloud 21. See @nextcloud/capabilities"),(0,io.F)()},basename:Yo.P8,encodePath:Yo.O0,dirname:Yo.pD,isSamePath:Yo.ys,joinPaths:Yo.fj,getCanonicalLocale:Yr.lO,getLocale:Yr.JK,getLanguage:Yr.Z0,buildQueryString:function(t){return t?new URLSearchParams(t).toString():""},parseQueryString:function(t){const e=new URLSearchParams(t);return Object.fromEntries(e.entries())},msg:vi,PasswordConfirmation:gi,Plugins:mi,theme:yi,Util:wi,debug:ri,filePath:l.fg,generateUrl:l.Jv,getRootPath:l.aU,imagePath:l.d0,requestToken:Lo(),linkTo:l.uM,linkToOCS:(t,e)=>(0,l.KT)(t,{},{ocsVersion:e||1})+"/",linkToRemote:l.dC,linkToRemoteBase:function(t){return(0,l.aU)()+"/remote.php/"+t},webroot:Ci};(0,zn.B1)("csrf-token-update",t=>{OC.requestToken=t.token,jn.info("OC.requestToken changed",{token:t.token})}),n(84315),n(7452);var Si=n(57576),Ei=n.n(Si),ki=n(78112);const Oi={disableKeyboardShortcuts:()=>(0,Hn.C)("theming","shortcutsDisabled",!1),setPageHeading:function(t){const e=document.getElementById("page-heading-level-1");e&&(e.textContent=t)}};async function Ti(t,e,r={}){"post"!==t&&"delete"!==t||!(0,po.oB)(po.mH.Lax)||await(0,po.C5)();try{const{data:n}=await u.Ay.request({method:t.toLowerCase(),url:(0,l.KT)("apps/provisioning_api/api/v1/config/apps")+e,data:r.data||{}});r.success?.(n.ocs.data)}catch(t){r.error?.(t)}}function Ii(t){Ti("get","",t)}function Ri(t,e){Ti("get","/"+t,e)}function ji(t,e,r,n){(n=n||{}).data={defaultValue:r},Ti("get","/"+t+"/"+e,n)}function Mi(t,e,r,n){(n=n||{}).data={value:r},Ti("post","/"+t+"/"+e,n)}function Ni(t,e,r){Ti("delete","/"+t+"/"+e,r)}var Pi=n(70580),Li=n.n(Pi);const Di={},Bi={registerType(t,e){Di[t]=e},trigger:t=>Di[t].action(),getTypes:()=>Object.keys(Di),getIcon:t=>Di[t].typeIconClass||"",getLabel:t=>Li()(Di[t].typeString||t),getLink:(t,e)=>void 0!==Di[t]?Di[t].link(e):""},Ui=/(\s|^)(https?:\/\/)([-A-Z0-9+_.]+(?::[0-9]+)?(?:\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*)(\s|$)/gi;function Fi(t){return Hi(t)}function zi(t){return Vi(t)}function Hi(t){return t.replace(Ui,function(t,e,r,n,o){let i=n;return r?"http://"===r&&(i=r+n):r="https://",e+''+i+""+o})}function Vi(t){const e=document.createElement("div");return e.innerHTML=t,e.querySelectorAll("a").forEach(t=>{t.replaceWith(document.createTextNode(t.getAttribute("href")||""))}),e.innerHTML}const qi={},Wi={},Gi={loadScript(t,e){const r=t+e;return Object.hasOwn(qi,r)?Promise.resolve():(qi[r]=!0,new Promise(function(r,n){const o=(0,l.fg)(t,"js",e),i=document.createElement("script");i.src=o,i.setAttribute("nonce",btoa(OC.requestToken)),i.onload=()=>r(),i.onerror=()=>n(new Error(`Failed to load script from ${o}`)),document.head.appendChild(i)}))},loadStylesheet(t,e){const r=t+e;return Object.hasOwn(Wi,r)?Promise.resolve():(Wi[r]=!0,new Promise(function(r,n){const o=(0,l.fg)(t,"css",e),i=document.createElement("link");i.href=o,i.type="text/css",i.rel="stylesheet",i.onload=()=>r(),i.onerror=()=>n(new Error(`Failed to load stylesheet from ${o}`)),document.head.appendChild(i)}))}},$i={success:(t,e)=>(0,oi.Te)(t,e),warning:(t,e)=>(0,oi.I9)(t,e),error:(t,e)=>(0,oi.Qg)(t,e),info:(t,e)=>(0,oi.cf)(t,e),message:(t,e)=>(0,oi.rG)(t,e)},Yi={Accessibility:Oi,AppConfig:a,Collaboration:Bi,Comments:s,InitialState:{loadState:Hn.C},Loader:Gi,Toast:$i};function Ki(t,e,r){(Array.isArray(t)?t:[t]).forEach(t=>{void 0!==window[t]&&delete window[t],Object.defineProperty(window,t,{get:()=>(function(){void 0===window.TESTING&&_i.debug&&console.warn.apply(console,arguments)}(r?`${t} is deprecated: ${r}`:`${t} is deprecated`),e())})})}Ki(["_"],()=>$r,"The global underscore is deprecated. It will be removed in a later versions without another warning. Please ship your own."),Ki(["Clipboard","ClipboardJS"],()=>Ei(),"please ship your own, this will be removed in Nextcloud 20"),Ki(["dav"],()=>ki.dav,"please ship your own. It will be removed in a later versions without another warning. Please ship your own."),Ki("moment",()=>Jr(),"please ship your own, this will be removed in Nextcloud 20"),window.OC=_i,Ki("initCore",()=>$o,"this is an internal function"),Ki("oc_appswebroots",()=>_i.appswebroots,"use OC.appswebroots instead, this will be removed in Nextcloud 20"),Ki("oc_config",()=>_i.config,"use OC.config instead, this will be removed in Nextcloud 20"),Ki("oc_current_user",()=>_i.getCurrentUser().uid,"use OC.getCurrentUser().uid instead, this will be removed in Nextcloud 20"),Ki("oc_debug",()=>_i.debug,"use OC.debug instead, this will be removed in Nextcloud 20"),Ki("oc_defaults",()=>_i.theme,"use OC.theme instead, this will be removed in Nextcloud 20"),Ki("oc_isadmin",_i.isUserAdmin,"use OC.isUserAdmin() instead, this will be removed in Nextcloud 20"),Ki("oc_requesttoken",()=>Lo(),"use OC.requestToken instead, this will be removed in Nextcloud 20"),Ki("oc_webroot",()=>_i.webroot,"use OC.getRootPath() instead, this will be removed in Nextcloud 20"),Ki("OCDialogs",()=>_i.dialogs,"use OC.dialogs instead, this will be removed in Nextcloud 20"),window.OCP=Yi,window.OCA={},window.t=$r.bind(_i.L10N.translate,_i.L10N),window.n=$r.bind(_i.L10N.translatePlural,_i.L10N),n.nc=(0,c.aV)(),window.addEventListener("DOMContentLoaded",function(){$o(),window.history.pushState?window.onpopstate=$r.bind(_i.Util.History._onPopState,_i.Util.History):window.onhashchange=$r.bind(_i.Util.History._onPopState,_i.Util.History)}),document.addEventListener("DOMContentLoaded",function(){const t=document.getElementById("password-input-form");t&&t.addEventListener("submit",async function(e){e.preventDefault();const r=document.getElementById("requesttoken");if(r){const t=(0,l.Jv)("/csrftoken"),e=await u.Ay.get(t);r.value=e.data.token}t.submit()})})},57576(t){var e;e=function(){return function(){var t={686:function(t,e,r){"use strict";r.d(e,{default:function(){return b}});var n=r(279),o=r.n(n),i=r(370),a=r.n(i),s=r(817),c=r.n(s);function u(t){try{return document.execCommand(t)}catch(t){return!1}}var l=function(t){var e=c()(t);return u("cut"),e},f=function(t,e){var r=function(t){var e="rtl"===document.documentElement.getAttribute("dir"),r=document.createElement("textarea");r.style.fontSize="12pt",r.style.border="0",r.style.padding="0",r.style.margin="0",r.style.position="absolute",r.style[e?"right":"left"]="-9999px";var n=window.pageYOffset||document.documentElement.scrollTop;return r.style.top="".concat(n,"px"),r.setAttribute("readonly",""),r.value=t,r}(t);e.container.appendChild(r);var n=c()(r);return u("copy"),r.remove(),n},p=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{container:document.body},r="";return"string"==typeof t?r=f(t,e):t instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(null==t?void 0:t.type)?r=f(t.value,e):(r=c()(t),u("copy")),r};function d(t){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},d(t)}function h(t){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},h(t)}function v(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===h(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=a()(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget,r=this.action(e)||"copy",n=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.action,r=void 0===e?"copy":e,n=t.container,o=t.target,i=t.text;if("copy"!==r&&"cut"!==r)throw new Error('Invalid "action" value, use either "copy" or "cut"');if(void 0!==o){if(!o||"object"!==d(o)||1!==o.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===r&&o.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===r&&(o.hasAttribute("readonly")||o.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes')}return i?p(i,{container:n}):o?"cut"===r?l(o):p(o,{container:n}):void 0}({action:r,container:this.container,target:this.target(e),text:this.text(e)});this.emit(n?"success":"error",{action:r,text:n,trigger:e,clearSelection:function(){e&&e.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(t){return y("action",t)}},{key:"defaultTarget",value:function(t){var e=y("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return y("text",t)}},{key:"destroy",value:function(){this.listener.destroy()}}],n=[{key:"copy",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{container:document.body};return p(t,e)}},{key:"cut",value:function(t){return l(t)}},{key:"isSupported",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["copy","cut"],e="string"==typeof t?[t]:t,r=!!document.queryCommandSupported;return e.forEach(function(t){r=r&&!!document.queryCommandSupported(t)}),r}}],r&&v(e.prototype,r),n&&v(e,n),c}(o()),b=A},828:function(t){if("undefined"!=typeof Element&&!Element.prototype.matches){var e=Element.prototype;e.matches=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector}t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},438:function(t,e,r){var n=r(828);function o(t,e,r,n,o){var a=i.apply(this,arguments);return t.addEventListener(r,a,o),{destroy:function(){t.removeEventListener(r,a,o)}}}function i(t,e,r,o){return function(r){r.delegateTarget=n(r.target,e),r.delegateTarget&&o.call(t,r)}}t.exports=function(t,e,r,n,i){return"function"==typeof t.addEventListener?o.apply(null,arguments):"function"==typeof r?o.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return o(t,e,r,n,i)}))}},879:function(t,e){e.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},e.nodeList=function(t){var r=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===r||"[object HTMLCollection]"===r)&&"length"in t&&(0===t.length||e.node(t[0]))},e.string=function(t){return"string"==typeof t||t instanceof String},e.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},370:function(t,e,r){var n=r(879),o=r(438);t.exports=function(t,e,r){if(!t&&!e&&!r)throw new Error("Missing required arguments");if(!n.string(e))throw new TypeError("Second argument must be a String");if(!n.fn(r))throw new TypeError("Third argument must be a Function");if(n.node(t))return function(t,e,r){return t.addEventListener(e,r),{destroy:function(){t.removeEventListener(e,r)}}}(t,e,r);if(n.nodeList(t))return function(t,e,r){return Array.prototype.forEach.call(t,function(t){t.addEventListener(e,r)}),{destroy:function(){Array.prototype.forEach.call(t,function(t){t.removeEventListener(e,r)})}}}(t,e,r);if(n.string(t))return function(t,e,r){return o(document.body,t,e,r)}(t,e,r);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}},817:function(t){t.exports=function(t){var e;if("SELECT"===t.nodeName)t.focus(),e=t.value;else if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName){var r=t.hasAttribute("readonly");r||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),r||t.removeAttribute("readonly"),e=t.value}else{t.hasAttribute("contenteditable")&&t.focus();var n=window.getSelection(),o=document.createRange();o.selectNodeContents(t),n.removeAllRanges(),n.addRange(o),e=n.toString()}return e}},279:function(t){function e(){}e.prototype={on:function(t,e,r){var n=this.e||(this.e={});return(n[t]||(n[t]=[])).push({fn:e,ctx:r}),this},once:function(t,e,r){var n=this;function o(){n.off(t,o),e.apply(r,arguments)}return o._=e,this.on(t,o,r)},emit:function(t){for(var e=[].slice.call(arguments,1),r=((this.e||(this.e={}))[t]||[]).slice(),n=0,o=r.length;n to actually break with a hyphen.\n\t\t-webkit-hyphens: auto;\n\t\thyphens: auto;\n\t\tword-break: normal;\n\t\toverflow-wrap: break-word;\n\t\tmax-width: 100%;\n\t\tletter-spacing: -0.3px;\n\t}\n\n\t&--active &__label {\n\t\tfont-weight: bold;\n\t}\n\n\t// Outlined variant: no fill or gradient.\n\t&--outlined &__circle {\n\t\tbackground: transparent;\n\t\tbackground-image: none;\n\t\tbox-shadow: inset 0 0 0 2px var(--color-border-maxcontrast);\n\t}\n\n\t&--outlined &__icon {\n\t\tfilter: var(--background-invert-if-dark);\n\t\tmask: none;\n\t}\n}\n"],sourceRoot:""}]);const s=a;r.d(e,["A",0,s])},64062(t,e,r){"use strict";var n=r(71354),o=r.n(n),i=r(76314),a=r.n(i)()(o());a.push([t.id,".app-menu[data-v-20019127]{display:flex;align-items:center}.app-menu__waffle[data-v-20019127]{--color-main-text: var(--color-background-plain-text);color:var(--color-background-plain-text)}.app-menu__waffle[data-v-20019127]:hover:not(:disabled){background-color:rgba(0,0,0,.1) !important}.app-menu__waffle[data-v-20019127]:active:not(:disabled){background-color:rgba(0,0,0,.15) !important}.app-menu__waffle[data-v-20019127]:focus-visible{background-color:rgba(0,0,0,.1) !important;outline:none !important;box-shadow:inset 0 0 0 2px var(--color-background-plain-text) !important}.app-menu__current-app[data-v-20019127]{--color-main-text: var(--color-background-plain-text);color:var(--color-background-plain-text)}.app-menu__current-app[data-v-20019127]:hover:not(:disabled){background-color:rgba(0,0,0,.1) !important}.app-menu__current-app[data-v-20019127]:active:not(:disabled){background-color:rgba(0,0,0,.15) !important}.app-menu__current-app[data-v-20019127]:focus-visible{background-color:rgba(0,0,0,.1) !important;outline:none !important;box-shadow:inset 0 0 0 2px var(--color-background-plain-text) !important}.app-menu__current-app[data-v-20019127] .button-vue__text{min-width:0}@media only screen and (max-width: 1024px){.app-menu__current-app[data-v-20019127]{display:none !important}}.app-menu__current-app-icon[data-v-20019127]{width:calc(var(--default-grid-baseline)*5);height:calc(var(--default-grid-baseline)*5);filter:var(--background-image-invert-if-bright);mask:var(--header-menu-icon-mask)}.app-menu__current-app-cog[data-v-20019127]{mask:var(--header-menu-icon-mask)}.app-menu__current-app-name[data-v-20019127]{display:inline-block;vertical-align:middle;font-size:var(--default-font-size);font-weight:500;white-space:nowrap;letter-spacing:-0.5px;overflow:hidden;text-overflow:ellipsis;max-width:clamp(80px,22vw,320px)}.app-menu__popover[data-v-20019127]{max-width:calc(100vw - var(--default-grid-baseline)*4);background-color:var(--color-main-background)}.app-menu__grid[data-v-20019127]{--app-item-col-width: 69px;--app-item-row-height: 64px;box-sizing:border-box;padding:calc(var(--default-grid-baseline)*2);display:grid;grid-template-columns:repeat(4, var(--app-item-col-width));grid-auto-rows:minmax(var(--app-item-row-height), max-content);overflow-y:auto}.app-menu__grid[data-v-20019127]>:nth-child(-n+4){padding-block-start:calc(var(--default-grid-baseline)*2) !important}.app-menu__grid[data-v-20019127]{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar) rgba(0,0,0,0)}","",{version:3,sources:["webpack://./core/src/components/AppMenu.vue"],names:[],mappings:"AACA,2BACC,YAAA,CACA,kBAAA,CAEA,mCAIC,qDAAA,CACA,wCAAA,CAKA,wDACC,0CAAA,CAGD,yDACC,2CAAA,CAGD,iDACC,0CAAA,CACA,uBAAA,CACA,wEAAA,CAIF,wCAIC,qDAAA,CACA,wCAAA,CAMA,6DACC,0CAAA,CAGD,8DACC,2CAAA,CAGD,sDACC,0CAAA,CACA,uBAAA,CACA,wEAAA,CAKD,0DACC,WAAA,CAGD,2CA/BD,wCAgCE,uBAAA,CAAA,CAIF,6CACC,0CAAA,CACA,2CAAA,CAEA,+CAAA,CACA,iCAAA,CAGD,4CACC,iCAAA,CAGD,6CAEC,oBAAA,CACA,qBAAA,CACA,kCAAA,CACA,eAAA,CACA,kBAAA,CACA,qBAAA,CACA,eAAA,CACA,sBAAA,CAGA,gCAAA,CAGD,oCACC,sDAAA,CACA,6CAAA,CAGD,iCACC,0BAAA,CACA,2BAAA,CAGA,qBAAA,CACA,4CAAA,CACA,YAAA,CACA,0DAAA,CACA,8DAAA,CAEA,eAAA,CAKA,kDACC,mEAAA,CAjBF,iCAsBC,oBAAA,CACA,oDAAA",sourcesContent:["\n.app-menu {\n\tdisplay: flex;\n\talign-items: center;\n\n\t&__waffle {\n\t\t// NcButton's tertiary-no-background variant uses --color-main-text,\n\t\t// which is dark on light themes. The header sits on the theme primary\n\t\t// background, so override to use the matching plain-text color.\n\t\t--color-main-text: var(--color-background-plain-text);\n\t\tcolor: var(--color-background-plain-text);\n\n\t\t// Class merges onto NcButton's root