com.phloxui
Version:
PhloxUI Ng2+ Framework
260 lines (259 loc) • 16.2 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import * as tslib_1 from "tslib";
import { Component, ElementRef, Input } from '@angular/core';
import { AbstractHasDataHelp } from './AbstractHasDataHelp';
import { SimpleListModel } from './model/SimpleListModel';
import { DataUtils } from '../share/utils/DataUtils';
import { Option } from '../decorator/Option.decorator';
import { I18N } from '../decorator/decorators';
var /** @type {?} */ TYPE_NAME = "phx-simple-list-pane";
var SimpleListPane = /** @class */ (function (_super) {
tslib_1.__extends(SimpleListPane, _super);
function SimpleListPane(elementRef) {
return _super.call(this, elementRef) || this;
}
/**
* @return {?}
*/
SimpleListPane.prototype.ngOnInit = /**
* @return {?}
*/
function () {
_super.prototype.ngOnInit.call(this);
};
/**
* @param {?} key
* @param {?} dataObj
* @return {?}
*/
SimpleListPane.prototype._getDataValue = /**
* @param {?} key
* @param {?} dataObj
* @return {?}
*/
function (key, dataObj) {
return DataUtils.getDataValue(key, dataObj);
};
/**
* @return {?}
*/
SimpleListPane.prototype.isHasModel = /**
* @return {?}
*/
function () {
if (this.model !== null && typeof this.model !== 'undefined') {
return true;
}
return false;
};
/**
* @return {?}
*/
SimpleListPane.prototype.getDataRecords = /**
* @return {?}
*/
function () {
var /** @type {?} */ container = [];
if (this.data !== null && typeof this.data !== 'undefined') {
if (Array.isArray(this.data)) {
return this.data;
}
else {
container.push(this.data);
}
}
return container;
};
/**
* @return {?}
*/
SimpleListPane.prototype.getModel = /**
* @return {?}
*/
function () {
return this.model;
};
/**
* @param {?} model
* @return {?}
*/
SimpleListPane.prototype.setModel = /**
* @param {?} model
* @return {?}
*/
function (model) {
this.model = model;
};
/**
* @return {?}
*/
SimpleListPane.prototype.isSelfDataDirty = /**
* @return {?}
*/
function () {
return false;
};
/**
* @param {?} data
* @return {?}
*/
SimpleListPane.prototype.selfSaveData = /**
* @param {?} data
* @return {?}
*/
function (data) {
};
/**
* @return {?}
*/
SimpleListPane.prototype.selfResetData = /**
* @return {?}
*/
function () {
};
/**
* @return {?}
*/
SimpleListPane.prototype.doPreload = /**
* @return {?}
*/
function () {
return new Promise(function (resolve, reject) { resolve(null); });
};
/**
* @return {?}
*/
SimpleListPane.prototype.doLoaded = /**
* @return {?}
*/
function () {
};
SimpleListPane.TYPE_NAME = TYPE_NAME;
SimpleListPane.decorators = [
{ type: Component, args: [{
moduleId: module.id,
selector: TYPE_NAME,
template: "<div class=\"phx-simple-list-pane\">\n\t<div class=\"row\" *ngFor=\"let item of getDataRecords(); let j = index\">\n\t\t<div class=\"col-md-12\">\n\t\t\t<div class=\"row-content\">\n\t\t\t\t<div class=\"row-icon\"></div>\n\t\t\t\t<div class=\"row-data\">\n\t\t\t\t\t<div class=\"title\" *ngIf=\"isHasModel()\"><phx-data-view-wrapper class=\"active\" [type]=\"getModel().titleType\" [data]=\"item\" [options]=\"{field: getModel().titleFieldName}\"></phx-data-view-wrapper></div>\n\t\t\t\t\t<div class=\"description\" *ngIf=\"isHasModel()\"><phx-data-view-wrapper class=\"active\" [type]=\"getModel().descriptionType\" [data]=\"_getDataValue(getModel().descriptionFieldName, item)\"></phx-data-view-wrapper></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n"
},] },
];
/** @nocollapse */
SimpleListPane.ctorParameters = function () { return [
{ type: ElementRef, },
]; };
SimpleListPane.propDecorators = {
"model": [{ type: Input },],
"dataParent": [{ type: Input },],
"ignoreParentData": [{ type: Input },],
"data": [{ type: Input },],
"ignoreParentDisabled": [{ type: Input },],
"delegateHistory": [{ type: Input },],
"onDisabled": [{ type: Input },],
"onEnabled": [{ type: Input },],
"loadingEnabled": [{ type: Input },],
"i18nKey": [{ type: Input },],
"bypass": [{ type: Input, args: ['i18nBypass',] },],
"options": [{ type: Input },],
"disabled": [{ type: Input },],
"help": [{ type: Input },],
};
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", SimpleListModel)
], SimpleListPane.prototype, "model", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Object)
], SimpleListPane.prototype, "dataParent", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Boolean)
], SimpleListPane.prototype, "ignoreParentData", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Object)
], SimpleListPane.prototype, "data", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Boolean)
], SimpleListPane.prototype, "ignoreParentDisabled", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Boolean)
], SimpleListPane.prototype, "delegateHistory", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Function)
], SimpleListPane.prototype, "onDisabled", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Function)
], SimpleListPane.prototype, "onEnabled", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Boolean)
], SimpleListPane.prototype, "loadingEnabled", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", String)
], SimpleListPane.prototype, "i18nKey", void 0);
tslib_1.__decorate([
Option('i18nBypass'),
tslib_1.__metadata("design:type", Boolean)
], SimpleListPane.prototype, "bypass", void 0);
tslib_1.__decorate([
Option(),
tslib_1.__metadata("design:type", Boolean)
], SimpleListPane.prototype, "disabled", void 0);
tslib_1.__decorate([
I18N(),
Option(),
tslib_1.__metadata("design:type", Object)
], SimpleListPane.prototype, "help", void 0);
return SimpleListPane;
}(AbstractHasDataHelp));
export { SimpleListPane };
function SimpleListPane_tsickle_Closure_declarations() {
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
SimpleListPane.decorators;
/**
* @nocollapse
* @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}
*/
SimpleListPane.ctorParameters;
/** @type {!Object<string,!Array<{type: !Function, args: (undefined|!Array<?>)}>>} */
SimpleListPane.propDecorators;
/** @type {?} */
SimpleListPane.TYPE_NAME;
/** @type {?} */
SimpleListPane.prototype.model;
/** @type {?} */
SimpleListPane.prototype.dataParent;
/** @type {?} */
SimpleListPane.prototype.ignoreParentData;
/** @type {?} */
SimpleListPane.prototype.data;
/** @type {?} */
SimpleListPane.prototype.ignoreParentDisabled;
/** @type {?} */
SimpleListPane.prototype.delegateHistory;
/** @type {?} */
SimpleListPane.prototype.onDisabled;
/** @type {?} */
SimpleListPane.prototype.onEnabled;
/** @type {?} */
SimpleListPane.prototype.loadingEnabled;
/** @type {?} */
SimpleListPane.prototype.i18nKey;
/** @type {?} */
SimpleListPane.prototype.bypass;
/** @type {?} */
SimpleListPane.prototype.options;
/** @type {?} */
SimpleListPane.prototype.disabled;
/** @type {?} */
SimpleListPane.prototype.help;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2ltcGxlTGlzdFBhbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vY29tLnBobG94dWkvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50L1NpbXBsZUxpc3RQYW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJL0MscUJBQU0sU0FBUyxHQUFXLHNCQUFzQixDQUFDOztJQW9CYiwwQ0FBbUI7SUFrRHJELHdCQUFZLFVBQXNCO2VBQ2hDLGtCQUFNLFVBQVUsQ0FBQztLQUNsQjs7OztJQUVNLGlDQUFROzs7O1FBQ2IsaUJBQU0sUUFBUSxXQUFFLENBQUM7Ozs7Ozs7SUFHWixzQ0FBYTs7Ozs7Y0FBQyxHQUFXLEVBQUUsT0FBWTtRQUM1QyxNQUFNLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7Ozs7O0lBR3ZDLG1DQUFVOzs7O1FBQ2YsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDN0QsTUFBTSxDQUFDLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxDQUFDLEtBQUssQ0FBQzs7Ozs7SUFHUix1Q0FBYzs7OztRQUNuQixxQkFBSSxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBRW5CLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDN0IsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDbEI7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDTixTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUMzQjtTQUNGO1FBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQzs7Ozs7SUFHWixpQ0FBUTs7OztRQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDOzs7Ozs7SUFHYixpQ0FBUTs7OztjQUFDLEtBQVU7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7Ozs7O0lBR2Qsd0NBQWU7Ozs7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQzs7Ozs7O0lBR1IscUNBQVk7Ozs7Y0FBQyxJQUFTOzs7OztJQUl0QixzQ0FBYTs7Ozs7Ozs7SUFJYixrQ0FBUzs7OztRQUNkLE1BQU0sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxVQUFDLE9BQU8sRUFBRSxNQUFNLElBQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDOzs7OztJQUd2RCxpQ0FBUTs7Ozs7K0JBekc0QixTQUFTOztnQkFwQnJELFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUU7b0JBQ25CLFFBQVEsRUFBRSxTQUFTO29CQUNuQixRQUFRLEVBQUUsdXdCQWFYO2lCQUNBOzs7O2dCQTlCMkIsVUFBVTs7OzBCQXFDbkMsS0FBSzsrQkFHTCxLQUFLO3FDQUdMLEtBQUs7eUJBR0wsS0FBSzt5Q0FHTCxLQUFLO29DQUdMLEtBQUs7K0JBR0wsS0FBSzs4QkFHTCxLQUFLO21DQUdMLEtBQUs7NEJBR0wsS0FBSzsyQkFHTCxLQUFLLFNBQUMsWUFBWTs0QkFHbEIsS0FBSzs2QkFFTCxLQUFLO3lCQUlMLEtBQUs7OztRQXRDTCxNQUFNLEVBQUU7MENBQ1EsZUFBZTs7O1FBRS9CLE1BQU0sRUFBRTs7OztRQUdSLE1BQU0sRUFBRTs7OztRQUdSLE1BQU0sRUFBRTs7OztRQUdSLE1BQU0sRUFBRTs7OztRQUdSLE1BQU0sRUFBRTs7OztRQUdSLE1BQU0sRUFBRTswQ0FDYSxRQUFROzs7UUFFN0IsTUFBTSxFQUFFOzBDQUNZLFFBQVE7OztRQUU1QixNQUFNLEVBQUU7Ozs7UUFHUixNQUFNLEVBQUU7Ozs7UUFHUixNQUFNLENBQUMsWUFBWSxDQUFDOzs7O1FBS3BCLE1BQU0sRUFBRTs7OztRQUlSLElBQUksRUFBRTtRQUNOLE1BQU0sRUFBRTs7O3lCQTlFWDtFQStCb0MsbUJBQW1CO1NBQTFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgRWxlbWVudFJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElIYXNEYXRhIH0gZnJvbSAnLi9JSGFzRGF0YSc7XG5pbXBvcnQgeyBJSGFzTW9kZWwgfSBmcm9tICcuL0lIYXNNb2RlbCc7XG5pbXBvcnQgeyBBYnN0cmFjdEhhc0RhdGFIZWxwIH0gZnJvbSAnLi9BYnN0cmFjdEhhc0RhdGFIZWxwJztcbmltcG9ydCB7IFNpbXBsZUxpc3RNb2RlbCB9IGZyb20gJy4vbW9kZWwvU2ltcGxlTGlzdE1vZGVsJztcbmltcG9ydCB7IERhdGFVdGlscyB9IGZyb20gJy4uL3NoYXJlL3V0aWxzL0RhdGFVdGlscyc7XG5pbXBvcnQgeyBPcHRpb24gfSBmcm9tICcuLi9kZWNvcmF0b3IvT3B0aW9uLmRlY29yYXRvcic7XG5pbXBvcnQgeyBJMThOIH0gZnJvbSAnLi4vZGVjb3JhdG9yL2RlY29yYXRvcnMnO1xuXG5kZWNsYXJlIHZhciAkOiBhbnk7XG5cbmNvbnN0IFRZUEVfTkFNRTogc3RyaW5nID0gXCJwaHgtc2ltcGxlLWxpc3QtcGFuZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgbW9kdWxlSWQ6IG1vZHVsZS5pZCxcbiAgc2VsZWN0b3I6IFRZUEVfTkFNRSxcbiAgdGVtcGxhdGU6IGA8ZGl2IGNsYXNzPVwicGh4LXNpbXBsZS1saXN0LXBhbmVcIj5cblx0PGRpdiBjbGFzcz1cInJvd1wiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdldERhdGFSZWNvcmRzKCk7IGxldCBqID0gaW5kZXhcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwicm93LWNvbnRlbnRcIj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cInJvdy1pY29uXCI+PC9kaXY+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJyb3ctZGF0YVwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJ0aXRsZVwiICpuZ0lmPVwiaXNIYXNNb2RlbCgpXCI+PHBoeC1kYXRhLXZpZXctd3JhcHBlciBjbGFzcz1cImFjdGl2ZVwiIFt0eXBlXT1cImdldE1vZGVsKCkudGl0bGVUeXBlXCIgW2RhdGFdPVwiaXRlbVwiIFtvcHRpb25zXT1cIntmaWVsZDogZ2V0TW9kZWwoKS50aXRsZUZpZWxkTmFtZX1cIj48L3BoeC1kYXRhLXZpZXctd3JhcHBlcj48L2Rpdj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIiAqbmdJZj1cImlzSGFzTW9kZWwoKVwiPjxwaHgtZGF0YS12aWV3LXdyYXBwZXIgY2xhc3M9XCJhY3RpdmVcIiBbdHlwZV09XCJnZXRNb2RlbCgpLmRlc2NyaXB0aW9uVHlwZVwiIFtkYXRhXT1cIl9nZXREYXRhVmFsdWUoZ2V0TW9kZWwoKS5kZXNjcmlwdGlvbkZpZWxkTmFtZSwgaXRlbSlcIj48L3BoeC1kYXRhLXZpZXctd3JhcHBlcj48L2Rpdj5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG48L2Rpdj5cbmBcbn0pXG5leHBvcnQgY2xhc3MgU2ltcGxlTGlzdFBhbmUgZXh0ZW5kcyBBYnN0cmFjdEhhc0RhdGFIZWxwIGltcGxlbWVudHMgT25Jbml0LCBJSGFzRGF0YSwgSUhhc01vZGVsIHtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFRZUEVfTkFNRTogc3RyaW5nID0gVFlQRV9OQU1FO1xuXG4gIC8vIFJlLWRlY2xhcmUgZmllbGQgdG8gZGVjbGFyZSBuZyBASW5wdXQuXG4gIC8vIC0tLSBmcm9tIEFic3RyYWN0SGFzRGF0YVxuICBASW5wdXQoKVxuICBAT3B0aW9uKClcbiAgcHJvdGVjdGVkIG1vZGVsOiBTaW1wbGVMaXN0TW9kZWw7XG4gIEBJbnB1dCgpXG4gIEBPcHRpb24oKVxuICBwcm90ZWN0ZWQgZGF0YVBhcmVudDogSUhhc0RhdGE7XG4gIEBJbnB1dCgpXG4gIEBPcHRpb24oKVxuICBwcm90ZWN0ZWQgaWdub3JlUGFyZW50RGF0YTogYm9vbGVhbjtcbiAgQElucHV0KClcbiAgQE9wdGlvbigpXG4gIHByb3RlY3RlZCBkYXRhOiBhbnk7XG4gIEBJbnB1dCgpXG4gIEBPcHRpb24oKVxuICBwcm90ZWN0ZWQgaWdub3JlUGFyZW50RGlzYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpXG4gIEBPcHRpb24oKVxuICBwcm90ZWN0ZWQgZGVsZWdhdGVIaXN0b3J5OiBib29sZWFuO1xuICBASW5wdXQoKVxuICBAT3B0aW9uKClcbiAgcHJvdGVjdGVkIG9uRGlzYWJsZWQ6IEZ1bmN0aW9uO1xuICBASW5wdXQoKVxuICBAT3B0aW9uKClcbiAgcHJvdGVjdGVkIG9uRW5hYmxlZDogRnVuY3Rpb247XG4gIEBJbnB1dCgpXG4gIEBPcHRpb24oKVxuICBwcm90ZWN0ZWQgbG9hZGluZ0VuYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpXG4gIEBPcHRpb24oKVxuICBwcm90ZWN0ZWQgaTE4bktleTogc3RyaW5nO1xuICBASW5wdXQoJ2kxOG5CeXBhc3MnKVxuICBAT3B0aW9uKCdpMThuQnlwYXNzJylcbiAgcHJvdGVjdGVkIGJ5cGFzczogYm9vbGVhbjtcbiAgQElucHV0KClcbiAgcHJvdGVjdGVkIG9wdGlvbnM6IGFueTtcbiAgQElucHV0KClcbiAgQE9wdGlvbigpXG4gIHByb3RlY3RlZCBkaXNhYmxlZDogYm9vbGVhbjtcbiAgLy8gLS0tIGZyb20gQWJzdHJhY3RIYXNEYXRhSGVscFxuICBASW5wdXQoKVxuICBASTE4TigpXG4gIEBPcHRpb24oKVxuICBwcm90ZWN0ZWQgaGVscDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICBzdXBlcihlbGVtZW50UmVmKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICB9XG5cbiAgcHVibGljIF9nZXREYXRhVmFsdWUoa2V5OiBzdHJpbmcsIGRhdGFPYmo6IGFueSk6IGFueSB7XG4gICAgcmV0dXJuIERhdGFVdGlscy5nZXREYXRhVmFsdWUoa2V5LCBkYXRhT2JqKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0hhc01vZGVsKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm1vZGVsICE9PSBudWxsICYmIHR5cGVvZiB0aGlzLm1vZGVsICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXREYXRhUmVjb3JkcygpOiBhbnlbXSB7XG4gICAgbGV0IGNvbnRhaW5lciA9IFtdO1xuXG4gICAgaWYgKHRoaXMuZGF0YSAhPT0gbnVsbCAmJiB0eXBlb2YgdGhpcy5kYXRhICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5kYXRhKSkge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29udGFpbmVyLnB1c2godGhpcy5kYXRhKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29udGFpbmVyO1xuICB9XG5cbiAgcHVibGljIGdldE1vZGVsKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWw7XG4gIH1cblxuICBwdWJsaWMgc2V0TW9kZWwobW9kZWw6IGFueSk6IHZvaWQge1xuICAgIHRoaXMubW9kZWwgPSBtb2RlbDtcbiAgfVxuXG4gIHB1YmxpYyBpc1NlbGZEYXRhRGlydHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIHNlbGZTYXZlRGF0YShkYXRhOiBhbnkpOiB2b2lkIHtcblxuICB9XG5cbiAgcHVibGljIHNlbGZSZXNldERhdGEoKTogdm9pZCB7XG5cbiAgfVxuXG4gIHB1YmxpYyBkb1ByZWxvYWQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4geyByZXNvbHZlKG51bGwpOyB9KTtcbiAgfVxuXG4gIHB1YmxpYyBkb0xvYWRlZCgpOiB2b2lkIHtcblxuICB9XG59XG4iXX0=