UNPKG

angular-material-datatransfer-lib

Version:

A HTML5 datatransfer UI for handling upload and download of multiple simultaneous files.

128 lines 8.28 kB
/** * @fileoverview added by tsickle * Generated from: lib/stores/datatransfer.store.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { ProgressContainer } from '../models/progress-container.model'; import { TransferStatus } from '../enums/transfer-status.enum'; export class DatatransferStore { constructor() { this.items = []; this.count = 0; this.failedCount = 0; this.uploadProgress = new ProgressContainer(0); this.downloadProgress = new ProgressContainer(0); } /** * @private * @return {?} */ updateCount() { this.count = this.items.length; } /** * @return {?} */ updateFailedCount() { this.failedCount = this.getByStatus(TransferStatus.Failed).length; } /** * @return {?} */ getItems() { return this.items; } /** * @return {?} */ getSelected() { return this.items.filter((/** * @param {?} item * @return {?} */ (item) => item.isSelected === true)); } /** * @param {?} id * @return {?} */ getById(id) { return this.items.find((/** * @param {?} item * @return {?} */ (item) => item.id === id)); } /** * @param {?} id * @return {?} */ getIndexById(id) { return this.items.findIndex((/** * @param {?} i * @return {?} */ i => i.id === id)); } /** * @return {?} */ clear() { this.items.length = 0; this.updateCount(); this.updateFailedCount(); } /** * @param {?} item * @return {?} */ addItem(item) { this.items.push(item); this.updateCount(); } /** * @param {?} id * @return {?} */ removeById(id) { /** @type {?} */ const index = this.getIndexById(id); if (index > -1) { this.items.splice(index, 1); this.updateCount(); } } /** * @param {?} status * @return {?} */ getByStatus(status) { return this.items.filter((/** * @param {?} item * @return {?} */ (item) => item.status === status)); } } DatatransferStore.decorators = [ { type: Injectable } ]; /** @nocollapse */ DatatransferStore.ctorParameters = () => []; if (false) { /** * @type {?} * @private */ DatatransferStore.prototype.items; /** @type {?} */ DatatransferStore.prototype.count; /** @type {?} */ DatatransferStore.prototype.failedCount; /** @type {?} */ DatatransferStore.prototype.uploadProgress; /** @type {?} */ DatatransferStore.prototype.downloadProgress; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXRyYW5zZmVyLnN0b3JlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1tYXRlcmlhbC1kYXRhdHJhbnNmZXItbGliLyIsInNvdXJjZXMiOlsibGliL3N0b3Jlcy9kYXRhdHJhbnNmZXIuc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBc0IsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHL0QsTUFBTSxPQUFPLGlCQUFpQjtJQVMxQjtRQVBRLFVBQUssR0FBd0IsRUFBRSxDQUFDO1FBRWpDLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDVixnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNoQixtQkFBYyxHQUF1QixJQUFJLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlELHFCQUFnQixHQUF1QixJQUFJLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBSXZFLENBQUM7Ozs7O0lBRU8sV0FBVztRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDbkMsQ0FBQzs7OztJQUVNLGlCQUFpQjtRQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUN0RSxDQUFDOzs7O0lBRU0sUUFBUTtRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDOzs7O0lBRU0sV0FBVztRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNOzs7O1FBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssSUFBSSxFQUFDLENBQUM7SUFDakUsQ0FBQzs7Ozs7SUFFTSxPQUFPLENBQUMsRUFBVTtRQUNyQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSTs7OztRQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBQyxDQUFDO0lBQ3JELENBQUM7Ozs7O0lBRU0sWUFBWSxDQUFDLEVBQVU7UUFDMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVM7Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFDLENBQUM7SUFDbEQsQ0FBQzs7OztJQUVNLEtBQUs7UUFDUixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7Ozs7O0lBRU0sT0FBTyxDQUFDLElBQXVCO1FBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDOzs7OztJQUVNLFVBQVUsQ0FBQyxFQUFVOztjQUNsQixLQUFLLEdBQVcsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7UUFDM0MsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3RCO0lBQ0wsQ0FBQzs7Ozs7SUFFTSxXQUFXLENBQUMsTUFBc0I7UUFDckMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07Ozs7UUFBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxNQUFNLEVBQUMsQ0FBQztJQUMvRCxDQUFDOzs7WUEzREosVUFBVTs7Ozs7Ozs7O0lBR1Asa0NBQXdDOztJQUV4QyxrQ0FBaUI7O0lBQ2pCLHdDQUF1Qjs7SUFDdkIsMkNBQXFFOztJQUNyRSw2Q0FBdUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElEYXRhdHJhbnNmZXJJdGVtIH0gZnJvbSAnLi4vbW9kZWxzL2RhdGF0cmFuc2Zlci1pdGVtLm1vZGVsJztcclxuaW1wb3J0IHsgSVByb2dyZXNzQ29udGFpbmVyLCBQcm9ncmVzc0NvbnRhaW5lciB9IGZyb20gJy4uL21vZGVscy9wcm9ncmVzcy1jb250YWluZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBUcmFuc2ZlclN0YXR1cyB9IGZyb20gJy4uL2VudW1zL3RyYW5zZmVyLXN0YXR1cy5lbnVtJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIERhdGF0cmFuc2ZlclN0b3JlIHtcclxuXHJcbiAgICBwcml2YXRlIGl0ZW1zOiBJRGF0YXRyYW5zZmVySXRlbVtdID0gW107XHJcblxyXG4gICAgcHVibGljIGNvdW50ID0gMDtcclxuICAgIHB1YmxpYyBmYWlsZWRDb3VudCA9IDA7XHJcbiAgICBwdWJsaWMgdXBsb2FkUHJvZ3Jlc3M6IElQcm9ncmVzc0NvbnRhaW5lciA9IG5ldyBQcm9ncmVzc0NvbnRhaW5lcigwKTtcclxuICAgIHB1YmxpYyBkb3dubG9hZFByb2dyZXNzOiBJUHJvZ3Jlc3NDb250YWluZXIgPSBuZXcgUHJvZ3Jlc3NDb250YWluZXIoMCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdXBkYXRlQ291bnQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5jb3VudCA9IHRoaXMuaXRlbXMubGVuZ3RoO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyB1cGRhdGVGYWlsZWRDb3VudCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZhaWxlZENvdW50ID0gdGhpcy5nZXRCeVN0YXR1cyhUcmFuc2ZlclN0YXR1cy5GYWlsZWQpLmxlbmd0aDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0SXRlbXMoKTogSURhdGF0cmFuc2Zlckl0ZW1bXSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXRlbXM7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldFNlbGVjdGVkKCk6IElEYXRhdHJhbnNmZXJJdGVtW10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5pc1NlbGVjdGVkID09PSB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0QnlJZChpZDogc3RyaW5nKTogSURhdGF0cmFuc2Zlckl0ZW0ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW0pID0+IGl0ZW0uaWQgPT09IGlkKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0SW5kZXhCeUlkKGlkOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmRJbmRleChpID0+IGkuaWQgPT09IGlkKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pdGVtcy5sZW5ndGggPSAwO1xyXG4gICAgICAgIHRoaXMudXBkYXRlQ291bnQoKTtcclxuICAgICAgICB0aGlzLnVwZGF0ZUZhaWxlZENvdW50KCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZEl0ZW0oaXRlbTogSURhdGF0cmFuc2Zlckl0ZW0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLml0ZW1zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVDb3VudCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyByZW1vdmVCeUlkKGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBpbmRleDogbnVtYmVyID0gdGhpcy5nZXRJbmRleEJ5SWQoaWQpO1xyXG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXRlbXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVDb3VudCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0QnlTdGF0dXMoc3RhdHVzOiBUcmFuc2ZlclN0YXR1cykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5zdGF0dXMgPT09IHN0YXR1cyk7XHJcbiAgICB9XHJcbn1cclxuIl19