com.phloxui
Version:
PhloxUI Ng2+ Framework
75 lines (74 loc) • 5.12 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import * as tslib_1 from "tslib";
import { AbstractPipeFormatter } from './AbstractPipeFormatter';
import { Option } from '../../decorator/Option.decorator';
import { DataUtils } from '../utils/DataUtils';
const /** @type {?} */ NAME = 'field';
export class FieldFormatter extends AbstractPipeFormatter {
constructor() {
super(NAME);
}
/**
* @param {?} data
* @return {?}
*/
format(data) {
let /** @type {?} */ field = this.field;
if (!field) {
// Default field is "label".
field = 'label';
}
return DataUtils.getDataValue(this.field, data);
}
/**
* @param {?} data
* @return {?}
*/
parse(data) {
// Field formatter is not reversible.
return data;
}
/**
* @return {?}
*/
getField() {
return this.field;
}
/**
* @param {?} field
* @return {?}
*/
setField(field) {
this.field = field;
}
/**
* @param {?} args
* @return {?}
*/
parseToOptions(args) {
let /** @type {?} */ field = undefined;
if (args !== null && typeof args !== 'undefined') {
if (args.length > 0) {
field = args[0];
}
}
return {
field: field
};
}
}
FieldFormatter.NAME = NAME;
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", String)
], FieldFormatter.prototype, "field", void 0);
function FieldFormatter_tsickle_Closure_declarations() {
/** @type {?} */
FieldFormatter.NAME;
/** @type {?} */
FieldFormatter.prototype.field;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmllbGRGb3JtYXR0ZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9jb20ucGhsb3h1aS8iLCJzb3VyY2VzIjpbImxpYi9zaGFyZS9mb3JtYXR0ZXIvRmllbGRGb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFHMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRS9DLHVCQUFNLElBQUksR0FBVyxPQUFPLENBQUM7QUFFN0IsTUFBTSxxQkFBc0IsU0FBUSxxQkFBcUI7SUFPdkQ7UUFDRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDYjs7Ozs7SUFFTSxNQUFNLENBQUMsSUFBUztRQUNyQixxQkFBSSxLQUFLLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUvQixFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7O1lBRVgsS0FBSyxHQUFHLE9BQU8sQ0FBQztTQUNqQjtRQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7Ozs7OztJQUczQyxLQUFLLENBQUMsSUFBWTs7UUFFdkIsTUFBTSxDQUFDLElBQUksQ0FBQzs7Ozs7SUFHUCxRQUFRO1FBQ2IsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7Ozs7OztJQUdiLFFBQVEsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDOzs7Ozs7SUFHZCxjQUFjLENBQUMsSUFBVztRQUMvQixxQkFBSSxLQUFLLEdBQVcsU0FBUyxDQUFDO1FBRTlCLEVBQUUsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksT0FBTyxJQUFJLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztZQUNqRCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BCLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDakI7U0FDRjtRQUVELE1BQU0sQ0FBQztZQUNMLEtBQUssRUFBRSxLQUFLO1NBQ2IsQ0FBQzs7O3NCQTVDa0MsSUFBSTs7SUFFekMsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RQaXBlRm9ybWF0dGVyIH0gZnJvbSAnLi9BYnN0cmFjdFBpcGVGb3JtYXR0ZXInO1xyXG5pbXBvcnQgeyBPcHRpb24gfSBmcm9tICcuLi8uLi9kZWNvcmF0b3IvT3B0aW9uLmRlY29yYXRvcic7XHJcbmltcG9ydCB7IFBobG94QXBwSW5mb1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgUGhsb3hBcHBJbmZvIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50L21vZGVsL1BobG94QXBwSW5mbyc7XHJcbmltcG9ydCB7IERhdGFVdGlscyB9IGZyb20gJy4uL3V0aWxzL0RhdGFVdGlscyc7XHJcblxyXG5jb25zdCBOQU1FOiBzdHJpbmcgPSAnZmllbGQnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEZpZWxkRm9ybWF0dGVyIGV4dGVuZHMgQWJzdHJhY3RQaXBlRm9ybWF0dGVyIHtcclxuXHJcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBOQU1FOiBzdHJpbmcgPSBOQU1FO1xyXG5cclxuICBAT3B0aW9uKClcclxuICBwcml2YXRlIGZpZWxkOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoTkFNRSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZm9ybWF0KGRhdGE6IGFueSk6IHN0cmluZyB7XHJcbiAgICBsZXQgZmllbGQ6IHN0cmluZyA9IHRoaXMuZmllbGQ7XHJcblxyXG4gICAgaWYgKCFmaWVsZCkge1xyXG4gICAgICAvLyBEZWZhdWx0IGZpZWxkIGlzIFwibGFiZWxcIi5cclxuICAgICAgZmllbGQgPSAnbGFiZWwnO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBEYXRhVXRpbHMuZ2V0RGF0YVZhbHVlKHRoaXMuZmllbGQsIGRhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBhcnNlKGRhdGE6IHN0cmluZyk6IGFueSB7XHJcbiAgICAvLyBGaWVsZCBmb3JtYXR0ZXIgaXMgbm90IHJldmVyc2libGUuXHJcbiAgICByZXR1cm4gZGF0YTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRGaWVsZCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZmllbGQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RmllbGQoZmllbGQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5maWVsZCA9IGZpZWxkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBhcnNlVG9PcHRpb25zKGFyZ3M6IGFueVtdKTogYW55IHtcclxuICAgIGxldCBmaWVsZDogc3RyaW5nID0gdW5kZWZpbmVkO1xyXG5cclxuICAgIGlmIChhcmdzICE9PSBudWxsICYmIHR5cGVvZiBhcmdzICE9PSAndW5kZWZpbmVkJykge1xyXG4gICAgICBpZiAoYXJncy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgZmllbGQgPSBhcmdzWzBdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZmllbGQ6IGZpZWxkXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=