33 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
44
55import log , { LoggingLevel } from "../../core/log.js" ;
6- import type Uploader from "../../core/upload/uploader.js" ;
7- import type { UploadResult } from "../../core/upload/uploader.js" ;
8- import { DEFAULT_UPLOAD_TIMEOUT_MS , UploadResultStatus } from "../../core/upload/uploader.js" ;
6+ import Uploader from "../../core/upload/uploader.js" ;
7+ import { DEFAULT_UPLOAD_TIMEOUT_MS , UploadResultStatus , UploadResult } from "../../core/upload/uploader.js" ;
98import { isString } from "../../core/utils.js" ;
109
1110const LOG_TAG = "platform.qt.Uploader" ;
1211
13- class QtUploader implements Uploader {
12+ class QtUploader extends Uploader {
1413 async post ( url : string , body : string | Uint8Array , headers : Record < string , string > = { } ) : Promise < UploadResult > {
1514 return new Promise ( ( resolve ) => {
1615 const xhr = new XMLHttpRequest ( ) ;
@@ -23,30 +22,21 @@ class QtUploader implements Uploader {
2322
2423 xhr . ontimeout = function ( e ) {
2524 log ( LOG_TAG , [ "Timeout while attempting to upload ping.\n" , e . type ] , LoggingLevel . Error ) ;
26- resolve ( {
27- result : UploadResultStatus . RecoverableFailure ,
28- } ) ;
25+ resolve ( new UploadResult ( UploadResultStatus . RecoverableFailure ) ) ;
2926 } ;
3027
3128 xhr . onerror = function ( e ) {
3229 log ( LOG_TAG , [ "Network rror while attempting to upload ping.\n" , e . type ] , LoggingLevel . Error ) ;
33- resolve ( {
34- result : UploadResultStatus . RecoverableFailure ,
35- } ) ;
30+ resolve ( new UploadResult ( UploadResultStatus . RecoverableFailure ) ) ;
3631 } ;
3732
3833 xhr . onabort = function ( e ) {
3934 log ( LOG_TAG , [ "The attempt to upload ping is aborted.\n" , e . type ] , LoggingLevel . Error ) ;
40- resolve ( {
41- result : UploadResultStatus . RecoverableFailure ,
42- } ) ;
35+ resolve ( new UploadResult ( UploadResultStatus . RecoverableFailure ) ) ;
4336 } ;
4437
4538 xhr . onload = ( ) => {
46- resolve ( {
47- status : xhr . status ,
48- result : UploadResultStatus . Success ,
49- } ) ;
39+ resolve ( new UploadResult ( UploadResultStatus . Success , xhr . status ) ) ;
5040 } ;
5141
5242 if ( ! isString ( body ) ) {
0 commit comments