X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/f5f72a4ee9b00aab5492f8991677b6503a6f2ac3..a23cfd6defb8dab9ac9afe13034f7b667f07acca:/src/common/webdav.ts diff --git a/src/common/webdav.ts b/src/common/webdav.ts index 8d071fa635..93ec21cb72 100644 --- a/src/common/webdav.ts +++ b/src/common/webdav.ts @@ -2,7 +2,7 @@ // // SPDX-License-Identifier: AGPL-3.0 -import { customEncodeURI, encodeHash } from "./url"; +import { customEncodeURI } from "./url"; export class WebDAV { @@ -79,15 +79,20 @@ export class WebDAV { ? this.defaults.baseURL+'/' : ''}${customEncodeURI(config.url)}`); - if (config.headers && config.headers.Destination) { - config.headers.Destination = encodeHash(config.headers.Destination); - } - const headers = { ...this.defaults.headers, ...config.headers }; Object .keys(headers) .forEach(key => r.setRequestHeader(key, headers[key])); + if (!(window as any).cancelTokens) { + Object.assign(window, { cancelTokens: {} }); + } + + (window as any).cancelTokens[config.url] = () => { + resolve(r); + r.abort(); + } + if (config.onUploadProgress) { r.upload.addEventListener('progress', config.onUploadProgress); }