UNPKG

ng2-bs-table

Version:
69 lines 3.04 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports, "__esModule", { value: true }); var core_1 = require("@angular/core"); var common_1 = require("@angular/common"); var string_helper_1 = require("../helpers/string-helper"); var FormatPipe = (function () { function FormatPipe() { this.datePipe = new common_1.DatePipe('en-US'); this.decimalPipe = new common_1.DecimalPipe('en-US'); } FormatPipe.prototype.transform = function (input, args) { var format = ''; var parsedFloat = 0; var pipeArgs = args.split(':'); for (var i = 0; i < pipeArgs.length; i++) { pipeArgs[i] = pipeArgs[i].trim(' '); } //Escape all html if not explicitly set if (pipeArgs[0].toLowerCase() !== 'html') input = string_helper_1.StringHelper.escapeHtml(input); switch (pipeArgs[0].toLowerCase()) { case 'text': return input; case 'decimal': case 'number': parsedFloat = !isNaN(parseFloat(input)) ? parseFloat(input) : 0; format = pipeArgs.length > 1 ? pipeArgs[1] : null; return this.decimalPipe.transform(parsedFloat, format); case 'percentage': parsedFloat = !isNaN(parseFloat(input)) ? parseFloat(input) : 0; format = pipeArgs.length > 1 ? pipeArgs[1] : null; return this.decimalPipe.transform(parsedFloat, format) + '%'; case 'date': case 'datetime': var date = !isNaN(parseInt(input)) ? parseInt(input) : new Date(input); format = 'MMM d, y h:mm:ss a'; if (pipeArgs.length > 1) { format = ''; for (var i = 1; i < pipeArgs.length; i++) { format += pipeArgs[i]; } } return this.datePipe.transform(date, format); default: return input; } }; return FormatPipe; }()); FormatPipe = __decorate([ core_1.Pipe({ name: 'format' }), __metadata("design:paramtypes", []) ], FormatPipe); exports.FormatPipe = FormatPipe; exports.FORMAT_PROVIDERS = [ FormatPipe ]; //# sourceMappingURL=format.pipe.js.map