projects
/
arvados-workbench2.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch '19783-picking-tweak' refs #19783
[arvados-workbench2.git]
/
src
/
common
/
webdav.ts
diff --git
a/src/common/webdav.ts
b/src/common/webdav.ts
index 758a5e18e1e9ad44015b9a802d0e532e70ba3d76..d4f904ae9832461abd777e5c8f6a112c49d14e65 100644
(file)
--- a/
src/common/webdav.ts
+++ b/
src/common/webdav.ts
@@
-30,6
+30,12
@@
export class WebDAV {
data
})
data
})
+ get = (url: string, config: WebDAVRequestConfig = {}) =>
+ this.request({
+ ...config, url,
+ method: 'GET'
+ })
+
upload = (url: string, files: File[], config: WebDAVRequestConfig = {}) => {
return Promise.all(
files.map(file => this.request({
upload = (url: string, files: File[], config: WebDAVRequestConfig = {}) => {
return Promise.all(
files.map(file => this.request({
@@
-84,6
+90,15
@@
export class WebDAV {
.keys(headers)
.forEach(key => r.setRequestHeader(key, headers[key]));
.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);
}
if (config.onUploadProgress) {
r.upload.addEventListener('progress', config.onUploadProgress);
}
@@
-129,4
+144,4
@@
interface RequestConfig {
headers?: { [key: string]: string };
data?: any;
onUploadProgress?: (event: ProgressEvent) => void;
headers?: { [key: string]: string };
data?: any;
onUploadProgress?: (event: ProgressEvent) => void;
-}
\ No newline at end of file
+}