com.phloxui
Version:
PhloxUI Ng2+ Framework
63 lines (62 loc) • 5.57 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* @abstract
*/
export class AbstractFormatterPipe {
/**
* @param {?} formatterFactory
*/
constructor(formatterFactory) {
this.formatterFactory = formatterFactory;
}
/**
* @return {?}
*/
transform() {
let /** @type {?} */ value = null;
let /** @type {?} */ name = null;
let /** @type {?} */ args = [];
for (let /** @type {?} */ i = 0; i < arguments.length; i++) {
if (i == 0) {
// first index is value
value = arguments[i];
}
else if (i == 1) {
// second index is name
name = arguments[i];
}
else {
args.push(arguments[i]);
}
}
let /** @type {?} */ formatter = null;
if (this.formatterFactory !== null && typeof this.formatterFactory !== 'undefined') {
formatter = this.formatterFactory.createFormatter(name);
}
if (formatter !== null && typeof formatter !== 'undefined') {
let /** @type {?} */ argToOpt = null;
if (typeof formatter.parseToOptions === 'function') {
argToOpt = formatter.parseToOptions(args);
}
if (typeof formatter.setOptions === 'function') {
formatter.setOptions(argToOpt);
}
}
return this.doTransform(formatter, value);
}
}
function AbstractFormatterPipe_tsickle_Closure_declarations() {
/** @type {?} */
AbstractFormatterPipe.prototype.formatterFactory;
/**
* @abstract
* @param {?} formatter
* @param {?} value
* @return {?}
*/
AbstractFormatterPipe.prototype.doTransform = function (formatter, value) { };
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RGb3JtYXR0ZXJQaXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vY29tLnBobG94dWkvIiwic291cmNlcyI6WyJsaWIvcGlwZS9BYnN0cmFjdEZvcm1hdHRlclBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUdBLE1BQU07Ozs7SUFJSixZQUFZLGdCQUFrQztRQUM1QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUM7S0FDMUM7Ozs7SUFFTSxTQUFTO1FBQ2QscUJBQUksS0FBSyxHQUFHLElBQUksQ0FBQztRQUNqQixxQkFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLHFCQUFJLElBQUksR0FBVSxFQUFFLENBQUM7UUFDckIsR0FBRyxDQUFDLENBQUMscUJBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDOztnQkFFWCxLQUFLLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3RCO1lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDOztnQkFFbEIsSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNyQjtZQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDekI7U0FDRjtRQUVELHFCQUFJLFNBQVMsR0FBUSxJQUFJLENBQUM7UUFDMUIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixLQUFLLElBQUksSUFBSSxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQ25GLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3pEO1FBRUQsRUFBRSxDQUFDLENBQUMsU0FBUyxLQUFLLElBQUksSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzNELHFCQUFJLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDcEIsRUFBRSxDQUFDLENBQUMsT0FBTyxTQUFTLENBQUMsY0FBYyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQ25ELFFBQVEsR0FBRyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzNDO1lBQ0QsRUFBRSxDQUFBLENBQUMsT0FBTyxTQUFTLENBQUMsVUFBVSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQzlDLFNBQVMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDaEM7U0FDRjtRQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQzs7Q0FJN0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPbkluaXQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1hdHRlckZhY3RvcnkgfSBmcm9tICcuLi9zZXJ2aWNlL0Zvcm1hdHRlckZhY3Rvcnkuc2VydmljZSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEZvcm1hdHRlclBpcGUge1xuXG4gIHByb3RlY3RlZCBmb3JtYXR0ZXJGYWN0b3J5OiBGb3JtYXR0ZXJGYWN0b3J5O1xuXG4gIGNvbnN0cnVjdG9yKGZvcm1hdHRlckZhY3Rvcnk6IEZvcm1hdHRlckZhY3RvcnkpIHtcbiAgICB0aGlzLmZvcm1hdHRlckZhY3RvcnkgPSBmb3JtYXR0ZXJGYWN0b3J5O1xuICB9XG5cbiAgcHVibGljIHRyYW5zZm9ybSgpOiBhbnkge1xuICAgIGxldCB2YWx1ZSA9IG51bGw7XG4gICAgbGV0IG5hbWUgPSBudWxsO1xuICAgIGxldCBhcmdzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoaSA9PSAwKSB7XG4gICAgICAgIC8vIGZpcnN0IGluZGV4IGlzIHZhbHVlXG4gICAgICAgIHZhbHVlID0gYXJndW1lbnRzW2ldO1xuICAgICAgfSBlbHNlIGlmIChpID09IDEpIHtcbiAgICAgICAgLy8gc2Vjb25kIGluZGV4IGlzIG5hbWVcbiAgICAgICAgbmFtZSA9IGFyZ3VtZW50c1tpXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFyZ3MucHVzaChhcmd1bWVudHNbaV0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBmb3JtYXR0ZXI6IGFueSA9IG51bGw7XG4gICAgaWYgKHRoaXMuZm9ybWF0dGVyRmFjdG9yeSAhPT0gbnVsbCAmJiB0eXBlb2YgdGhpcy5mb3JtYXR0ZXJGYWN0b3J5ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgZm9ybWF0dGVyID0gdGhpcy5mb3JtYXR0ZXJGYWN0b3J5LmNyZWF0ZUZvcm1hdHRlcihuYW1lKTtcbiAgICB9XG5cbiAgICBpZiAoZm9ybWF0dGVyICE9PSBudWxsICYmIHR5cGVvZiBmb3JtYXR0ZXIgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBsZXQgYXJnVG9PcHQgPSBudWxsO1xuICAgICAgaWYgKHR5cGVvZiBmb3JtYXR0ZXIucGFyc2VUb09wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgYXJnVG9PcHQgPSBmb3JtYXR0ZXIucGFyc2VUb09wdGlvbnMoYXJncyk7XG4gICAgICB9XG4gICAgICBpZih0eXBlb2YgZm9ybWF0dGVyLnNldE9wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgZm9ybWF0dGVyLnNldE9wdGlvbnMoYXJnVG9PcHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRvVHJhbnNmb3JtKGZvcm1hdHRlciwgdmFsdWUpO1xuICB9XG5cbiAgYWJzdHJhY3QgZG9UcmFuc2Zvcm0oZm9ybWF0dGVyOiBhbnksIHZhbHVlOiBhbnkpOiBhbnk7XG59XG4iXX0=