diff options
author | John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com> | 2021-12-02 22:39:00 +0100 |
---|---|---|
committer | John Molakvoæ <skjnldsv@protonmail.com> | 2022-01-08 10:14:52 +0100 |
commit | fc536de25cb93292639c6258bd631f9aaf685565 (patch) | |
tree | b8f171bc9d4b01858ab70080adf873850eb425e8 /dist/core-files_client.js.map | |
parent | 87d0904b6f6209a553efd5d405c917012a91e259 (diff) | |
download | nextcloud-server-fc536de25cb93292639c6258bd631f9aaf685565.tar.gz nextcloud-server-fc536de25cb93292639c6258bd631f9aaf685565.zip |
Ensure mapfile consistency
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Diffstat (limited to 'dist/core-files_client.js.map')
-rw-r--r-- | dist/core-files_client.js.map | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/dist/core-files_client.js.map b/dist/core-files_client.js.map index 9ba42a5c676..709eb95a0bc 100644 --- a/dist/core-files_client.js.map +++ b/dist/core-files_client.js.map @@ -1 +1 @@ -{"version":3,"file":"core-files_client.js?v=082b41c84af1e3678086","mappings":"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","sources":["webpack://nextcloud/webpack/runtime/chunk loaded","webpack://nextcloud/./core/src/files/client.js","webpack://nextcloud/webpack/bootstrap","webpack://nextcloud/webpack/runtime/amd define","webpack://nextcloud/webpack/runtime/amd options","webpack://nextcloud/webpack/runtime/compat get default export","webpack://nextcloud/webpack/runtime/define property getters","webpack://nextcloud/webpack/runtime/global","webpack://nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack://nextcloud/webpack/runtime/make namespace object","webpack://nextcloud/webpack/runtime/node module decorator","webpack://nextcloud/webpack/runtime/runtimeId","webpack://nextcloud/webpack/runtime/jsonp chunk loading","webpack://nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * Copyright (c) 2015\n *\n * @author Bjoern Schiessle <bjoern@schiessle.org>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Lukas Reschke <lukas@statuscode.ch>\n * @author Michael Jobst <mjobst+github@tecratech.de>\n * @author Robin Appelman <robin@icewind.nl>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Thomas Citharel <nextcloud@tcit.fr>\n * @author Tomasz Grobelny <tomasz@grobelny.net>\n * @author Vincent Petry <vincent@nextcloud.com>\n * @author Vinicius Cubas Brand <vinicius@eita.org.br>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\nimport escapeHTML from 'escape-html'\n\n/* global dav */\n\n(function(OC, FileInfo) {\n\t/**\n\t * @class OC.Files.Client\n\t * @classdesc Client to access files on the server\n\t *\n\t * @param {Object} options\n\t * @param {String} options.host host name\n\t * @param {int} [options.port] port\n\t * @param {boolean} [options.useHTTPS] whether to use https\n\t * @param {String} [options.root] root path\n\t * @param {String} [options.userName] user name\n\t * @param {String} [options.password] password\n\t *\n\t * @since 8.2\n\t */\n\tvar Client = function(options) {\n\t\tthis._root = options.root\n\t\tif (this._root.charAt(this._root.length - 1) === '/') {\n\t\t\tthis._root = this._root.substr(0, this._root.length - 1)\n\t\t}\n\n\t\tlet url = Client.PROTOCOL_HTTP + '://'\n\t\tif (options.useHTTPS) {\n\t\t\turl = Client.PROTOCOL_HTTPS + '://'\n\t\t}\n\n\t\turl += options.host + this._root\n\t\tthis._host = options.host\n\t\tthis._defaultHeaders = options.defaultHeaders || {\n\t\t\t'X-Requested-With': 'XMLHttpRequest',\n\t\t\t'requesttoken': OC.requestToken,\n\t\t}\n\t\tthis._baseUrl = url\n\n\t\tconst clientOptions = {\n\t\t\tbaseUrl: this._baseUrl,\n\t\t\txmlNamespaces: {\n\t\t\t\t'DAV:': 'd',\n\t\t\t\t'http://owncloud.org/ns': 'oc',\n\t\t\t\t'http://nextcloud.org/ns': 'nc',\n\t\t\t\t'http://open-collaboration-services.org/ns': 'ocs',\n\t\t\t},\n\t\t}\n\t\tif (options.userName) {\n\t\t\tclientOptions.userName = options.userName\n\t\t}\n\t\tif (options.password) {\n\t\t\tclientOptions.password = options.password\n\t\t}\n\t\tthis._client = new dav.Client(clientOptions)\n\t\tthis._client.xhrProvider = _.bind(this._xhrProvider, this)\n\t\tthis._fileInfoParsers = []\n\t}\n\n\tClient.NS_OWNCLOUD = 'http://owncloud.org/ns'\n\tClient.NS_NEXTCLOUD = 'http://nextcloud.org/ns'\n\tClient.NS_DAV = 'DAV:'\n\tClient.NS_OCS = 'http://open-collaboration-services.org/ns'\n\n\tClient.PROPERTY_GETLASTMODIFIED\t= '{' + Client.NS_DAV + '}getlastmodified'\n\tClient.PROPERTY_GETETAG\t= '{' + Client.NS_DAV + '}getetag'\n\tClient.PROPERTY_GETCONTENTTYPE\t= '{' + Client.NS_DAV + '}getcontenttype'\n\tClient.PROPERTY_RESOURCETYPE\t= '{' + Client.NS_DAV + '}resourcetype'\n\tClient.PROPERTY_INTERNAL_FILEID\t= '{' + Client.NS_OWNCLOUD + '}fileid'\n\tClient.PROPERTY_PERMISSIONS\t= '{' + Client.NS_OWNCLOUD + '}permissions'\n\tClient.PROPERTY_SIZE\t= '{' + Client.NS_OWNCLOUD + '}size'\n\tClient.PROPERTY_GETCONTENTLENGTH\t= '{' + Client.NS_DAV + '}getcontentlength'\n\tClient.PROPERTY_ISENCRYPTED\t= '{' + Client.NS_DAV + '}is-encrypted'\n\tClient.PROPERTY_SHARE_PERMISSIONS\t= '{' + Client.NS_OCS + '}share-permissions'\n\tClient.PROPERTY_QUOTA_AVAILABLE_BYTES\t= '{' + Client.NS_DAV + '}quota-available-bytes'\n\n\tClient.PROTOCOL_HTTP\t= 'http'\n\tClient.PROTOCOL_HTTPS\t= 'https'\n\n\tClient._PROPFIND_PROPERTIES = [\n\t\t/**\n\t\t * Modified time\n\t\t */\n\t\t[Client.NS_DAV, 'getlastmodified'],\n\t\t/**\n\t\t * Etag\n\t\t */\n\t\t[Client.NS_DAV, 'getetag'],\n\t\t/**\n\t\t * Mime type\n\t\t */\n\t\t[Client.NS_DAV, 'getcontenttype'],\n\t\t/**\n\t\t * Resource type \"collection\" for folders, empty otherwise\n\t\t */\n\t\t[Client.NS_DAV, 'resourcetype'],\n\t\t/**\n\t\t * File id\n\t\t */\n\t\t[Client.NS_OWNCLOUD, 'fileid'],\n\t\t/**\n\t\t * Letter-coded permissions\n\t\t */\n\t\t[Client.NS_OWNCLOUD, 'permissions'],\n\t\t// [Client.NS_OWNCLOUD, 'downloadURL'],\n\t\t/**\n\t\t * Folder sizes\n\t\t */\n\t\t[Client.NS_OWNCLOUD, 'size'],\n\t\t/**\n\t\t * File sizes\n\t\t */\n\t\t[Client.NS_DAV, 'getcontentlength'],\n\t\t[Client.NS_DAV, 'quota-available-bytes'],\n\t\t/**\n\t\t * Preview availability\n\t\t */\n\t\t[Client.NS_NEXTCLOUD, 'has-preview'],\n\t\t/**\n\t\t * Mount type\n\t\t */\n\t\t[Client.NS_NEXTCLOUD, 'mount-type'],\n\t\t/**\n\t\t * Encryption state\n\t\t */\n\t\t[Client.NS_NEXTCLOUD, 'is-encrypted'],\n\t\t/**\n\t\t * Share permissions\n\t\t */\n\t\t[Client.NS_OCS, 'share-permissions'],\n\t]\n\n\t/**\n\t * @memberof OC.Files\n\t */\n\tClient.prototype = {\n\n\t\t/**\n\t\t * Root path of the Webdav endpoint\n\t\t *\n\t\t * @type string\n\t\t */\n\t\t_root: null,\n\n\t\t/**\n\t\t * Client from the library\n\t\t *\n\t\t * @type dav.Client\n\t\t */\n\t\t_client: null,\n\n\t\t/**\n\t\t * Array of file info parsing functions.\n\t\t *\n\t\t * @type Array<OC.Files.Client~parseFileInfo>\n\t\t */\n\t\t_fileInfoParsers: [],\n\n\t\t/**\n\t\t * Returns the configured XHR provider for davclient\n\t\t * @returns {XMLHttpRequest}\n\t\t */\n\t\t_xhrProvider: function() {\n\t\t\tconst headers = this._defaultHeaders\n\t\t\tconst xhr = new XMLHttpRequest()\n\t\t\tconst oldOpen = xhr.open\n\t\t\t// override open() method to add headers\n\t\t\txhr.open = function() {\n\t\t\t\tconst result = oldOpen.apply(this, arguments)\n\t\t\t\t_.each(headers, function(value, key) {\n\t\t\t\t\txhr.setRequestHeader(key, value)\n\t\t\t\t})\n\t\t\t\treturn result\n\t\t\t}\n\n\t\t\tOC.registerXHRForErrorProcessing(xhr)\n\t\t\treturn xhr\n\t\t},\n\n\t\t/**\n\t\t * Prepends the base url to the given path sections\n\t\t *\n\t\t * @param {...String} path sections\n\t\t *\n\t\t * @returns {String} base url + joined path, any leading or trailing slash\n\t\t * will be kept\n\t\t */\n\t\t_buildUrl: function() {\n\t\t\tlet path = this._buildPath.apply(this, arguments)\n\t\t\tif (path.charAt([path.length - 1]) === '/') {\n\t\t\t\tpath = path.substr(0, path.length - 1)\n\t\t\t}\n\t\t\tif (path.charAt(0) === '/') {\n\t\t\t\tpath = path.substr(1)\n\t\t\t}\n\t\t\treturn this._baseUrl + '/' + path\n\t\t},\n\n\t\t/**\n\t\t * Append the path to the root and also encode path\n\t\t * sections\n\t\t *\n\t\t * @param {...String} path sections\n\t\t *\n\t\t * @returns {String} joined path, any leading or trailing slash\n\t\t * will be kept\n\t\t */\n\t\t_buildPath: function() {\n\t\t\tlet path = OC.joinPaths.apply(this, arguments)\n\t\t\tconst sections = path.split('/')\n\t\t\tlet i\n\t\t\tfor (i = 0; i < sections.length; i++) {\n\t\t\t\tsections[i] = encodeURIComponent(sections[i])\n\t\t\t}\n\t\t\tpath = sections.join('/')\n\t\t\treturn path\n\t\t},\n\n\t\t/**\n\t\t * Parse headers string into a map\n\t\t *\n\t\t * @param {string} headersString headers list as string\n\t\t *\n\t\t * @returns {Object.<String,Array>} map of header name to header contents\n\t\t */\n\t\t_parseHeaders: function(headersString) {\n\t\t\tconst headerRows = headersString.split('\\n')\n\t\t\tconst headers = {}\n\t\t\tfor (let i = 0; i < headerRows.length; i++) {\n\t\t\t\tconst sepPos = headerRows[i].indexOf(':')\n\t\t\t\tif (sepPos < 0) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\n\t\t\t\tconst headerName = headerRows[i].substr(0, sepPos)\n\t\t\t\tconst headerValue = headerRows[i].substr(sepPos + 2)\n\n\t\t\t\tif (!headers[headerName]) {\n\t\t\t\t\t// make it an array\n\t\t\t\t\theaders[headerName] = []\n\t\t\t\t}\n\n\t\t\t\theaders[headerName].push(headerValue)\n\t\t\t}\n\t\t\treturn headers\n\t\t},\n\n\t\t/**\n\t\t * Parses the etag response which is in double quotes.\n\t\t *\n\t\t * @param {string} etag etag value in double quotes\n\t\t *\n\t\t * @returns {string} etag without double quotes\n\t\t */\n\t\t_parseEtag: function(etag) {\n\t\t\tif (etag.charAt(0) === '\"') {\n\t\t\t\treturn etag.split('\"')[1]\n\t\t\t}\n\t\t\treturn etag\n\t\t},\n\n\t\t/**\n\t\t * Parse Webdav result\n\t\t *\n\t\t * @param {Object} response XML object\n\t\t *\n\t\t * @returns {Array.<FileInfo>} array of file info\n\t\t */\n\t\t_parseFileInfo: function(response) {\n\t\t\tlet path = decodeURIComponent(response.href)\n\t\t\tif (path.substr(0, this._root.length) === this._root) {\n\t\t\t\tpath = path.substr(this._root.length)\n\t\t\t}\n\n\t\t\tif (path.charAt(path.length - 1) === '/') {\n\t\t\t\tpath = path.substr(0, path.length - 1)\n\t\t\t}\n\n\t\t\tif (response.propStat.length === 0 || response.propStat[0].status !== 'HTTP/1.1 200 OK') {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\tconst props = response.propStat[0].properties\n\n\t\t\tconst data = {\n\t\t\t\tid: props[Client.PROPERTY_INTERNAL_FILEID],\n\t\t\t\tpath: OC.dirname(path) || '/',\n\t\t\t\tname: OC.basename(path),\n\t\t\t\tmtime: (new Date(props[Client.PROPERTY_GETLASTMODIFIED])).getTime(),\n\t\t\t}\n\n\t\t\tconst etagProp = props[Client.PROPERTY_GETETAG]\n\t\t\tif (!_.isUndefined(etagProp)) {\n\t\t\t\tdata.etag = this._parseEtag(etagProp)\n\t\t\t}\n\n\t\t\tlet sizeProp = props[Client.PROPERTY_GETCONTENTLENGTH]\n\t\t\tif (!_.isUndefined(sizeProp)) {\n\t\t\t\tdata.size = parseInt(sizeProp, 10)\n\t\t\t}\n\n\t\t\tsizeProp = props[Client.PROPERTY_SIZE]\n\t\t\tif (!_.isUndefined(sizeProp)) {\n\t\t\t\tdata.size = parseInt(sizeProp, 10)\n\t\t\t}\n\n\t\t\tconst hasPreviewProp = props['{' + Client.NS_NEXTCLOUD + '}has-preview']\n\t\t\tif (!_.isUndefined(hasPreviewProp)) {\n\t\t\t\tdata.hasPreview = hasPreviewProp === 'true'\n\t\t\t} else {\n\t\t\t\tdata.hasPreview = true\n\t\t\t}\n\n\t\t\tconst isEncryptedProp = props['{' + Client.NS_NEXTCLOUD + '}is-encrypted']\n\t\t\tif (!_.isUndefined(isEncryptedProp)) {\n\t\t\t\tdata.isEncrypted = isEncryptedProp === '1'\n\t\t\t} else {\n\t\t\t\tdata.isEncrypted = false\n\t\t\t}\n\n\t\t\tconst isFavouritedProp = props['{' + Client.NS_OWNCLOUD + '}favorite']\n\t\t\tif (!_.isUndefined(isFavouritedProp)) {\n\t\t\t\tdata.isFavourited = isFavouritedProp === '1'\n\t\t\t} else {\n\t\t\t\tdata.isFavourited = false\n\t\t\t}\n\n\t\t\tconst contentType = props[Client.PROPERTY_GETCONTENTTYPE]\n\t\t\tif (!_.isUndefined(contentType)) {\n\t\t\t\tdata.mimetype = contentType\n\t\t\t}\n\n\t\t\tconst resType = props[Client.PROPERTY_RESOURCETYPE]\n\t\t\tif (!data.mimetype && resType) {\n\t\t\t\tconst xmlvalue = resType[0]\n\t\t\t\tif (xmlvalue.namespaceURI === Client.NS_DAV && xmlvalue.nodeName.split(':')[1] === 'collection') {\n\t\t\t\t\tdata.mimetype = 'httpd/unix-directory'\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdata.permissions = OC.PERMISSION_NONE\n\t\t\tconst permissionProp = props[Client.PROPERTY_PERMISSIONS]\n\t\t\tif (!_.isUndefined(permissionProp)) {\n\t\t\t\tconst permString = permissionProp || ''\n\t\t\t\tdata.mountType = null\n\t\t\t\tfor (let i = 0; i < permString.length; i++) {\n\t\t\t\t\tconst c = permString.charAt(i)\n\t\t\t\t\tswitch (c) {\n\t\t\t\t\t// FIXME: twisted permissions\n\t\t\t\t\tcase 'C':\n\t\t\t\t\tcase 'K':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_CREATE\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'G':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_READ\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'W':\n\t\t\t\t\tcase 'N':\n\t\t\t\t\tcase 'V':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_UPDATE\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'D':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_DELETE\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'R':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_SHARE\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'M':\n\t\t\t\t\t\tif (!data.mountType) {\n\t\t\t\t\t\t\t// TODO: how to identify external-root ?\n\t\t\t\t\t\t\tdata.mountType = 'external'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'S':\n\t\t\t\t\t\t// TODO: how to identify shared-root ?\n\t\t\t\t\t\tdata.mountType = 'shared'\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst sharePermissionsProp = props[Client.PROPERTY_SHARE_PERMISSIONS]\n\t\t\tif (!_.isUndefined(sharePermissionsProp)) {\n\t\t\t\tdata.sharePermissions = parseInt(sharePermissionsProp)\n\t\t\t}\n\n\t\t\tconst mounTypeProp = props['{' + Client.NS_NEXTCLOUD + '}mount-type']\n\t\t\tif (!_.isUndefined(mounTypeProp)) {\n\t\t\t\tdata.mountType = mounTypeProp\n\t\t\t}\n\n\t\t\tconst quotaAvailableBytes = props['{' + Client.NS_DAV + '}quota-available-bytes']\n\t\t\tif (!_.isUndefined(quotaAvailableBytes)) {\n\t\t\t\tdata.quotaAvailableBytes = quotaAvailableBytes\n\t\t\t}\n\n\t\t\t// extend the parsed data using the custom parsers\n\t\t\t_.each(this._fileInfoParsers, function(parserFunction) {\n\t\t\t\t_.extend(data, parserFunction(response, data) || {})\n\t\t\t})\n\n\t\t\treturn new FileInfo(data)\n\t\t},\n\n\t\t/**\n\t\t * Parse Webdav multistatus\n\t\t *\n\t\t * @param {Array} responses\n\t\t */\n\t\t_parseResult: function(responses) {\n\t\t\tconst self = this\n\t\t\treturn _.map(responses, function(response) {\n\t\t\t\treturn self._parseFileInfo(response)\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Returns whether the given status code means success\n\t\t *\n\t\t * @param {int} status status code\n\t\t *\n\t\t * @returns true if status code is between 200 and 299 included\n\t\t */\n\t\t_isSuccessStatus: function(status) {\n\t\t\treturn status >= 200 && status <= 299\n\t\t},\n\n\t\t/**\n\t\t * Parse the Sabre exception out of the given response, if any\n\t\t *\n\t\t * @param {Object} response object\n\t\t * @returns {Object} array of parsed message and exception (only the first one)\n\t\t */\n\t\t_getSabreException: function(response) {\n\t\t\tconst result = {}\n\t\t\tconst xml = response.xhr.responseXML\n\t\t\tif (xml === null) {\n\t\t\t\treturn result\n\t\t\t}\n\t\t\tconst messages = xml.getElementsByTagNameNS('http://sabredav.org/ns', 'message')\n\t\t\tconst exceptions = xml.getElementsByTagNameNS('http://sabredav.org/ns', 'exception')\n\t\t\tif (messages.length) {\n\t\t\t\tresult.message = messages[0].textContent\n\t\t\t}\n\t\t\tif (exceptions.length) {\n\t\t\t\tresult.exception = exceptions[0].textContent\n\t\t\t}\n\t\t\treturn result\n\t\t},\n\n\t\t/**\n\t\t * Returns the default PROPFIND properties to use during a call.\n\t\t *\n\t\t * @returns {Array.<Object>} array of properties\n\t\t */\n\t\tgetPropfindProperties: function() {\n\t\t\tif (!this._propfindProperties) {\n\t\t\t\tthis._propfindProperties = _.map(Client._PROPFIND_PROPERTIES, function(propDef) {\n\t\t\t\t\treturn '{' + propDef[0] + '}' + propDef[1]\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn this._propfindProperties\n\t\t},\n\n\t\t/**\n\t\t * Lists the contents of a directory\n\t\t *\n\t\t * @param {String} path path to retrieve\n\t\t * @param {Object} [options] options\n\t\t * @param {boolean} [options.includeParent=false] set to true to keep\n\t\t * the parent folder in the result list\n\t\t * @param {Array} [options.properties] list of Webdav properties to retrieve\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tgetFolderContents: function(path, options) {\n\t\t\tif (!path) {\n\t\t\t\tpath = ''\n\t\t\t}\n\t\t\toptions = options || {}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\tlet properties\n\t\t\tif (_.isUndefined(options.properties)) {\n\t\t\t\tproperties = this.getPropfindProperties()\n\t\t\t} else {\n\t\t\t\tproperties = options.properties\n\t\t\t}\n\n\t\t\tthis._client.propFind(\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\tproperties,\n\t\t\t\t1\n\t\t\t).then(function(result) {\n\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\tconst results = self._parseResult(result.body)\n\t\t\t\t\tif (!options || !options.includeParent) {\n\t\t\t\t\t\t// remove root dir, the first entry\n\t\t\t\t\t\tresults.shift()\n\t\t\t\t\t}\n\t\t\t\t\tdeferred.resolve(result.status, results)\n\t\t\t\t} else {\n\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Fetches a flat list of files filtered by a given filter criteria.\n\t\t * (currently system tags and circles are supported)\n\t\t *\n\t\t * @param {Object} filter filter criteria\n\t\t * @param {Object} [filter.systemTagIds] list of system tag ids to filter by\n\t\t * @param {bool} [filter.favorite] set it to filter by favorites\n\t\t * @param {Object} [options] options\n\t\t * @param {Array} [options.properties] list of Webdav properties to retrieve\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tgetFilteredFiles: function(filter, options) {\n\t\t\toptions = options || {}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\tlet properties\n\t\t\tif (_.isUndefined(options.properties)) {\n\t\t\t\tproperties = this.getPropfindProperties()\n\t\t\t} else {\n\t\t\t\tproperties = options.properties\n\t\t\t}\n\n\t\t\tif (!filter\n\t\t\t\t|| (!filter.systemTagIds && _.isUndefined(filter.favorite) && !filter.circlesIds)) {\n\t\t\t\tthrow 'Missing filter argument'\n\t\t\t}\n\n\t\t\t// root element with namespaces\n\t\t\tlet body = '<oc:filter-files '\n\t\t\tlet namespace\n\t\t\tfor (namespace in this._client.xmlNamespaces) {\n\t\t\t\tbody += ' xmlns:' + this._client.xmlNamespaces[namespace] + '=\"' + namespace + '\"'\n\t\t\t}\n\t\t\tbody += '>\\n'\n\n\t\t\t// properties query\n\t\t\tbody += ' <' + this._client.xmlNamespaces['DAV:'] + ':prop>\\n'\n\t\t\t_.each(properties, function(prop) {\n\t\t\t\tconst property = self._client.parseClarkNotation(prop)\n\t\t\t\tbody += ' <' + self._client.xmlNamespaces[property.namespace] + ':' + property.name + ' />\\n'\n\t\t\t})\n\n\t\t\tbody += ' </' + this._client.xmlNamespaces['DAV:'] + ':prop>\\n'\n\n\t\t\t// rules block\n\t\t\tbody +=\t' <oc:filter-rules>\\n'\n\t\t\t_.each(filter.systemTagIds, function(systemTagIds) {\n\t\t\t\tbody += ' <oc:systemtag>' + escapeHTML(systemTagIds) + '</oc:systemtag>\\n'\n\t\t\t})\n\t\t\t_.each(filter.circlesIds, function(circlesIds) {\n\t\t\t\tbody += ' <oc:circle>' + escapeHTML(circlesIds) + '</oc:circle>\\n'\n\t\t\t})\n\t\t\tif (filter.favorite) {\n\t\t\t\tbody += ' <oc:favorite>' + (filter.favorite ? '1' : '0') + '</oc:favorite>\\n'\n\t\t\t}\n\t\t\tbody += ' </oc:filter-rules>\\n'\n\n\t\t\t// end of root\n\t\t\tbody += '</oc:filter-files>\\n'\n\n\t\t\tthis._client.request(\n\t\t\t\t'REPORT',\n\t\t\t\tthis._buildUrl(),\n\t\t\t\t{},\n\t\t\t\tbody\n\t\t\t).then(function(result) {\n\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\tconst results = self._parseResult(result.body)\n\t\t\t\t\tdeferred.resolve(result.status, results)\n\t\t\t\t} else {\n\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Returns the file info of a given path.\n\t\t *\n\t\t * @param {String} path path\n\t\t * @param {Array} [options.properties] list of Webdav properties to retrieve\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tgetFileInfo: function(path, options) {\n\t\t\tif (!path) {\n\t\t\t\tpath = ''\n\t\t\t}\n\t\t\toptions = options || {}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\tlet properties\n\t\t\tif (_.isUndefined(options.properties)) {\n\t\t\t\tproperties = this.getPropfindProperties()\n\t\t\t} else {\n\t\t\t\tproperties = options.properties\n\t\t\t}\n\n\t\t\t// TODO: headers\n\t\t\tthis._client.propFind(\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\tproperties,\n\t\t\t\t0\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status, self._parseResult([result.body])[0])\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Returns the contents of the given file.\n\t\t *\n\t\t * @param {String} path path to file\n\t\t *\n\t\t * @returns {Promise}\n\t\t */\n\t\tgetFileContents: function(path) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\n\t\t\tthis._client.request(\n\t\t\t\t'GET',\n\t\t\t\tthis._buildUrl(path)\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status, result.body)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Puts the given data into the given file.\n\t\t *\n\t\t * @param {String} path path to file\n\t\t * @param {String} body file body\n\t\t * @param {Object} [options]\n\t\t * @param {String} [options.contentType='text/plain'] content type\n\t\t * @param {bool} [options.overwrite=true] whether to overwrite an existing file\n\t\t *\n\t\t * @returns {Promise}\n\t\t */\n\t\tputFileContents: function(path, body, options) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\toptions = options || {}\n\t\t\tconst headers = {}\n\t\t\tlet contentType = 'text/plain;charset=utf-8'\n\t\t\tif (options.contentType) {\n\t\t\t\tcontentType = options.contentType\n\t\t\t}\n\n\t\t\theaders['Content-Type'] = contentType\n\n\t\t\tif (_.isUndefined(options.overwrite) || options.overwrite) {\n\t\t\t\t// will trigger 412 precondition failed if a file already exists\n\t\t\t\theaders['If-None-Match'] = '*'\n\t\t\t}\n\n\t\t\tthis._client.request(\n\t\t\t\t'PUT',\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\theaders,\n\t\t\t\tbody || ''\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t_simpleCall: function(method, path) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\n\t\t\tthis._client.request(\n\t\t\t\tmethod,\n\t\t\t\tthis._buildUrl(path)\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Creates a directory\n\t\t *\n\t\t * @param {String} path path to create\n\t\t *\n\t\t * @returns {Promise}\n\t\t */\n\t\tcreateDirectory: function(path) {\n\t\t\treturn this._simpleCall('MKCOL', path)\n\t\t},\n\n\t\t/**\n\t\t * Deletes a file or directory\n\t\t *\n\t\t * @param {String} path path to delete\n\t\t *\n\t\t * @returns {Promise}\n\t\t */\n\t\tremove: function(path) {\n\t\t\treturn this._simpleCall('DELETE', path)\n\t\t},\n\n\t\t/**\n\t\t * Moves path to another path\n\t\t *\n\t\t * @param {String} path path to move\n\t\t * @param {String} destinationPath destination path\n\t\t * @param {boolean} [allowOverwrite=false] true to allow overwriting,\n\t\t * false otherwise\n\t\t * @param {Object} [headers=null] additional headers\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tmove: function(path, destinationPath, allowOverwrite, headers) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\t\t\tif (!destinationPath) {\n\t\t\t\tthrow 'Missing argument \"destinationPath\"'\n\t\t\t}\n\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\theaders = _.extend({}, headers, {\n\t\t\t\t'Destination': this._buildUrl(destinationPath),\n\t\t\t})\n\n\t\t\tif (!allowOverwrite) {\n\t\t\t\theaders.Overwrite = 'F'\n\t\t\t}\n\n\t\t\tthis._client.request(\n\t\t\t\t'MOVE',\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\theaders\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Copies path to another path\n\t\t *\n\t\t * @param {String} path path to copy\n\t\t * @param {String} destinationPath destination path\n\t\t * @param {boolean} [allowOverwrite=false] true to allow overwriting,\n\t\t * false otherwise\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tcopy: function(path, destinationPath, allowOverwrite) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\t\t\tif (!destinationPath) {\n\t\t\t\tthrow 'Missing argument \"destinationPath\"'\n\t\t\t}\n\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\tconst headers = {\n\t\t\t\t'Destination': this._buildUrl(destinationPath),\n\t\t\t}\n\n\t\t\tif (!allowOverwrite) {\n\t\t\t\theaders.Overwrite = 'F'\n\t\t\t}\n\n\t\t\tthis._client.request(\n\t\t\t\t'COPY',\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\theaders\n\t\t\t).then(\n\t\t\t\tfunction(response) {\n\t\t\t\t\tif (self._isSuccessStatus(response.status)) {\n\t\t\t\t\t\tdeferred.resolve(response.status)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tdeferred.reject(response.status)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Add a file info parser function\n\t\t *\n\t\t * @param {OC.Files.Client~parseFileInfo} parserFunction\n\t\t */\n\t\taddFileInfoParser: function(parserFunction) {\n\t\t\tthis._fileInfoParsers.push(parserFunction)\n\t\t},\n\n\t\t/**\n\t\t * Returns the dav.Client instance used internally\n\t\t *\n\t\t * @since 11.0.0\n\t\t * @returns {dav.Client}\n\t\t */\n\t\tgetClient: function() {\n\t\t\treturn this._client\n\t\t},\n\n\t\t/**\n\t\t * Returns the user name\n\t\t *\n\t\t * @since 11.0.0\n\t\t * @returns {String} userName\n\t\t */\n\t\tgetUserName: function() {\n\t\t\treturn this._client.userName\n\t\t},\n\n\t\t/**\n\t\t * Returns the password\n\t\t *\n\t\t * @since 11.0.0\n\t\t * @returns {String} password\n\t\t */\n\t\tgetPassword: function() {\n\t\t\treturn this._client.password\n\t\t},\n\n\t\t/**\n\t\t * Returns the base URL\n\t\t *\n\t\t * @since 11.0.0\n\t\t * @returns {String} base URL\n\t\t */\n\t\tgetBaseUrl: function() {\n\t\t\treturn this._client.baseUrl\n\t\t},\n\n\t\t/**\n\t\t * Returns the host\n\t\t *\n\t\t * @since 13.0.0\n\t\t * @returns {String} base URL\n\t\t */\n\t\tgetHost: function() {\n\t\t\treturn this._host\n\t\t},\n\t}\n\n\t/**\n\t * File info parser function\n\t *\n\t * This function receives a list of Webdav properties as input and\n\t * should return a hash array of parsed properties, if applicable.\n\t *\n\t * @callback OC.Files.Client~parseFileInfo\n\t * @param {Object} XML Webdav properties\n * @return {Array} array of parsed property values\n\t */\n\n\tif (!OC.Files) {\n\t\t/**\n\t\t * @namespace OC.Files\n\t\t *\n\t\t * @since 8.2\n\t\t */\n\t\tOC.Files = {}\n\t}\n\n\t/**\n\t * Returns the default instance of the files client\n\t *\n\t * @returns {OC.Files.Client} default client\n\t *\n\t * @since 8.2\n\t */\n\tOC.Files.getClient = function() {\n\t\tif (OC.Files._defaultClient) {\n\t\t\treturn OC.Files._defaultClient\n\t\t}\n\n\t\tconst client = new OC.Files.Client({\n\t\t\thost: OC.getHost(),\n\t\t\tport: OC.getPort(),\n\t\t\troot: OC.linkToRemoteBase('dav') + '/files/' + OC.getCurrentUser().uid,\n\t\t\tuseHTTPS: OC.getProtocol() === 'https',\n\t\t})\n\t\tOC.Files._defaultClient = client\n\t\treturn client\n\t}\n\n\tOC.Files.Client = Client\n})(OC, OC.Files.FileInfo)\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 578;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t578: 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\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkIds[i]] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [820], () => (__webpack_require__(7913)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OC","FileInfo","Client","options","this","_root","root","charAt","length","substr","url","PROTOCOL_HTTP","useHTTPS","PROTOCOL_HTTPS","host","_host","_defaultHeaders","defaultHeaders","requestToken","_baseUrl","clientOptions","baseUrl","xmlNamespaces","userName","password","_client","dav","xhrProvider","_","bind","_xhrProvider","_fileInfoParsers","NS_OWNCLOUD","NS_NEXTCLOUD","NS_DAV","NS_OCS","PROPERTY_GETLASTMODIFIED","PROPERTY_GETETAG","PROPERTY_GETCONTENTTYPE","PROPERTY_RESOURCETYPE","PROPERTY_INTERNAL_FILEID","PROPERTY_PERMISSIONS","PROPERTY_SIZE","PROPERTY_GETCONTENTLENGTH","PROPERTY_ISENCRYPTED","PROPERTY_SHARE_PERMISSIONS","PROPERTY_QUOTA_AVAILABLE_BYTES","_PROPFIND_PROPERTIES","prototype","headers","xhr","XMLHttpRequest","oldOpen","open","result","apply","arguments","each","value","key","setRequestHeader","registerXHRForErrorProcessing","_buildUrl","path","_buildPath","joinPaths","sections","split","i","encodeURIComponent","join","_parseHeaders","headersString","headerRows","sepPos","indexOf","headerName","headerValue","push","_parseEtag","etag","_parseFileInfo","response","decodeURIComponent","href","propStat","status","props","properties","data","id","dirname","name","basename","mtime","Date","getTime","etagProp","isUndefined","sizeProp","size","parseInt","hasPreviewProp","hasPreview","isEncryptedProp","isEncrypted","isFavouritedProp","isFavourited","contentType","mimetype","resType","xmlvalue","namespaceURI","nodeName","permissions","PERMISSION_NONE","permissionProp","permString","mountType","PERMISSION_CREATE","PERMISSION_READ","PERMISSION_UPDATE","PERMISSION_DELETE","PERMISSION_SHARE","sharePermissionsProp","sharePermissions","mounTypeProp","quotaAvailableBytes","parserFunction","extend","_parseResult","responses","self","map","_isSuccessStatus","_getSabreException","xml","responseXML","messages","getElementsByTagNameNS","exceptions","message","textContent","exception","getPropfindProperties","_propfindProperties","propDef","getFolderContents","$","Deferred","promise","propFind","then","results","body","includeParent","shift","resolve","reject","getFilteredFiles","filter","systemTagIds","favorite","circlesIds","namespace","prop","property","parseClarkNotation","escapeHTML","request","getFileInfo","getFileContents","putFileContents","overwrite","_simpleCall","method","createDirectory","remove","move","destinationPath","allowOverwrite","Overwrite","copy","addFileInfoParser","getClient","getUserName","getPassword","getBaseUrl","getHost","Files","_defaultClient","client","port","getPort","linkToRemoteBase","getCurrentUser","uid","getProtocol","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","loaded","__webpack_modules__","call","m","amdD","Error","amdO","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","Object","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","g","globalThis","Function","e","window","obj","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"file":"core-files_client.js?v=f8604a63ad8c9537a64d","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/core/src/files/client.js","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * Copyright (c) 2015\n *\n * @author Bjoern Schiessle <bjoern@schiessle.org>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Lukas Reschke <lukas@statuscode.ch>\n * @author Michael Jobst <mjobst+github@tecratech.de>\n * @author Robin Appelman <robin@icewind.nl>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Thomas Citharel <nextcloud@tcit.fr>\n * @author Tomasz Grobelny <tomasz@grobelny.net>\n * @author Vincent Petry <vincent@nextcloud.com>\n * @author Vinicius Cubas Brand <vinicius@eita.org.br>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\nimport escapeHTML from 'escape-html'\n\n/* global dav */\n\n(function(OC, FileInfo) {\n\t/**\n\t * @class OC.Files.Client\n\t * @classdesc Client to access files on the server\n\t *\n\t * @param {Object} options\n\t * @param {String} options.host host name\n\t * @param {int} [options.port] port\n\t * @param {boolean} [options.useHTTPS] whether to use https\n\t * @param {String} [options.root] root path\n\t * @param {String} [options.userName] user name\n\t * @param {String} [options.password] password\n\t *\n\t * @since 8.2\n\t */\n\tvar Client = function(options) {\n\t\tthis._root = options.root\n\t\tif (this._root.charAt(this._root.length - 1) === '/') {\n\t\t\tthis._root = this._root.substr(0, this._root.length - 1)\n\t\t}\n\n\t\tlet url = Client.PROTOCOL_HTTP + '://'\n\t\tif (options.useHTTPS) {\n\t\t\turl = Client.PROTOCOL_HTTPS + '://'\n\t\t}\n\n\t\turl += options.host + this._root\n\t\tthis._host = options.host\n\t\tthis._defaultHeaders = options.defaultHeaders || {\n\t\t\t'X-Requested-With': 'XMLHttpRequest',\n\t\t\t'requesttoken': OC.requestToken,\n\t\t}\n\t\tthis._baseUrl = url\n\n\t\tconst clientOptions = {\n\t\t\tbaseUrl: this._baseUrl,\n\t\t\txmlNamespaces: {\n\t\t\t\t'DAV:': 'd',\n\t\t\t\t'http://owncloud.org/ns': 'oc',\n\t\t\t\t'http://nextcloud.org/ns': 'nc',\n\t\t\t\t'http://open-collaboration-services.org/ns': 'ocs',\n\t\t\t},\n\t\t}\n\t\tif (options.userName) {\n\t\t\tclientOptions.userName = options.userName\n\t\t}\n\t\tif (options.password) {\n\t\t\tclientOptions.password = options.password\n\t\t}\n\t\tthis._client = new dav.Client(clientOptions)\n\t\tthis._client.xhrProvider = _.bind(this._xhrProvider, this)\n\t\tthis._fileInfoParsers = []\n\t}\n\n\tClient.NS_OWNCLOUD = 'http://owncloud.org/ns'\n\tClient.NS_NEXTCLOUD = 'http://nextcloud.org/ns'\n\tClient.NS_DAV = 'DAV:'\n\tClient.NS_OCS = 'http://open-collaboration-services.org/ns'\n\n\tClient.PROPERTY_GETLASTMODIFIED\t= '{' + Client.NS_DAV + '}getlastmodified'\n\tClient.PROPERTY_GETETAG\t= '{' + Client.NS_DAV + '}getetag'\n\tClient.PROPERTY_GETCONTENTTYPE\t= '{' + Client.NS_DAV + '}getcontenttype'\n\tClient.PROPERTY_RESOURCETYPE\t= '{' + Client.NS_DAV + '}resourcetype'\n\tClient.PROPERTY_INTERNAL_FILEID\t= '{' + Client.NS_OWNCLOUD + '}fileid'\n\tClient.PROPERTY_PERMISSIONS\t= '{' + Client.NS_OWNCLOUD + '}permissions'\n\tClient.PROPERTY_SIZE\t= '{' + Client.NS_OWNCLOUD + '}size'\n\tClient.PROPERTY_GETCONTENTLENGTH\t= '{' + Client.NS_DAV + '}getcontentlength'\n\tClient.PROPERTY_ISENCRYPTED\t= '{' + Client.NS_DAV + '}is-encrypted'\n\tClient.PROPERTY_SHARE_PERMISSIONS\t= '{' + Client.NS_OCS + '}share-permissions'\n\tClient.PROPERTY_QUOTA_AVAILABLE_BYTES\t= '{' + Client.NS_DAV + '}quota-available-bytes'\n\n\tClient.PROTOCOL_HTTP\t= 'http'\n\tClient.PROTOCOL_HTTPS\t= 'https'\n\n\tClient._PROPFIND_PROPERTIES = [\n\t\t/**\n\t\t * Modified time\n\t\t */\n\t\t[Client.NS_DAV, 'getlastmodified'],\n\t\t/**\n\t\t * Etag\n\t\t */\n\t\t[Client.NS_DAV, 'getetag'],\n\t\t/**\n\t\t * Mime type\n\t\t */\n\t\t[Client.NS_DAV, 'getcontenttype'],\n\t\t/**\n\t\t * Resource type \"collection\" for folders, empty otherwise\n\t\t */\n\t\t[Client.NS_DAV, 'resourcetype'],\n\t\t/**\n\t\t * File id\n\t\t */\n\t\t[Client.NS_OWNCLOUD, 'fileid'],\n\t\t/**\n\t\t * Letter-coded permissions\n\t\t */\n\t\t[Client.NS_OWNCLOUD, 'permissions'],\n\t\t// [Client.NS_OWNCLOUD, 'downloadURL'],\n\t\t/**\n\t\t * Folder sizes\n\t\t */\n\t\t[Client.NS_OWNCLOUD, 'size'],\n\t\t/**\n\t\t * File sizes\n\t\t */\n\t\t[Client.NS_DAV, 'getcontentlength'],\n\t\t[Client.NS_DAV, 'quota-available-bytes'],\n\t\t/**\n\t\t * Preview availability\n\t\t */\n\t\t[Client.NS_NEXTCLOUD, 'has-preview'],\n\t\t/**\n\t\t * Mount type\n\t\t */\n\t\t[Client.NS_NEXTCLOUD, 'mount-type'],\n\t\t/**\n\t\t * Encryption state\n\t\t */\n\t\t[Client.NS_NEXTCLOUD, 'is-encrypted'],\n\t\t/**\n\t\t * Share permissions\n\t\t */\n\t\t[Client.NS_OCS, 'share-permissions'],\n\t]\n\n\t/**\n\t * @memberof OC.Files\n\t */\n\tClient.prototype = {\n\n\t\t/**\n\t\t * Root path of the Webdav endpoint\n\t\t *\n\t\t * @type string\n\t\t */\n\t\t_root: null,\n\n\t\t/**\n\t\t * Client from the library\n\t\t *\n\t\t * @type dav.Client\n\t\t */\n\t\t_client: null,\n\n\t\t/**\n\t\t * Array of file info parsing functions.\n\t\t *\n\t\t * @type Array<OC.Files.Client~parseFileInfo>\n\t\t */\n\t\t_fileInfoParsers: [],\n\n\t\t/**\n\t\t * Returns the configured XHR provider for davclient\n\t\t * @returns {XMLHttpRequest}\n\t\t */\n\t\t_xhrProvider: function() {\n\t\t\tconst headers = this._defaultHeaders\n\t\t\tconst xhr = new XMLHttpRequest()\n\t\t\tconst oldOpen = xhr.open\n\t\t\t// override open() method to add headers\n\t\t\txhr.open = function() {\n\t\t\t\tconst result = oldOpen.apply(this, arguments)\n\t\t\t\t_.each(headers, function(value, key) {\n\t\t\t\t\txhr.setRequestHeader(key, value)\n\t\t\t\t})\n\t\t\t\treturn result\n\t\t\t}\n\n\t\t\tOC.registerXHRForErrorProcessing(xhr)\n\t\t\treturn xhr\n\t\t},\n\n\t\t/**\n\t\t * Prepends the base url to the given path sections\n\t\t *\n\t\t * @param {...String} path sections\n\t\t *\n\t\t * @returns {String} base url + joined path, any leading or trailing slash\n\t\t * will be kept\n\t\t */\n\t\t_buildUrl: function() {\n\t\t\tlet path = this._buildPath.apply(this, arguments)\n\t\t\tif (path.charAt([path.length - 1]) === '/') {\n\t\t\t\tpath = path.substr(0, path.length - 1)\n\t\t\t}\n\t\t\tif (path.charAt(0) === '/') {\n\t\t\t\tpath = path.substr(1)\n\t\t\t}\n\t\t\treturn this._baseUrl + '/' + path\n\t\t},\n\n\t\t/**\n\t\t * Append the path to the root and also encode path\n\t\t * sections\n\t\t *\n\t\t * @param {...String} path sections\n\t\t *\n\t\t * @returns {String} joined path, any leading or trailing slash\n\t\t * will be kept\n\t\t */\n\t\t_buildPath: function() {\n\t\t\tlet path = OC.joinPaths.apply(this, arguments)\n\t\t\tconst sections = path.split('/')\n\t\t\tlet i\n\t\t\tfor (i = 0; i < sections.length; i++) {\n\t\t\t\tsections[i] = encodeURIComponent(sections[i])\n\t\t\t}\n\t\t\tpath = sections.join('/')\n\t\t\treturn path\n\t\t},\n\n\t\t/**\n\t\t * Parse headers string into a map\n\t\t *\n\t\t * @param {string} headersString headers list as string\n\t\t *\n\t\t * @returns {Object.<String,Array>} map of header name to header contents\n\t\t */\n\t\t_parseHeaders: function(headersString) {\n\t\t\tconst headerRows = headersString.split('\\n')\n\t\t\tconst headers = {}\n\t\t\tfor (let i = 0; i < headerRows.length; i++) {\n\t\t\t\tconst sepPos = headerRows[i].indexOf(':')\n\t\t\t\tif (sepPos < 0) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\n\t\t\t\tconst headerName = headerRows[i].substr(0, sepPos)\n\t\t\t\tconst headerValue = headerRows[i].substr(sepPos + 2)\n\n\t\t\t\tif (!headers[headerName]) {\n\t\t\t\t\t// make it an array\n\t\t\t\t\theaders[headerName] = []\n\t\t\t\t}\n\n\t\t\t\theaders[headerName].push(headerValue)\n\t\t\t}\n\t\t\treturn headers\n\t\t},\n\n\t\t/**\n\t\t * Parses the etag response which is in double quotes.\n\t\t *\n\t\t * @param {string} etag etag value in double quotes\n\t\t *\n\t\t * @returns {string} etag without double quotes\n\t\t */\n\t\t_parseEtag: function(etag) {\n\t\t\tif (etag.charAt(0) === '\"') {\n\t\t\t\treturn etag.split('\"')[1]\n\t\t\t}\n\t\t\treturn etag\n\t\t},\n\n\t\t/**\n\t\t * Parse Webdav result\n\t\t *\n\t\t * @param {Object} response XML object\n\t\t *\n\t\t * @returns {Array.<FileInfo>} array of file info\n\t\t */\n\t\t_parseFileInfo: function(response) {\n\t\t\tlet path = decodeURIComponent(response.href)\n\t\t\tif (path.substr(0, this._root.length) === this._root) {\n\t\t\t\tpath = path.substr(this._root.length)\n\t\t\t}\n\n\t\t\tif (path.charAt(path.length - 1) === '/') {\n\t\t\t\tpath = path.substr(0, path.length - 1)\n\t\t\t}\n\n\t\t\tif (response.propStat.length === 0 || response.propStat[0].status !== 'HTTP/1.1 200 OK') {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\tconst props = response.propStat[0].properties\n\n\t\t\tconst data = {\n\t\t\t\tid: props[Client.PROPERTY_INTERNAL_FILEID],\n\t\t\t\tpath: OC.dirname(path) || '/',\n\t\t\t\tname: OC.basename(path),\n\t\t\t\tmtime: (new Date(props[Client.PROPERTY_GETLASTMODIFIED])).getTime(),\n\t\t\t}\n\n\t\t\tconst etagProp = props[Client.PROPERTY_GETETAG]\n\t\t\tif (!_.isUndefined(etagProp)) {\n\t\t\t\tdata.etag = this._parseEtag(etagProp)\n\t\t\t}\n\n\t\t\tlet sizeProp = props[Client.PROPERTY_GETCONTENTLENGTH]\n\t\t\tif (!_.isUndefined(sizeProp)) {\n\t\t\t\tdata.size = parseInt(sizeProp, 10)\n\t\t\t}\n\n\t\t\tsizeProp = props[Client.PROPERTY_SIZE]\n\t\t\tif (!_.isUndefined(sizeProp)) {\n\t\t\t\tdata.size = parseInt(sizeProp, 10)\n\t\t\t}\n\n\t\t\tconst hasPreviewProp = props['{' + Client.NS_NEXTCLOUD + '}has-preview']\n\t\t\tif (!_.isUndefined(hasPreviewProp)) {\n\t\t\t\tdata.hasPreview = hasPreviewProp === 'true'\n\t\t\t} else {\n\t\t\t\tdata.hasPreview = true\n\t\t\t}\n\n\t\t\tconst isEncryptedProp = props['{' + Client.NS_NEXTCLOUD + '}is-encrypted']\n\t\t\tif (!_.isUndefined(isEncryptedProp)) {\n\t\t\t\tdata.isEncrypted = isEncryptedProp === '1'\n\t\t\t} else {\n\t\t\t\tdata.isEncrypted = false\n\t\t\t}\n\n\t\t\tconst isFavouritedProp = props['{' + Client.NS_OWNCLOUD + '}favorite']\n\t\t\tif (!_.isUndefined(isFavouritedProp)) {\n\t\t\t\tdata.isFavourited = isFavouritedProp === '1'\n\t\t\t} else {\n\t\t\t\tdata.isFavourited = false\n\t\t\t}\n\n\t\t\tconst contentType = props[Client.PROPERTY_GETCONTENTTYPE]\n\t\t\tif (!_.isUndefined(contentType)) {\n\t\t\t\tdata.mimetype = contentType\n\t\t\t}\n\n\t\t\tconst resType = props[Client.PROPERTY_RESOURCETYPE]\n\t\t\tif (!data.mimetype && resType) {\n\t\t\t\tconst xmlvalue = resType[0]\n\t\t\t\tif (xmlvalue.namespaceURI === Client.NS_DAV && xmlvalue.nodeName.split(':')[1] === 'collection') {\n\t\t\t\t\tdata.mimetype = 'httpd/unix-directory'\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tdata.permissions = OC.PERMISSION_NONE\n\t\t\tconst permissionProp = props[Client.PROPERTY_PERMISSIONS]\n\t\t\tif (!_.isUndefined(permissionProp)) {\n\t\t\t\tconst permString = permissionProp || ''\n\t\t\t\tdata.mountType = null\n\t\t\t\tfor (let i = 0; i < permString.length; i++) {\n\t\t\t\t\tconst c = permString.charAt(i)\n\t\t\t\t\tswitch (c) {\n\t\t\t\t\t// FIXME: twisted permissions\n\t\t\t\t\tcase 'C':\n\t\t\t\t\tcase 'K':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_CREATE\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'G':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_READ\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'W':\n\t\t\t\t\tcase 'N':\n\t\t\t\t\tcase 'V':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_UPDATE\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'D':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_DELETE\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'R':\n\t\t\t\t\t\tdata.permissions |= OC.PERMISSION_SHARE\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'M':\n\t\t\t\t\t\tif (!data.mountType) {\n\t\t\t\t\t\t\t// TODO: how to identify external-root ?\n\t\t\t\t\t\t\tdata.mountType = 'external'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 'S':\n\t\t\t\t\t\t// TODO: how to identify shared-root ?\n\t\t\t\t\t\tdata.mountType = 'shared'\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst sharePermissionsProp = props[Client.PROPERTY_SHARE_PERMISSIONS]\n\t\t\tif (!_.isUndefined(sharePermissionsProp)) {\n\t\t\t\tdata.sharePermissions = parseInt(sharePermissionsProp)\n\t\t\t}\n\n\t\t\tconst mounTypeProp = props['{' + Client.NS_NEXTCLOUD + '}mount-type']\n\t\t\tif (!_.isUndefined(mounTypeProp)) {\n\t\t\t\tdata.mountType = mounTypeProp\n\t\t\t}\n\n\t\t\tconst quotaAvailableBytes = props['{' + Client.NS_DAV + '}quota-available-bytes']\n\t\t\tif (!_.isUndefined(quotaAvailableBytes)) {\n\t\t\t\tdata.quotaAvailableBytes = quotaAvailableBytes\n\t\t\t}\n\n\t\t\t// extend the parsed data using the custom parsers\n\t\t\t_.each(this._fileInfoParsers, function(parserFunction) {\n\t\t\t\t_.extend(data, parserFunction(response, data) || {})\n\t\t\t})\n\n\t\t\treturn new FileInfo(data)\n\t\t},\n\n\t\t/**\n\t\t * Parse Webdav multistatus\n\t\t *\n\t\t * @param {Array} responses\n\t\t */\n\t\t_parseResult: function(responses) {\n\t\t\tconst self = this\n\t\t\treturn _.map(responses, function(response) {\n\t\t\t\treturn self._parseFileInfo(response)\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Returns whether the given status code means success\n\t\t *\n\t\t * @param {int} status status code\n\t\t *\n\t\t * @returns true if status code is between 200 and 299 included\n\t\t */\n\t\t_isSuccessStatus: function(status) {\n\t\t\treturn status >= 200 && status <= 299\n\t\t},\n\n\t\t/**\n\t\t * Parse the Sabre exception out of the given response, if any\n\t\t *\n\t\t * @param {Object} response object\n\t\t * @returns {Object} array of parsed message and exception (only the first one)\n\t\t */\n\t\t_getSabreException: function(response) {\n\t\t\tconst result = {}\n\t\t\tconst xml = response.xhr.responseXML\n\t\t\tif (xml === null) {\n\t\t\t\treturn result\n\t\t\t}\n\t\t\tconst messages = xml.getElementsByTagNameNS('http://sabredav.org/ns', 'message')\n\t\t\tconst exceptions = xml.getElementsByTagNameNS('http://sabredav.org/ns', 'exception')\n\t\t\tif (messages.length) {\n\t\t\t\tresult.message = messages[0].textContent\n\t\t\t}\n\t\t\tif (exceptions.length) {\n\t\t\t\tresult.exception = exceptions[0].textContent\n\t\t\t}\n\t\t\treturn result\n\t\t},\n\n\t\t/**\n\t\t * Returns the default PROPFIND properties to use during a call.\n\t\t *\n\t\t * @returns {Array.<Object>} array of properties\n\t\t */\n\t\tgetPropfindProperties: function() {\n\t\t\tif (!this._propfindProperties) {\n\t\t\t\tthis._propfindProperties = _.map(Client._PROPFIND_PROPERTIES, function(propDef) {\n\t\t\t\t\treturn '{' + propDef[0] + '}' + propDef[1]\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn this._propfindProperties\n\t\t},\n\n\t\t/**\n\t\t * Lists the contents of a directory\n\t\t *\n\t\t * @param {String} path path to retrieve\n\t\t * @param {Object} [options] options\n\t\t * @param {boolean} [options.includeParent=false] set to true to keep\n\t\t * the parent folder in the result list\n\t\t * @param {Array} [options.properties] list of Webdav properties to retrieve\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tgetFolderContents: function(path, options) {\n\t\t\tif (!path) {\n\t\t\t\tpath = ''\n\t\t\t}\n\t\t\toptions = options || {}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\tlet properties\n\t\t\tif (_.isUndefined(options.properties)) {\n\t\t\t\tproperties = this.getPropfindProperties()\n\t\t\t} else {\n\t\t\t\tproperties = options.properties\n\t\t\t}\n\n\t\t\tthis._client.propFind(\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\tproperties,\n\t\t\t\t1\n\t\t\t).then(function(result) {\n\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\tconst results = self._parseResult(result.body)\n\t\t\t\t\tif (!options || !options.includeParent) {\n\t\t\t\t\t\t// remove root dir, the first entry\n\t\t\t\t\t\tresults.shift()\n\t\t\t\t\t}\n\t\t\t\t\tdeferred.resolve(result.status, results)\n\t\t\t\t} else {\n\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Fetches a flat list of files filtered by a given filter criteria.\n\t\t * (currently system tags and circles are supported)\n\t\t *\n\t\t * @param {Object} filter filter criteria\n\t\t * @param {Object} [filter.systemTagIds] list of system tag ids to filter by\n\t\t * @param {bool} [filter.favorite] set it to filter by favorites\n\t\t * @param {Object} [options] options\n\t\t * @param {Array} [options.properties] list of Webdav properties to retrieve\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tgetFilteredFiles: function(filter, options) {\n\t\t\toptions = options || {}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\tlet properties\n\t\t\tif (_.isUndefined(options.properties)) {\n\t\t\t\tproperties = this.getPropfindProperties()\n\t\t\t} else {\n\t\t\t\tproperties = options.properties\n\t\t\t}\n\n\t\t\tif (!filter\n\t\t\t\t|| (!filter.systemTagIds && _.isUndefined(filter.favorite) && !filter.circlesIds)) {\n\t\t\t\tthrow 'Missing filter argument'\n\t\t\t}\n\n\t\t\t// root element with namespaces\n\t\t\tlet body = '<oc:filter-files '\n\t\t\tlet namespace\n\t\t\tfor (namespace in this._client.xmlNamespaces) {\n\t\t\t\tbody += ' xmlns:' + this._client.xmlNamespaces[namespace] + '=\"' + namespace + '\"'\n\t\t\t}\n\t\t\tbody += '>\\n'\n\n\t\t\t// properties query\n\t\t\tbody += ' <' + this._client.xmlNamespaces['DAV:'] + ':prop>\\n'\n\t\t\t_.each(properties, function(prop) {\n\t\t\t\tconst property = self._client.parseClarkNotation(prop)\n\t\t\t\tbody += ' <' + self._client.xmlNamespaces[property.namespace] + ':' + property.name + ' />\\n'\n\t\t\t})\n\n\t\t\tbody += ' </' + this._client.xmlNamespaces['DAV:'] + ':prop>\\n'\n\n\t\t\t// rules block\n\t\t\tbody +=\t' <oc:filter-rules>\\n'\n\t\t\t_.each(filter.systemTagIds, function(systemTagIds) {\n\t\t\t\tbody += ' <oc:systemtag>' + escapeHTML(systemTagIds) + '</oc:systemtag>\\n'\n\t\t\t})\n\t\t\t_.each(filter.circlesIds, function(circlesIds) {\n\t\t\t\tbody += ' <oc:circle>' + escapeHTML(circlesIds) + '</oc:circle>\\n'\n\t\t\t})\n\t\t\tif (filter.favorite) {\n\t\t\t\tbody += ' <oc:favorite>' + (filter.favorite ? '1' : '0') + '</oc:favorite>\\n'\n\t\t\t}\n\t\t\tbody += ' </oc:filter-rules>\\n'\n\n\t\t\t// end of root\n\t\t\tbody += '</oc:filter-files>\\n'\n\n\t\t\tthis._client.request(\n\t\t\t\t'REPORT',\n\t\t\t\tthis._buildUrl(),\n\t\t\t\t{},\n\t\t\t\tbody\n\t\t\t).then(function(result) {\n\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\tconst results = self._parseResult(result.body)\n\t\t\t\t\tdeferred.resolve(result.status, results)\n\t\t\t\t} else {\n\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Returns the file info of a given path.\n\t\t *\n\t\t * @param {String} path path\n\t\t * @param {Array} [options.properties] list of Webdav properties to retrieve\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tgetFileInfo: function(path, options) {\n\t\t\tif (!path) {\n\t\t\t\tpath = ''\n\t\t\t}\n\t\t\toptions = options || {}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\tlet properties\n\t\t\tif (_.isUndefined(options.properties)) {\n\t\t\t\tproperties = this.getPropfindProperties()\n\t\t\t} else {\n\t\t\t\tproperties = options.properties\n\t\t\t}\n\n\t\t\t// TODO: headers\n\t\t\tthis._client.propFind(\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\tproperties,\n\t\t\t\t0\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status, self._parseResult([result.body])[0])\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Returns the contents of the given file.\n\t\t *\n\t\t * @param {String} path path to file\n\t\t *\n\t\t * @returns {Promise}\n\t\t */\n\t\tgetFileContents: function(path) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\n\t\t\tthis._client.request(\n\t\t\t\t'GET',\n\t\t\t\tthis._buildUrl(path)\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status, result.body)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Puts the given data into the given file.\n\t\t *\n\t\t * @param {String} path path to file\n\t\t * @param {String} body file body\n\t\t * @param {Object} [options]\n\t\t * @param {String} [options.contentType='text/plain'] content type\n\t\t * @param {bool} [options.overwrite=true] whether to overwrite an existing file\n\t\t *\n\t\t * @returns {Promise}\n\t\t */\n\t\tputFileContents: function(path, body, options) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\toptions = options || {}\n\t\t\tconst headers = {}\n\t\t\tlet contentType = 'text/plain;charset=utf-8'\n\t\t\tif (options.contentType) {\n\t\t\t\tcontentType = options.contentType\n\t\t\t}\n\n\t\t\theaders['Content-Type'] = contentType\n\n\t\t\tif (_.isUndefined(options.overwrite) || options.overwrite) {\n\t\t\t\t// will trigger 412 precondition failed if a file already exists\n\t\t\t\theaders['If-None-Match'] = '*'\n\t\t\t}\n\n\t\t\tthis._client.request(\n\t\t\t\t'PUT',\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\theaders,\n\t\t\t\tbody || ''\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t_simpleCall: function(method, path) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\n\t\t\tthis._client.request(\n\t\t\t\tmethod,\n\t\t\t\tthis._buildUrl(path)\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Creates a directory\n\t\t *\n\t\t * @param {String} path path to create\n\t\t *\n\t\t * @returns {Promise}\n\t\t */\n\t\tcreateDirectory: function(path) {\n\t\t\treturn this._simpleCall('MKCOL', path)\n\t\t},\n\n\t\t/**\n\t\t * Deletes a file or directory\n\t\t *\n\t\t * @param {String} path path to delete\n\t\t *\n\t\t * @returns {Promise}\n\t\t */\n\t\tremove: function(path) {\n\t\t\treturn this._simpleCall('DELETE', path)\n\t\t},\n\n\t\t/**\n\t\t * Moves path to another path\n\t\t *\n\t\t * @param {String} path path to move\n\t\t * @param {String} destinationPath destination path\n\t\t * @param {boolean} [allowOverwrite=false] true to allow overwriting,\n\t\t * false otherwise\n\t\t * @param {Object} [headers=null] additional headers\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tmove: function(path, destinationPath, allowOverwrite, headers) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\t\t\tif (!destinationPath) {\n\t\t\t\tthrow 'Missing argument \"destinationPath\"'\n\t\t\t}\n\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\theaders = _.extend({}, headers, {\n\t\t\t\t'Destination': this._buildUrl(destinationPath),\n\t\t\t})\n\n\t\t\tif (!allowOverwrite) {\n\t\t\t\theaders.Overwrite = 'F'\n\t\t\t}\n\n\t\t\tthis._client.request(\n\t\t\t\t'MOVE',\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\theaders\n\t\t\t).then(\n\t\t\t\tfunction(result) {\n\t\t\t\t\tif (self._isSuccessStatus(result.status)) {\n\t\t\t\t\t\tdeferred.resolve(result.status)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult = _.extend(result, self._getSabreException(result))\n\t\t\t\t\t\tdeferred.reject(result.status, result)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Copies path to another path\n\t\t *\n\t\t * @param {String} path path to copy\n\t\t * @param {String} destinationPath destination path\n\t\t * @param {boolean} [allowOverwrite=false] true to allow overwriting,\n\t\t * false otherwise\n\t\t *\n\t\t * @returns {Promise} promise\n\t\t */\n\t\tcopy: function(path, destinationPath, allowOverwrite) {\n\t\t\tif (!path) {\n\t\t\t\tthrow 'Missing argument \"path\"'\n\t\t\t}\n\t\t\tif (!destinationPath) {\n\t\t\t\tthrow 'Missing argument \"destinationPath\"'\n\t\t\t}\n\n\t\t\tconst self = this\n\t\t\tconst deferred = $.Deferred()\n\t\t\tconst promise = deferred.promise()\n\t\t\tconst headers = {\n\t\t\t\t'Destination': this._buildUrl(destinationPath),\n\t\t\t}\n\n\t\t\tif (!allowOverwrite) {\n\t\t\t\theaders.Overwrite = 'F'\n\t\t\t}\n\n\t\t\tthis._client.request(\n\t\t\t\t'COPY',\n\t\t\t\tthis._buildUrl(path),\n\t\t\t\theaders\n\t\t\t).then(\n\t\t\t\tfunction(response) {\n\t\t\t\t\tif (self._isSuccessStatus(response.status)) {\n\t\t\t\t\t\tdeferred.resolve(response.status)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tdeferred.reject(response.status)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn promise\n\t\t},\n\n\t\t/**\n\t\t * Add a file info parser function\n\t\t *\n\t\t * @param {OC.Files.Client~parseFileInfo} parserFunction\n\t\t */\n\t\taddFileInfoParser: function(parserFunction) {\n\t\t\tthis._fileInfoParsers.push(parserFunction)\n\t\t},\n\n\t\t/**\n\t\t * Returns the dav.Client instance used internally\n\t\t *\n\t\t * @since 11.0.0\n\t\t * @returns {dav.Client}\n\t\t */\n\t\tgetClient: function() {\n\t\t\treturn this._client\n\t\t},\n\n\t\t/**\n\t\t * Returns the user name\n\t\t *\n\t\t * @since 11.0.0\n\t\t * @returns {String} userName\n\t\t */\n\t\tgetUserName: function() {\n\t\t\treturn this._client.userName\n\t\t},\n\n\t\t/**\n\t\t * Returns the password\n\t\t *\n\t\t * @since 11.0.0\n\t\t * @returns {String} password\n\t\t */\n\t\tgetPassword: function() {\n\t\t\treturn this._client.password\n\t\t},\n\n\t\t/**\n\t\t * Returns the base URL\n\t\t *\n\t\t * @since 11.0.0\n\t\t * @returns {String} base URL\n\t\t */\n\t\tgetBaseUrl: function() {\n\t\t\treturn this._client.baseUrl\n\t\t},\n\n\t\t/**\n\t\t * Returns the host\n\t\t *\n\t\t * @since 13.0.0\n\t\t * @returns {String} base URL\n\t\t */\n\t\tgetHost: function() {\n\t\t\treturn this._host\n\t\t},\n\t}\n\n\t/**\n\t * File info parser function\n\t *\n\t * This function receives a list of Webdav properties as input and\n\t * should return a hash array of parsed properties, if applicable.\n\t *\n\t * @callback OC.Files.Client~parseFileInfo\n\t * @param {Object} XML Webdav properties\n * @return {Array} array of parsed property values\n\t */\n\n\tif (!OC.Files) {\n\t\t/**\n\t\t * @namespace OC.Files\n\t\t *\n\t\t * @since 8.2\n\t\t */\n\t\tOC.Files = {}\n\t}\n\n\t/**\n\t * Returns the default instance of the files client\n\t *\n\t * @returns {OC.Files.Client} default client\n\t *\n\t * @since 8.2\n\t */\n\tOC.Files.getClient = function() {\n\t\tif (OC.Files._defaultClient) {\n\t\t\treturn OC.Files._defaultClient\n\t\t}\n\n\t\tconst client = new OC.Files.Client({\n\t\t\thost: OC.getHost(),\n\t\t\tport: OC.getPort(),\n\t\t\troot: OC.linkToRemoteBase('dav') + '/files/' + OC.getCurrentUser().uid,\n\t\t\tuseHTTPS: OC.getProtocol() === 'https',\n\t\t})\n\t\tOC.Files._defaultClient = client\n\t\treturn client\n\t}\n\n\tOC.Files.Client = Client\n})(OC, OC.Files.FileInfo)\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 578;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t578: 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\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkIds[i]] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [874], () => (__webpack_require__(7913)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OC","FileInfo","Client","options","this","_root","root","charAt","length","substr","url","PROTOCOL_HTTP","useHTTPS","PROTOCOL_HTTPS","host","_host","_defaultHeaders","defaultHeaders","requestToken","_baseUrl","clientOptions","baseUrl","xmlNamespaces","userName","password","_client","dav","xhrProvider","_","bind","_xhrProvider","_fileInfoParsers","NS_OWNCLOUD","NS_NEXTCLOUD","NS_DAV","NS_OCS","PROPERTY_GETLASTMODIFIED","PROPERTY_GETETAG","PROPERTY_GETCONTENTTYPE","PROPERTY_RESOURCETYPE","PROPERTY_INTERNAL_FILEID","PROPERTY_PERMISSIONS","PROPERTY_SIZE","PROPERTY_GETCONTENTLENGTH","PROPERTY_ISENCRYPTED","PROPERTY_SHARE_PERMISSIONS","PROPERTY_QUOTA_AVAILABLE_BYTES","_PROPFIND_PROPERTIES","prototype","headers","xhr","XMLHttpRequest","oldOpen","open","result","apply","arguments","each","value","key","setRequestHeader","registerXHRForErrorProcessing","_buildUrl","path","_buildPath","joinPaths","sections","split","i","encodeURIComponent","join","_parseHeaders","headersString","headerRows","sepPos","indexOf","headerName","headerValue","push","_parseEtag","etag","_parseFileInfo","response","decodeURIComponent","href","propStat","status","props","properties","data","id","dirname","name","basename","mtime","Date","getTime","etagProp","isUndefined","sizeProp","size","parseInt","hasPreviewProp","hasPreview","isEncryptedProp","isEncrypted","isFavouritedProp","isFavourited","contentType","mimetype","resType","xmlvalue","namespaceURI","nodeName","permissions","PERMISSION_NONE","permissionProp","permString","mountType","PERMISSION_CREATE","PERMISSION_READ","PERMISSION_UPDATE","PERMISSION_DELETE","PERMISSION_SHARE","sharePermissionsProp","sharePermissions","mounTypeProp","quotaAvailableBytes","parserFunction","extend","_parseResult","responses","self","map","_isSuccessStatus","_getSabreException","xml","responseXML","messages","getElementsByTagNameNS","exceptions","message","textContent","exception","getPropfindProperties","_propfindProperties","propDef","getFolderContents","$","Deferred","promise","propFind","then","results","body","includeParent","shift","resolve","reject","getFilteredFiles","filter","systemTagIds","favorite","circlesIds","namespace","prop","property","parseClarkNotation","escapeHTML","request","getFileInfo","getFileContents","putFileContents","overwrite","_simpleCall","method","createDirectory","remove","move","destinationPath","allowOverwrite","Overwrite","copy","addFileInfoParser","getClient","getUserName","getPassword","getBaseUrl","getHost","Files","_defaultClient","client","port","getPort","linkToRemoteBase","getCurrentUser","uid","getProtocol","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","loaded","__webpack_modules__","call","m","amdD","Error","amdO","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","Object","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","g","globalThis","Function","e","window","obj","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file |