UNPKG

com.phloxui

Version:

PhloxUI Ng2+ Framework

173 lines (172 loc) 11.5 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ import * as tslib_1 from "tslib"; import { AbstractHasDataHelp } from '../AbstractHasDataHelp'; import { Option } from '../../decorator/Option.decorator'; import { ArrayUtils } from '../../share/utils/ArrayUtils'; import { DataUtils } from '../../share/utils/DataUtils'; /** * @abstract */ var AbstractDataView = /** @class */ (function (_super) { tslib_1.__extends(AbstractDataView, _super); function AbstractDataView(elementRef) { return _super.call(this, elementRef) || this; } Object.defineProperty(AbstractDataView.prototype, "mappedData", { get: /** * @return {?} */ function () { return this.getMappedData(); }, enumerable: true, configurable: true }); /** * @return {?} */ AbstractDataView.prototype.ngOnInit = /** * @return {?} */ function () { _super.prototype.ngOnInit.call(this); }; /** * @param {?} changes * @return {?} */ AbstractDataView.prototype.ngOnChanges = /** * @param {?} changes * @return {?} */ function (changes) { _super.prototype.ngOnChanges.call(this, changes); if (changes['field'] !== null && typeof changes['field'] !== 'undefined') { this.chainData(); } }; /** * @param {?} field * @param {?} data * @return {?} */ AbstractDataView.isFieldMappingEnable = /** * @param {?} field * @param {?} data * @return {?} */ function (field, data) { if ((field !== null && typeof field !== 'undefined') && (data !== null && typeof data === 'object')) { if (Array.isArray(data)) { return ArrayUtils.isAllMemberTypeOf(data, 'object'); } return true; } return false; }; /** * @param {?} field * @param {?} data * @return {?} */ AbstractDataView.resolveMappedData = /** * @param {?} field * @param {?} data * @return {?} */ function (field, data) { if (field === null || typeof field === 'undefined') { return data; } var /** @type {?} */ isFieldMapping = AbstractDataView.isFieldMappingEnable(field, data); if (isFieldMapping) { if (Array.isArray(data)) { var /** @type {?} */ resultArray = []; try { for (var data_1 = tslib_1.__values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) { var d = data_1_1.value; var /** @type {?} */ val = null; if (typeof d === 'object') { val = DataUtils.getDataValue(field, d); } resultArray.push(val); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (data_1_1 && !data_1_1.done && (_a = data_1.return)) _a.call(data_1); } finally { if (e_1) throw e_1.error; } } return resultArray; } else if (typeof data === 'object') { return DataUtils.getDataValue(field, data); } } return data; var e_1, _a; }; /** * @param {?} field * @return {?} */ AbstractDataView.prototype.setField = /** * @param {?} field * @return {?} */ function (field) { this.field = field; }; /** * @return {?} */ AbstractDataView.prototype.getField = /** * @return {?} */ function () { return this.field; }; /** * @return {?} */ AbstractDataView.prototype.getChainData = /** * @return {?} */ function () { return this.getMappedData(); }; /** * @return {?} */ AbstractDataView.prototype.isMappingEnable = /** * @return {?} */ function () { return AbstractDataView.isFieldMappingEnable(this.field, this.data); }; /** * @return {?} */ AbstractDataView.prototype.getMappedData = /** * @return {?} */ function () { return AbstractDataView.resolveMappedData(this.field, this.data); }; tslib_1.__decorate([ Option(), tslib_1.__metadata("design:type", String) ], AbstractDataView.prototype, "field", void 0); return AbstractDataView; }(AbstractHasDataHelp)); export { AbstractDataView }; function AbstractDataView_tsickle_Closure_declarations() { /** @type {?} */ AbstractDataView.prototype.field; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3REYXRhVmlldy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2NvbS5waGxveHVpLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudC9kYXRhdmlldy9BYnN0cmFjdERhdGFWaWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHN0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7O0lBRVQsNENBQW1CO0lBS2hFLDBCQUFZLFVBQXNCO2VBQ2hDLGtCQUFNLFVBQVUsQ0FBQztLQUNsQjtJQUVELHNCQUFjLHdDQUFVOzs7O1FBQXhCO1lBQ0UsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUM3Qjs7O09BQUE7Ozs7SUFFTSxtQ0FBUTs7OztRQUNiLGlCQUFNLFFBQVEsV0FBRSxDQUFDOzs7Ozs7SUFHWixzQ0FBVzs7OztjQUFDLE9BQVk7UUFDN0IsaUJBQU0sV0FBVyxZQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTNCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztZQUN6RSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7Ozs7Ozs7SUFHVyxxQ0FBb0I7Ozs7O2NBQUMsS0FBYSxFQUFFLElBQVM7UUFDekQsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLE9BQU8sS0FBSyxLQUFLLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEcsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hCLE1BQU0sQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQ3JEO1lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQztTQUNiO1FBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQzs7Ozs7OztJQUdELGtDQUFpQjs7Ozs7Y0FBQyxLQUFhLEVBQUUsSUFBUztRQUN0RCxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLE9BQU8sS0FBSyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDbkQsTUFBTSxDQUFDLElBQUksQ0FBQztTQUNiO1FBRUQscUJBQUksY0FBYyxHQUFHLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUV4RSxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBQ25CLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN4QixxQkFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDOztvQkFFckIsR0FBRyxDQUFDLENBQVUsSUFBQSxTQUFBLGlCQUFBLElBQUksQ0FBQSwwQkFBQTt3QkFBYixJQUFJLENBQUMsaUJBQUE7d0JBQ1IscUJBQUksR0FBRyxHQUFHLElBQUksQ0FBQzt3QkFDZixFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDOzRCQUMxQixHQUFHLEdBQUcsU0FBUyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7eUJBQ3hDO3dCQUNELFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7cUJBQ3ZCOzs7Ozs7Ozs7Z0JBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQzthQUNwQjtZQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxNQUFNLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDNUM7U0FDRjtRQUVELE1BQU0sQ0FBQyxJQUFJLENBQUM7Ozs7Ozs7SUFHUCxtQ0FBUTs7OztjQUFDLEtBQWE7UUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7Ozs7O0lBR2QsbUNBQVE7Ozs7UUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzs7Ozs7SUFHYix1Q0FBWTs7OztRQUNqQixNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDOzs7OztJQUd2QiwwQ0FBZTs7OztRQUNwQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Ozs7O0lBRy9ELHdDQUFhOzs7O1FBQ2xCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzs7O1FBaEZsRSxNQUFNLEVBQUU7OzsyQkFaWDtFQVUrQyxtQkFBbUI7U0FBNUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkNoYW5nZXMsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSURhdGFWaWV3IH0gZnJvbSAnLi8uLi9kYXRhdmlldy9JRGF0YVZpZXcnO1xuaW1wb3J0IHsgQWJzdHJhY3RIYXNEYXRhSGVscCB9IGZyb20gJy4uL0Fic3RyYWN0SGFzRGF0YUhlbHAnO1xuaW1wb3J0IHsgSUhhc0RhdGEgfSBmcm9tICcuLi9JSGFzRGF0YSc7XG5pbXBvcnQgeyBJSGFzSGVscCB9IGZyb20gJy4uL0lIYXNIZWxwJztcbmltcG9ydCB7IE9wdGlvbiB9IGZyb20gJy4uLy4uL2RlY29yYXRvci9PcHRpb24uZGVjb3JhdG9yJztcbmltcG9ydCB7IEkxOE4gfSBmcm9tICcuLi8uLi9kZWNvcmF0b3IvSTE4Ti5kZWNvcmF0b3InO1xuaW1wb3J0IHsgQXJyYXlVdGlscyB9IGZyb20gJy4uLy4uL3NoYXJlL3V0aWxzL0FycmF5VXRpbHMnO1xuaW1wb3J0IHsgRGF0YVV0aWxzIH0gZnJvbSAnLi4vLi4vc2hhcmUvdXRpbHMvRGF0YVV0aWxzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0RGF0YVZpZXcgZXh0ZW5kcyBBYnN0cmFjdEhhc0RhdGFIZWxwIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIElEYXRhVmlldyB7XG5cbiAgQE9wdGlvbigpXG4gIHByb3RlY3RlZCBmaWVsZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICBzdXBlcihlbGVtZW50UmVmKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgbWFwcGVkRGF0YSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmdldE1hcHBlZERhdGEoKTsgXG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBhbnkpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcblxuICAgIGlmIChjaGFuZ2VzWydmaWVsZCddICE9PSBudWxsICYmIHR5cGVvZiBjaGFuZ2VzWydmaWVsZCddICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy5jaGFpbkRhdGEoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGlzRmllbGRNYXBwaW5nRW5hYmxlKGZpZWxkOiBzdHJpbmcsIGRhdGE6IGFueSk6IGJvb2xlYW4ge1xuICAgIGlmICgoZmllbGQgIT09IG51bGwgJiYgdHlwZW9mIGZpZWxkICE9PSAndW5kZWZpbmVkJykgJiYgKGRhdGEgIT09IG51bGwgJiYgdHlwZW9mIGRhdGEgPT09ICdvYmplY3QnKSkge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICAgICAgcmV0dXJuIEFycmF5VXRpbHMuaXNBbGxNZW1iZXJUeXBlT2YoZGF0YSwgJ29iamVjdCcpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHJlc29sdmVNYXBwZWREYXRhKGZpZWxkOiBzdHJpbmcsIGRhdGE6IGFueSk6IGFueSB7XG4gICAgaWYgKGZpZWxkID09PSBudWxsIHx8IHR5cGVvZiBmaWVsZCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cblxuICAgIGxldCBpc0ZpZWxkTWFwcGluZyA9IEFic3RyYWN0RGF0YVZpZXcuaXNGaWVsZE1hcHBpbmdFbmFibGUoZmllbGQsIGRhdGEpO1xuXG4gICAgaWYgKGlzRmllbGRNYXBwaW5nKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgICAgICBsZXQgcmVzdWx0QXJyYXkgPSBbXTtcblxuICAgICAgICBmb3IgKGxldCBkIG9mIGRhdGEpIHtcbiAgICAgICAgICBsZXQgdmFsID0gbnVsbDtcbiAgICAgICAgICBpZiAodHlwZW9mIGQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICB2YWwgPSBEYXRhVXRpbHMuZ2V0RGF0YVZhbHVlKGZpZWxkLCBkKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmVzdWx0QXJyYXkucHVzaCh2YWwpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdEFycmF5O1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZGF0YSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmV0dXJuIERhdGFVdGlscy5nZXREYXRhVmFsdWUoZmllbGQsIGRhdGEpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgcHVibGljIHNldEZpZWxkKGZpZWxkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmZpZWxkID0gZmllbGQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0RmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDaGFpbkRhdGEoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5nZXRNYXBwZWREYXRhKCk7XG4gIH1cblxuICBwdWJsaWMgaXNNYXBwaW5nRW5hYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBBYnN0cmFjdERhdGFWaWV3LmlzRmllbGRNYXBwaW5nRW5hYmxlKHRoaXMuZmllbGQsIHRoaXMuZGF0YSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TWFwcGVkRGF0YSgpOiBhbnkge1xuICAgIHJldHVybiBBYnN0cmFjdERhdGFWaWV3LnJlc29sdmVNYXBwZWREYXRhKHRoaXMuZmllbGQsIHRoaXMuZGF0YSk7XG4gIH1cblxufVxuIl19