devextreme
Version:
JavaScript/TypeScript Component Suite for Responsive Web Development
42 lines (41 loc) • 1.59 kB
JavaScript
/**
* DevExtreme (cjs/__internal/ui/file_uploader/file_upload_strategy.whole.custom.js)
* Version: 25.2.8
* Build date: Mon Jun 08 2026
*
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
*/
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CustomWholeFileUploadStrategy = void 0;
var _deferred = require("../../../core/utils/deferred");
var _m_deferred = require("../../core/utils/m_deferred");
var _file_upload_strategyWhole = require("../../ui/file_uploader/file_upload_strategy.whole.base");
class CustomWholeFileUploadStrategy extends _file_upload_strategyWhole.WholeFileUploadStrategyBase {
_uploadFile(file) {
file.onLoadStart.fire();
const progressCallback = loadedBytes => {
const arg = {
loaded: loadedBytes,
total: file.value.size
};
this._handleProgress(file, arg)
};
const {
uploadFile: uploadFile
} = this.fileUploader.option();
try {
const result = null === uploadFile || void 0 === uploadFile ? void 0 : uploadFile(file.value, progressCallback);
return (0, _m_deferred.fromPromise)(result)
} catch (error) {
return (0, _deferred.Deferred)().reject(error).promise()
}
}
_shouldHandleError(_file, _e) {
return true
}
}
exports.CustomWholeFileUploadStrategy = CustomWholeFileUploadStrategy;