UNPKG

devextreme

Version:

JavaScript/TypeScript Component Suite for Responsive Web Development

42 lines (41 loc) 1.36 kB
/** * DevExtreme (esm/__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/ */ import { Deferred } from "../../../core/utils/deferred"; import { fromPromise } from "../../core/utils/m_deferred"; import { WholeFileUploadStrategyBase } from "../../ui/file_uploader/file_upload_strategy.whole.base"; export class CustomWholeFileUploadStrategy extends 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 fromPromise(result) } catch (error) { return Deferred().reject(error).promise() } } _shouldHandleError(_file, _e) { return true } }