UNPKG

dbweb-common

Version:

用`yarn add dbweb-common`安装,不要忘记修改`angular.json`里的 `architect\build\options\assets`,加上

234 lines 16.6 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; /** @type {?} */ var toolbarShowDelay = 300; var Header = /** @class */ (function () { function Header() { } /** * @param {?} col * @param {?} event * @return {?} */ Header.prototype.headerMouseenter = /** * @param {?} col * @param {?} event * @return {?} */ function (col, event) { this.current.x = ((/** @type {?} */ (event.target))).cellIndex; this.headerToolbarShowTimer = setTimeout((/** * @return {?} */ function () { col.showToolbar = true; }), toolbarShowDelay); }; /** * @param {?} col * @return {?} */ Header.prototype.headerMouseleave = /** * @param {?} col * @return {?} */ function (col) { if (this.headerToolbarShowTimer) { clearTimeout(this.headerToolbarShowTimer); this.headerToolbarShowTimer = undefined; } col.showToolbar = false; }; /** * @param {?} event * @param {?} col * @return {?} */ Header.prototype.lockButtonClick = /** * @param {?} event * @param {?} col * @return {?} */ function (event, col) { col.sticky = true; col.showToolbar = false; this.syncColumn(); event.stopPropagation(); event.preventDefault(); }; /** * @param {?} event * @param {?} col * @return {?} */ Header.prototype.unlockButtonClick = /** * @param {?} event * @param {?} col * @return {?} */ function (event, col) { col.sticky = false; col.showToolbar = false; this.syncColumn(); event.stopPropagation(); event.preventDefault(); }; /** * @param {?} event * @param {?} col * @return {?} */ Header.prototype.toLeftButtonClick = /** * @param {?} event * @param {?} col * @return {?} */ function (event, col) { /** @type {?} */ var realIndex = col.index; /** @type {?} */ var tmp = this.columns[realIndex]; tmp.showToolbar = false; this.columns[realIndex] = this.columns[realIndex - 1]; this.columns[realIndex - 1] = tmp; this.syncColumn(); event.stopPropagation(); event.preventDefault(); }; /** * @param {?} event * @param {?} col * @return {?} */ Header.prototype.toRightButtonClick = /** * @param {?} event * @param {?} col * @return {?} */ function (event, col) { /** @type {?} */ var realIndex = col.index; /** @type {?} */ var tmp = this.columns[realIndex]; tmp.showToolbar = false; this.columns[realIndex] = this.columns[realIndex + 1]; this.columns[realIndex + 1] = tmp; this.syncColumn(); event.stopPropagation(); event.preventDefault(); }; /**返回一个列是不是固定列的最右边列 */ /** * 返回一个列是不是固定列的最右边列 * @param {?} colIndex * @return {?} */ Header.prototype.stickyColumnRight = /** * 返回一个列是不是固定列的最右边列 * @param {?} colIndex * @return {?} */ function (colIndex) { return (colIndex < this._tableColumns.length - 1 && this._tableColumns[colIndex].sticky && !this._tableColumns[colIndex + 1].sticky); }; // 同步列的设置,主要是重新根据固定列排定顺序 // 同步列的设置,主要是重新根据固定列排定顺序 /** * @return {?} */ Header.prototype.syncColumn = // 同步列的设置,主要是重新根据固定列排定顺序 /** * @return {?} */ function () { var _this = this; /** * 先把上次存在的列照样输出,注意保留原有的顺序 * @type {?} */ var cols = (this.columns || []).filter((/** * @param {?} col * @return {?} */ function (col) { return _this.displayColumns.find((/** * @param {?} vv * @return {?} */ function (vv) { return vv.Name === col.Name; })) !== undefined; })); /** * 再输出剩下的列 * @type {?} */ var cc = (this.displayColumns || []).filter((/** * @param {?} col * @return {?} */ function (col) { return cols.find((/** * @param {?} vv * @return {?} */ function (vv) { return vv.Name === col.Name; })) === undefined; })); cols = cols.concat(cc); // 把固定列提升到最前面 cols = cols.filter((/** * @param {?} v * @return {?} */ function (v) { return v.sticky; })).concat(cols.filter((/** * @param {?} v * @return {?} */ function (v) { return !v.sticky; }))); cols.forEach((/** * @param {?} v1 * @param {?} idx * @return {?} */ function (v1, idx) { return (v1.index = idx); })); this.columns = cols; this._tableColumns = tslib_1.__spread(this.fixStartColumns).concat( /**固定的列排在前面 */ this.columns, this.fixEndColumns); this.displayColumnNames = this._tableColumns.map((/** * @param {?} vv * @return {?} */ function (vv) { return vv.Name; })); /**妈蛋,列内容变化,宽度还是算上一次的,造成列宽计算不对,只有变通的延后调用一次强制更新 */ setTimeout((/** * @return {?} */ function () { _this.tabDataOrg.updateStickyColumnStyles(); }), 10); }; return Header; }()); export { Header }; if (false) { /** @type {?} */ Header.prototype.current; /** @type {?} */ Header.prototype.columns; /** @type {?} */ Header.prototype._tableColumns; /** @type {?} */ Header.prototype.displayColumns; /** @type {?} */ Header.prototype.displayColumnNames; /** @type {?} */ Header.prototype.headerToolbarShowTimer; /** @type {?} */ Header.prototype.tabDataOrg; /** @type {?} */ Header.prototype.fixStartColumns; /** @type {?} */ Header.prototype.fixEndColumns; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZGJ3ZWItY29tbW9uLyIsInNvdXJjZXMiOlsibGliL3JlY29yZC12aWV3L3RhYmxlL2hlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFHTSxnQkFBZ0IsR0FBRyxHQUFHO0FBQzVCO0lBQUE7SUEyRkEsQ0FBQzs7Ozs7O0lBakZBLGlDQUFnQjs7Ozs7SUFBaEIsVUFBaUIsR0FBb0IsRUFBRSxLQUFpQjtRQUN2RCxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLG1CQUFzQixLQUFLLENBQUMsTUFBTSxFQUFBLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFaEUsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFVBQVU7OztRQUFDO1lBQ3hDLEdBQUcsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLENBQUMsR0FBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7Ozs7O0lBQ0QsaUNBQWdCOzs7O0lBQWhCLFVBQWlCLEdBQW9CO1FBQ3BDLElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQ2hDLFlBQVksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUMxQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsU0FBUyxDQUFDO1NBQ3hDO1FBQ0QsR0FBRyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQzs7Ozs7O0lBQ0QsZ0NBQWU7Ozs7O0lBQWYsVUFBZ0IsS0FBaUIsRUFBRSxHQUFvQjtRQUN0RCxHQUFHLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNsQixHQUFHLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDOzs7Ozs7SUFDRCxrQ0FBaUI7Ozs7O0lBQWpCLFVBQWtCLEtBQWlCLEVBQUUsR0FBb0I7UUFDeEQsR0FBRyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsR0FBRyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7Ozs7O0lBQ0Qsa0NBQWlCOzs7OztJQUFqQixVQUFrQixLQUFpQixFQUFFLEdBQW9COztZQUNsRCxTQUFTLEdBQUcsR0FBRyxDQUFDLEtBQUs7O1lBQ3JCLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUNuQyxHQUFHLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUNsQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDOzs7Ozs7SUFDRCxtQ0FBa0I7Ozs7O0lBQWxCLFVBQW1CLEtBQWlCLEVBQUUsR0FBb0I7O1lBQ25ELFNBQVMsR0FBRyxHQUFHLENBQUMsS0FBSzs7WUFDckIsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ25DLEdBQUcsQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFDRCxzQkFBc0I7Ozs7OztJQUN0QixrQ0FBaUI7Ozs7O0lBQWpCLFVBQWtCLFFBQWdCO1FBQ2pDLE9BQU8sQ0FDTixRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUN4QyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU07WUFDbkMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQ3hDLENBQUM7SUFDSCxDQUFDO0lBQ0Qsd0JBQXdCOzs7OztJQUN4QiwyQkFBVTs7Ozs7SUFBVjtRQUFBLGlCQXVCQzs7Ozs7WUFyQkksSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNOzs7O1FBQ3JDLFVBQUEsR0FBRyxJQUFJLE9BQUEsS0FBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJOzs7O1FBQUMsVUFBQSxFQUFFLElBQUksT0FBQSxFQUFFLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLEVBQXBCLENBQW9CLEVBQUMsS0FBSyxTQUFTLEVBQWxFLENBQWtFLEVBQ3pFOzs7OztZQUdLLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTTs7OztRQUFDLFVBQUEsR0FBRyxJQUFJLE9BQUEsSUFBSSxDQUFDLElBQUk7Ozs7UUFBQyxVQUFBLEVBQUUsSUFBSSxPQUFBLEVBQUUsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksRUFBcEIsQ0FBb0IsRUFBQyxLQUFLLFNBQVMsRUFBbkQsQ0FBbUQsRUFBQztRQUN6RyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2QixhQUFhO1FBQ2IsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNOzs7O1FBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsTUFBTSxFQUFSLENBQVEsRUFBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTTs7OztRQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFULENBQVMsRUFBQyxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLE9BQU87Ozs7O1FBQUMsVUFBQyxFQUFFLEVBQUUsR0FBRyxJQUFLLE9BQUEsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxFQUFoQixDQUFnQixFQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxpQkFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLE1BQU07UUFDcEQsY0FBYztRQUNkLElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLGFBQWEsQ0FDbEIsQ0FBQztRQUNGLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUc7Ozs7UUFBQyxVQUFBLEVBQUUsSUFBSSxPQUFBLEVBQUUsQ0FBQyxJQUFJLEVBQVAsQ0FBTyxFQUFDLENBQUM7UUFDaEUsaURBQWlEO1FBQ2pELFVBQVU7OztRQUFDO1lBQ1YsS0FBSSxDQUFDLFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQzVDLENBQUMsR0FBRSxFQUFFLENBQUMsQ0FBQztJQUNSLENBQUM7SUFDRixhQUFDO0FBQUQsQ0FBQyxBQTNGRCxJQTJGQzs7OztJQTFGQSx5QkFBZ0I7O0lBQ2hCLHlCQUEyQjs7SUFDM0IsK0JBQWlDOztJQUNqQyxnQ0FBa0M7O0lBQ2xDLG9DQUE2Qjs7SUFDN0Isd0NBQXFDOztJQUNyQyw0QkFBaUM7O0lBQ2pDLGlDQUE0Qzs7SUFDNUMsK0JBQTBDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0VGFibGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IElSZW5kZXJSb3csIFRhYmxlQ29sdW1uVHlwZSB9IGZyb20gJy4uL21vZGVsL21vZGVsJztcclxuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnLi9zZWxlY3Rvcic7XHJcbmNvbnN0IHRvb2xiYXJTaG93RGVsYXkgPSAzMDA7XHJcbmV4cG9ydCBjbGFzcyBIZWFkZXIge1xyXG5cdGN1cnJlbnQ6IElQb2ludDtcclxuXHRjb2x1bW5zOiBUYWJsZUNvbHVtblR5cGVbXTtcclxuXHRfdGFibGVDb2x1bW5zOiBUYWJsZUNvbHVtblR5cGVbXTtcclxuXHRkaXNwbGF5Q29sdW1uczogVGFibGVDb2x1bW5UeXBlW107XHJcblx0ZGlzcGxheUNvbHVtbk5hbWVzOiBzdHJpbmdbXTtcclxuXHRoZWFkZXJUb29sYmFyU2hvd1RpbWVyOiBOb2RlSlMuVGltZXI7XHJcblx0dGFiRGF0YU9yZzogTWF0VGFibGU8SVJlbmRlclJvdz47XHJcblx0cmVhZG9ubHkgZml4U3RhcnRDb2x1bW5zOiBUYWJsZUNvbHVtblR5cGVbXTtcclxuXHRyZWFkb25seSBmaXhFbmRDb2x1bW5zOiBUYWJsZUNvbHVtblR5cGVbXTtcclxuXHRoZWFkZXJNb3VzZWVudGVyKGNvbDogVGFibGVDb2x1bW5UeXBlLCBldmVudDogTW91c2VFdmVudCkge1xyXG5cdFx0dGhpcy5jdXJyZW50LnggPSAoPEhUTUxUYWJsZUNlbGxFbGVtZW50PmV2ZW50LnRhcmdldCkuY2VsbEluZGV4O1xyXG5cclxuXHRcdHRoaXMuaGVhZGVyVG9vbGJhclNob3dUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHRjb2wuc2hvd1Rvb2xiYXIgPSB0cnVlO1xyXG5cdFx0fSwgdG9vbGJhclNob3dEZWxheSk7XHJcblx0fVxyXG5cdGhlYWRlck1vdXNlbGVhdmUoY29sOiBUYWJsZUNvbHVtblR5cGUpIHtcclxuXHRcdGlmICh0aGlzLmhlYWRlclRvb2xiYXJTaG93VGltZXIpIHtcclxuXHRcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuaGVhZGVyVG9vbGJhclNob3dUaW1lcik7XHJcblx0XHRcdHRoaXMuaGVhZGVyVG9vbGJhclNob3dUaW1lciA9IHVuZGVmaW5lZDtcclxuXHRcdH1cclxuXHRcdGNvbC5zaG93VG9vbGJhciA9IGZhbHNlO1xyXG5cdH1cclxuXHRsb2NrQnV0dG9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQsIGNvbDogVGFibGVDb2x1bW5UeXBlKSB7XHJcblx0XHRjb2wuc3RpY2t5ID0gdHJ1ZTtcclxuXHRcdGNvbC5zaG93VG9vbGJhciA9IGZhbHNlO1xyXG5cdFx0dGhpcy5zeW5jQ29sdW1uKCk7XHJcblx0XHRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHRcdGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcblx0fVxyXG5cdHVubG9ja0J1dHRvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50LCBjb2w6IFRhYmxlQ29sdW1uVHlwZSkge1xyXG5cdFx0Y29sLnN0aWNreSA9IGZhbHNlO1xyXG5cdFx0Y29sLnNob3dUb29sYmFyID0gZmFsc2U7XHJcblx0XHR0aGlzLnN5bmNDb2x1bW4oKTtcclxuXHRcdGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cdFx0ZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuXHR9XHJcblx0dG9MZWZ0QnV0dG9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQsIGNvbDogVGFibGVDb2x1bW5UeXBlKSB7XHJcblx0XHRjb25zdCByZWFsSW5kZXggPSBjb2wuaW5kZXg7XHJcblx0XHRjb25zdCB0bXAgPSB0aGlzLmNvbHVtbnNbcmVhbEluZGV4XTtcclxuXHRcdHRtcC5zaG93VG9vbGJhciA9IGZhbHNlO1xyXG5cdFx0dGhpcy5jb2x1bW5zW3JlYWxJbmRleF0gPSB0aGlzLmNvbHVtbnNbcmVhbEluZGV4IC0gMV07XHJcblx0XHR0aGlzLmNvbHVtbnNbcmVhbEluZGV4IC0gMV0gPSB0bXA7XHJcblx0XHR0aGlzLnN5bmNDb2x1bW4oKTtcclxuXHRcdGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cdFx0ZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuXHR9XHJcblx0dG9SaWdodEJ1dHRvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50LCBjb2w6IFRhYmxlQ29sdW1uVHlwZSkge1xyXG5cdFx0Y29uc3QgcmVhbEluZGV4ID0gY29sLmluZGV4O1xyXG5cdFx0Y29uc3QgdG1wID0gdGhpcy5jb2x1bW5zW3JlYWxJbmRleF07XHJcblx0XHR0bXAuc2hvd1Rvb2xiYXIgPSBmYWxzZTtcclxuXHRcdHRoaXMuY29sdW1uc1tyZWFsSW5kZXhdID0gdGhpcy5jb2x1bW5zW3JlYWxJbmRleCArIDFdO1xyXG5cdFx0dGhpcy5jb2x1bW5zW3JlYWxJbmRleCArIDFdID0gdG1wO1xyXG5cdFx0dGhpcy5zeW5jQ29sdW1uKCk7XHJcblx0XHRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHRcdGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcblx0fVxyXG5cdC8qKui/lOWbnuS4gOS4quWIl+aYr+S4jeaYr+WbuuWumuWIl+eahOacgOWPs+i+ueWIlyAqL1xyXG5cdHN0aWNreUNvbHVtblJpZ2h0KGNvbEluZGV4OiBudW1iZXIpIHtcclxuXHRcdHJldHVybiAoXHJcblx0XHRcdGNvbEluZGV4IDwgdGhpcy5fdGFibGVDb2x1bW5zLmxlbmd0aCAtIDEgJiZcclxuXHRcdFx0dGhpcy5fdGFibGVDb2x1bW5zW2NvbEluZGV4XS5zdGlja3kgJiZcclxuXHRcdFx0IXRoaXMuX3RhYmxlQ29sdW1uc1tjb2xJbmRleCArIDFdLnN0aWNreVxyXG5cdFx0KTtcclxuXHR9XHJcblx0Ly8g5ZCM5q2l5YiX55qE6K6+572u77yM5Li76KaB5piv6YeN5paw5qC55o2u5Zu65a6a5YiX5o6S5a6a6aG65bqPXHJcblx0c3luY0NvbHVtbigpIHtcclxuXHRcdC8qKuWFiOaKiuS4iuasoeWtmOWcqOeahOWIl+eFp+agt+i+k+WHuizms6jmhI/kv53nlZnljp/mnInnmoTpobrluo8gKi9cclxuXHRcdGxldCBjb2xzID0gKHRoaXMuY29sdW1ucyB8fCBbXSkuZmlsdGVyKFxyXG5cdFx0XHRjb2wgPT4gdGhpcy5kaXNwbGF5Q29sdW1ucy5maW5kKHZ2ID0+IHZ2Lk5hbWUgPT09IGNvbC5OYW1lKSAhPT0gdW5kZWZpbmVkXHJcblx0XHQpO1xyXG5cclxuXHRcdC8qKuWGjei+k+WHuuWJqeS4i+eahOWIlyAqL1xyXG5cdFx0Y29uc3QgY2MgPSAodGhpcy5kaXNwbGF5Q29sdW1ucyB8fCBbXSkuZmlsdGVyKGNvbCA9PiBjb2xzLmZpbmQodnYgPT4gdnYuTmFtZSA9PT0gY29sLk5hbWUpID09PSB1bmRlZmluZWQpO1xyXG5cdFx0Y29scyA9IGNvbHMuY29uY2F0KGNjKTtcclxuXHRcdC8vIOaKiuWbuuWumuWIl+aPkOWNh+WIsOacgOWJjemdolxyXG5cdFx0Y29scyA9IGNvbHMuZmlsdGVyKHYgPT4gdi5zdGlja3kpLmNvbmNhdChjb2xzLmZpbHRlcih2ID0+ICF2LnN0aWNreSkpO1xyXG5cdFx0Y29scy5mb3JFYWNoKCh2MSwgaWR4KSA9PiAodjEuaW5kZXggPSBpZHgpKTtcclxuXHRcdHRoaXMuY29sdW1ucyA9IGNvbHM7XHJcblx0XHR0aGlzLl90YWJsZUNvbHVtbnMgPSBbLi4udGhpcy5maXhTdGFydENvbHVtbnNdLmNvbmNhdChcclxuXHRcdFx0Lyoq5Zu65a6a55qE5YiX5o6S5Zyo5YmN6Z2iICovXHJcblx0XHRcdHRoaXMuY29sdW1ucyxcclxuXHRcdFx0dGhpcy5maXhFbmRDb2x1bW5zXHJcblx0XHQpO1xyXG5cdFx0dGhpcy5kaXNwbGF5Q29sdW1uTmFtZXMgPSB0aGlzLl90YWJsZUNvbHVtbnMubWFwKHZ2ID0+IHZ2Lk5hbWUpO1xyXG5cdFx0Lyoq5aaI6JuL77yM5YiX5YaF5a655Y+Y5YyW77yM5a695bqm6L+Y5piv566X5LiK5LiA5qyh55qE77yM6YCg5oiQ5YiX5a696K6h566X5LiN5a+577yM5Y+q5pyJ5Y+Y6YCa55qE5bu25ZCO6LCD55So5LiA5qyh5by65Yi25pu05pawICovXHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0dGhpcy50YWJEYXRhT3JnLnVwZGF0ZVN0aWNreUNvbHVtblN0eWxlcygpO1xyXG5cdFx0fSwgMTApO1xyXG5cdH1cclxufVxyXG4iXX0=