UNPKG

ngx-surveys

Version:
42 lines 3.5 kB
import { Pipe } from '@angular/core'; import * as i0 from "@angular/core"; /* * Convert bytes into largest possible unit. * Takes an precision argument that defaults to 2. * Usage: * bytes | fileSize:precision * Example: * {{ 1024 | fileSize}} * formats to: 1 KB */ export class FileSizePipe { constructor() { this.units = [ 'bytes', 'KB', 'MB', 'GB', 'TB', 'PB' ]; } transform(bytes = 0, precision = 2, separator = ' ') { if (!isFinite(bytes)) { return '?'; } ; let unit = 0; while (bytes >= 1024) { bytes /= 1024; unit++; } return bytes.toFixed(+precision) + separator + this.units[unit]; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FileSizePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); } static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: FileSizePipe, name: "fileSize" }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FileSizePipe, decorators: [{ type: Pipe, args: [{ name: 'fileSize' }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zaXplLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc3VydmV5cy9zcmMvbGliL3BpcGVzL2ZpbGUtc2l6ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUVwRDs7Ozs7Ozs7RUFRRTtBQUVGLE1BQU0sT0FBTyxZQUFZO0lBRHpCO1FBR1UsVUFBSyxHQUFHO1lBQ2QsT0FBTztZQUNQLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1NBQ0wsQ0FBQztLQWFIO0lBWEMsU0FBUyxDQUFDLFFBQWdCLENBQUMsRUFBRSxZQUFvQixDQUFDLEVBQUUsWUFBb0IsUUFBUTtRQUM5RSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFBQyxPQUFPLEdBQUcsQ0FBQztRQUFDLENBQUM7UUFBQSxDQUFDO1FBRXRDLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztRQUViLE9BQVEsS0FBSyxJQUFJLElBQUksRUFBRyxDQUFDO1lBQ3ZCLEtBQUssSUFBSSxJQUFJLENBQUM7WUFDZCxJQUFJLEVBQUcsQ0FBQztRQUNWLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUUsQ0FBRSxTQUFTLENBQUUsR0FBRyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBRSxJQUFJLENBQUUsQ0FBQztJQUN2RSxDQUFDOytHQXJCVSxZQUFZOzZHQUFaLFlBQVk7OzRGQUFaLFlBQVk7a0JBRHhCLElBQUk7bUJBQUMsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKlxuICogQ29udmVydCBieXRlcyBpbnRvIGxhcmdlc3QgcG9zc2libGUgdW5pdC5cbiAqIFRha2VzIGFuIHByZWNpc2lvbiBhcmd1bWVudCB0aGF0IGRlZmF1bHRzIHRvIDIuXG4gKiBVc2FnZTpcbiAqICAgYnl0ZXMgfCBmaWxlU2l6ZTpwcmVjaXNpb25cbiAqIEV4YW1wbGU6XG4gKiAgIHt7IDEwMjQgfCAgZmlsZVNpemV9fVxuICogICBmb3JtYXRzIHRvOiAxIEtCXG4qL1xuQFBpcGUoe25hbWU6ICdmaWxlU2l6ZSd9KVxuZXhwb3J0IGNsYXNzIEZpbGVTaXplUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHByaXZhdGUgdW5pdHMgPSBbXG4gICAgJ2J5dGVzJyxcbiAgICAnS0InLFxuICAgICdNQicsXG4gICAgJ0dCJyxcbiAgICAnVEInLFxuICAgICdQQidcbiAgXTtcblxuICB0cmFuc2Zvcm0oYnl0ZXM6IG51bWJlciA9IDAsIHByZWNpc2lvbjogbnVtYmVyID0gMiwgc2VwYXJhdG9yOiBzdHJpbmcgPSAnJm5ic3A7JyApOiBzdHJpbmcge1xuICAgIGlmICghaXNGaW5pdGUoYnl0ZXMpKSB7IHJldHVybiAnPyc7IH07XG5cbiAgICBsZXQgdW5pdCA9IDA7XG5cbiAgICB3aGlsZSAoIGJ5dGVzID49IDEwMjQgKSB7XG4gICAgICBieXRlcyAvPSAxMDI0O1xuICAgICAgdW5pdCArKztcbiAgICB9XG4gICAgcmV0dXJuIGJ5dGVzLnRvRml4ZWQoICsgcHJlY2lzaW9uICkgKyBzZXBhcmF0b3IgKyB0aGlzLnVuaXRzWyB1bml0IF07XG4gIH1cbn1cbiJdfQ==