@trendster-io/ng-uploader
Version:
A fully featured Angular file uploader that utilizes Angular's HttpClient internally, allows you to customize outgoing HTTP requests using the "Angular Way" (Interceptors), provides customizable concurrent queuing of uploads and a simple way to select fil
61 lines (60 loc) • 2.1 kB
TypeScript
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';
import { UploadItem } from './upload-item.class';
import { UploadListener, UploaderOptions, UploadItemOptions, UploadItemEvent } from './models';
export declare class Uploader implements UploadListener {
private httpClient;
readonly onItemSuccess: Observable<UploadItemEvent>;
readonly onItemProgress: Observable<UploadItemEvent>;
readonly onItemError: Observable<UploadItemEvent>;
private onItemSuccessSubject;
private onItemProgressSubject;
private onItemErrorSubject;
private _totalProgress;
private url;
private method;
private autoUpload;
private removeAfterUpload;
private queueLimit;
private concurrency;
private maxFileSize;
private allowedMimeTypes;
private queue;
private scheduler;
constructor(httpClient: HttpClient, options?: UploaderOptions);
readonly itemsCount: number;
readonly items: UploadItem[];
readonly readyItemsCount: number;
private readonly readyItems;
readonly uploadingItemsCount: number;
private readonly uploadingItems;
readonly uploadedItemsCount: number;
private readonly uploadedItems;
readonly notUploadedItemsCount: number;
private readonly notUploadedItems;
readonly cancelledItemsCount: number;
private readonly cancelledItems;
readonly errorItemsCount: number;
private readonly errorItems;
readonly totalProgress: number;
readonly isUploading: boolean;
private onQueueItemSuccess;
private onQueueItemError;
private request;
private calculateTotalProgress;
private prepareQueueItem;
private setupQueue;
private isValidRequestParams;
private isValidFileType;
private isValidFileSize;
private isValidFile;
private canAddToQueue;
private checkItem;
addItem(options: UploadItemOptions): UploadItem;
uploadItem(item: UploadItem): void;
uploadAll(): void;
cancelItem(item: UploadItem): void;
cancelAll(): void;
removeItem(item: UploadItem): void;
clearQueue(): void;
}