//
// SPDX-License-Identifier: AGPL-3.0
-import { escapeHashIfRequired } from "./url";
+import { customEncodeURI } from "./url";
export class WebDAV {
r.open(config.method,
`${this.defaults.baseURL
? this.defaults.baseURL+'/'
- : ''}${escapeHashIfRequired(config.url, encodeURI)}`);
+ : ''}${customEncodeURI(config.url)}`);
+
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);
}