devextreme
Version:
JavaScript/TypeScript Component Suite for Responsive Web Development
43 lines (42 loc) • 1.35 kB
JavaScript
/**
* DevExtreme (esm/__internal/ui/file_uploader/file_upload_strategy.whole.base.js)
* Version: 26.1.3
* Build date: Wed Jun 10 2026
*
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
*/
import {
Deferred
} from "../../../core/utils/deferred";
import {
FileUploadStrategyBase
} from "../../ui/file_uploader/file_upload_strategy.base";
export class WholeFileUploadStrategyBase extends FileUploadStrategyBase {
_uploadCore(file) {
file.loadedSize = 0;
const uploadFileDeferred = this._uploadFile(file);
if ("done" in uploadFileDeferred) {
uploadFileDeferred.done(() => {
if (!file.isAborted) {
file.onLoad.fire()
}
}).fail(error => {
if (this._shouldHandleError(file, error)) {
this._handleFileError(file, error)
}
})
}
}
_uploadFile(_file) {
return Deferred().reject()
}
_handleProgressCore(file, e) {
file.onProgress.fire(e)
}
_getLoadedData(loaded, total, segmentSize, event) {
const result = super._getLoadedData(loaded, total, segmentSize, event);
result.event = event;
return result
}
}