"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; Object.defineProperty(exports, "__esModule", { value: true }); var issue_1 = require("../../../../api/issue"); Page({ data: { deptId: '', show: false, selectData: [ { children: [], label: '全部', value: '' } ], index: 0, noProjectData: [], unpassedProjectPercent: '', unpassedProject: '', hotClose: [], issueTotal: '', deadline: '', hotNumber: '', hotPercent: '', closedNumber: '', closedPercent: '', isShow: false, isshow2: false, ProjectData: [], resolvedData: [], data: {}, resolvedPercent: '', beSolvedPercent: '', passedProjectPercent: '', colorProject: [], colorNoProject: [], visibleCascader: false, SeletedTitle: '全部', idLength: 0, isShowEcharts: true, }, selectTap: function () { this.setData({ visibleCascader: true, isShowEcharts: false }); }, onLoad: function () { this.getByLoginUser(); this.getIssueSurvey(); }, getByLoginUser: function () { return __awaiter(this, void 0, void 0, function () { var res, arr, err_1; return __generator(this, function (_a) { switch (_a.label) { case 0: _a.trys.push([0, 2, , 3]); return [4, issue_1.getByLoginUser()]; case 1: res = _a.sent(); arr = [ { children: [], label: '全部', value: '' } ]; this.setData({ optionsCascader: arr.concat(res.data.options) }); wx.setStorageSync('childrenID', this.data.deptId); return [3, 3]; case 2: err_1 = _a.sent(); console.log(err_1); return [3, 3]; case 3: return [2]; } }); }); }, onCloseCascader: function () { this.setData({ visibleCascader: false, isShowEcharts: !this.data.isShowEcharts, }); this.getIssueSurvey(); }, onChangeCascader: function (e) { var _this = this; this.setData({ value2: e.detail.value, idLength: e.detail.value.length, SeletedTitle: e.detail.options.map(function (n) { return n.label; }).join('/'), isShowEcharts: false }); e.detail.value.forEach(function (item) { _this.setData({ deptId: item }); }); wx.setStorageSync('childrenID', this.data.deptId); }, getIssueSurvey: function () { return __awaiter(this, void 0, void 0, function () { var res, arr, hotClose, hotClose, hotClose, hotClose, resolved, resolved, resolved, resolved, err_2; return __generator(this, function (_a) { switch (_a.label) { case 0: wx.showLoading({ title: 'Loading...', mask: true, }); _a.label = 1; case 1: _a.trys.push([1, 3, , 4]); return [4, issue_1.getIssueSurvey(this.data.deptId)]; case 2: res = _a.sent(); arr = [ { value: res.data.list.unpassedProject, name: '未转项目' }, { value: res.data.list.passedProject, name: '已转项目' }, ]; if (res.data.list.hotNumber == 0 && res.data.list.closedNumber == 0) { hotClose = [ { value: res.data.list.hotNumber, name: '热议中' }, { value: res.data.list.closedNumber, name: '已关闭' } ]; this.setData({ colorNoProject: ["#AD6DFE", "#FFA270"] }); } if (res.data.list.hotNumber == 0 && res.data.list.closedNumber !== 0) { hotClose = [ { value: res.data.list.closedNumber, name: '已关闭' } ]; this.setData({ colorNoProject: ["#FFA270"] }); } if (res.data.list.hotNumber !== 0 && res.data.list.closedNumber == 0) { hotClose = [ { value: res.data.list.hotNumber, name: '热议中' } ]; this.setData({ colorNoProject: ["#AD6DFE"] }); } if (res.data.list.hotNumber !== 0 && res.data.list.closedNumber !== 0) { hotClose = [ { value: res.data.list.hotNumber, name: '热议中' }, { value: res.data.list.closedNumber, name: '已关闭' } ]; this.setData({ colorNoProject: ["#AD6DFE", "#FFA270"] }); } if (res.data.list.resolvedNumber == 0 && res.data.list.beSolvedNumber == 0) { resolved = [ { value: res.data.list.resolvedNumber, name: '已解决' }, { value: res.data.list.beSolvedNumber, name: '待解决' } ]; this.setData({ colorProject: ["#63CFED", "#FF773F"] }); } if (res.data.list.resolvedNumber == 0 && res.data.list.beSolvedNumber !== 0) { resolved = [ { value: res.data.list.beSolvedNumber, name: '待解决' } ]; this.setData({ colorProject: ["#FF773F"] }); } if (res.data.list.resolvedNumber !== 0 && res.data.list.beSolvedNumber == 0) { resolved = [ { value: res.data.list.resolvedNumber, name: '已解决' }, ]; this.setData({ colorProject: ["#63CFED"] }); } if (res.data.list.resolvedNumber !== 0 && res.data.list.beSolvedNumber !== 0) { resolved = [ { value: res.data.list.resolvedNumber, name: '已解决' }, { value: res.data.list.beSolvedNumber, name: '待解决' } ]; this.setData({ colorProject: ["#63CFED", "#FF773F"] }); } this.setData({ deadline: res.data.deadline, issueTotal: res.data.list.issueTotal, noProjectData: arr, hotClose: hotClose, unpassedProjectPercent: (res.data.list.unpassedProjectPercent), unpassedProject: res.data.list.unpassedProject, hotNumber: res.data.list.hotNumber, hotPercent: res.data.list.hotPercent, closedNumber: res.data.list.closedNumber, closedPercent: res.data.list.closedPercent, isShow: true, isshow2: true, ProjectData: arr, resolvedData: resolved, data: res.data.list, resolvedPercent: res.data.list.resolvedPercent, beSolvedPercent: res.data.list.beSolvedPercent, passedProjectPercent: res.data.list.passedProjectPercent }); wx.hideLoading(); return [3, 4]; case 3: err_2 = _a.sent(); console.log(err_2); wx.hideLoading(); return [3, 4]; case 4: return [2]; } }); }); }, }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9waWNzTnVtRGV0YWlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidG9waWNzTnVtRGV0YWlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQW1FO0FBQ25FLElBQUksQ0FBQztJQUNELElBQUksRUFBRTtRQUNGLE1BQU0sRUFBQyxFQUFFO1FBQ1QsSUFBSSxFQUFDLEtBQUs7UUFDVixVQUFVLEVBQUM7WUFDUDtnQkFDSSxRQUFRLEVBQUMsRUFBRTtnQkFDWCxLQUFLLEVBQUMsSUFBSTtnQkFDVixLQUFLLEVBQUMsRUFBRTthQUNYO1NBQ0o7UUFDRCxLQUFLLEVBQUMsQ0FBQztRQUNQLGFBQWEsRUFBQyxFQUFFO1FBQ2hCLHNCQUFzQixFQUFDLEVBQUU7UUFDekIsZUFBZSxFQUFDLEVBQUU7UUFDbEIsUUFBUSxFQUFDLEVBQUU7UUFDWCxVQUFVLEVBQUMsRUFBRTtRQUNiLFFBQVEsRUFBQyxFQUFFO1FBQ1gsU0FBUyxFQUFDLEVBQUU7UUFDWixVQUFVLEVBQUMsRUFBRTtRQUNiLFlBQVksRUFBQyxFQUFFO1FBQ2YsYUFBYSxFQUFDLEVBQUU7UUFDaEIsTUFBTSxFQUFDLEtBQUs7UUFDWixPQUFPLEVBQUMsS0FBSztRQUNiLFdBQVcsRUFBQyxFQUFFO1FBQ2QsWUFBWSxFQUFDLEVBQUU7UUFDZixJQUFJLEVBQUMsRUFBRTtRQUNQLGVBQWUsRUFBQyxFQUFFO1FBQ2xCLGVBQWUsRUFBQyxFQUFFO1FBQ2xCLG9CQUFvQixFQUFDLEVBQUU7UUFDdkIsWUFBWSxFQUFDLEVBQUU7UUFDZixjQUFjLEVBQUMsRUFBRTtRQUNqQixlQUFlLEVBQUMsS0FBSztRQUNyQixZQUFZLEVBQUMsSUFBSTtRQUNqQixRQUFRLEVBQUMsQ0FBQztRQUNWLGFBQWEsRUFBQyxJQUFJO0tBQ3JCO0lBRUQsU0FBUztRQUNMLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDYixlQUFlLEVBQUMsSUFB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cG9ydCB7Z2V0QnlMb2dpblVzZXIsZ2V0SXNzdWVTdXJ2ZXl9IGZyb20gJy4uLy4uLy4uLy4uL2FwaS9pc3N1ZSdcclxuUGFnZSh7XHJcbiAgICBkYXRhOiB7XHJcbiAgICAgICAgZGVwdElkOicnLFxyXG4gICAgICAgIHNob3c6ZmFsc2UsLy/mjqfliLbkuIvmi4nliJfooajnmoTmmL7npLrpmpDol4/vvIxmYWxzZemakOiXj+OAgXRydWXmmL7npLpcclxuICAgICAgICBzZWxlY3REYXRhOltcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgY2hpbGRyZW46W10sXHJcbiAgICAgICAgICAgICAgICBsYWJlbDon5YWo6YOoJyxcclxuICAgICAgICAgICAgICAgIHZhbHVlOicnXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICBdLC8v5LiL5ouJ5YiX6KGo55qE5pWw5o2uXHJcbiAgICAgICAgaW5kZXg6MCwvL+mAieaLqeeahOS4i+aLieWIl+ihqOS4i+agh1xyXG4gICAgICAgIG5vUHJvamVjdERhdGE6W10sXHJcbiAgICAgICAgdW5wYXNzZWRQcm9qZWN0UGVyY2VudDonJyxcclxuICAgICAgICB1bnBhc3NlZFByb2plY3Q6JycsXHJcbiAgICAgICAgaG90Q2xvc2U6W10sXHJcbiAgICAgICAgaXNzdWVUb3RhbDonJyxcclxuICAgICAgICBkZWFkbGluZTonJyxcclxuICAgICAgICBob3ROdW1iZXI6JycsXHJcbiAgICAgICAgaG90UGVyY2VudDonJyxcclxuICAgICAgICBjbG9zZWROdW1iZXI6JycsXHJcbiAgICAgICAgY2xvc2VkUGVyY2VudDonJyxcclxuICAgICAgICBpc1Nob3c6ZmFsc2UsXHJcbiAgICAgICAgaXNzaG93MjpmYWxzZSxcclxuICAgICAgICBQcm9qZWN0RGF0YTpbXSxcclxuICAgICAgICByZXNvbHZlZERhdGE6W10sXHJcbiAgICAgICAgZGF0YTp7fSxcclxuICAgICAgICByZXNvbHZlZFBlcmNlbnQ6JycsXHJcbiAgICAgICAgYmVTb2x2ZWRQZXJjZW50OicnLFxyXG4gICAgICAgIHBhc3NlZFByb2plY3RQZXJjZW50OicnLFxyXG4gICAgICAgIGNvbG9yUHJvamVjdDpbXSxcclxuICAgICAgICBjb2xvck5vUHJvamVjdDpbXSxcclxuICAgICAgICB2aXNpYmxlQ2FzY2FkZXI6ZmFsc2UsLy/kuInnuqfogZTliqhcclxuICAgICAgICBTZWxldGVkVGl0bGU6J+WFqOmDqCcsXHJcbiAgICAgICAgaWRMZW5ndGg6MCxcclxuICAgICAgICBpc1Nob3dFY2hhcnRzOnRydWUsXHJcbiAgICB9LFxyXG4gICAgIC8vIOeCueWHu+S4i+aLieaYvuekuuahhlxyXG4gICAgc2VsZWN0VGFwKCl7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICB2aXNpYmxlQ2FzY2FkZXI6dHJ1ZSxcclxuICAgICAgICBpc1Nob3dFY2hhcnRzOmZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgb25Mb2FkOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgIHRoaXMuZ2V0QnlMb2dpblVzZXIoKVxyXG4gICAgICAgICB0aGlzLmdldElzc3VlU3VydmV5KClcclxuICAgIH0sXHJcbiAgICAvKioqKirojrflj5bkuIvmi4noj5zljZUgKioqKiovXHJcbiAgICBhc3luYyBnZXRCeUxvZ2luVXNlcigpe1xyXG4gICAgICAgIHRyeXtcclxuICAgICAgICAgICAgbGV0IHJlczphbnkgPSBhd2FpdCBnZXRCeUxvZ2luVXNlcigpXHJcbiAgICAgICAgICAgIGxldCBhcnI6YW55ID0gW1xyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuOltdLFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiflhajpg6gnLFxyXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOicnXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgICAgICAgIG9wdGlvbnNDYXNjYWRlcjphcnIuY29uY2F0KHJlcy5kYXRhLm9wdGlvbnMpXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIHd4LnNldFN0b3JhZ2VTeW5jKCdjaGlsZHJlbklEJywgdGhpcy5kYXRhLmRlcHRJZCk7XHJcbiAgICAgICAgfWNhdGNoKGVycil7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycilcclxuICAgICAgICB9XHJcbiAgICB9LFxyXG4gICAgLyoqKioqKioq6IGU5Yqo6YCJ5oup5byA5aeLKioqKioqLyBcclxuICAgIC8vIOWFs+mXremAieaLqeWIhuexu1xyXG4gICAgb25DbG9zZUNhc2NhZGVyKCkge1xyXG4gICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgdmlzaWJsZUNhc2NhZGVyOiBmYWxzZSxcclxuICAgICAgICBpc1Nob3dFY2hhcnRzOiF0aGlzLmRhdGEuaXNTaG93RWNoYXJ0cyxcclxuICAgICAgICB9KVxyXG4gICAgICAgIHRoaXMuZ2V0SXNzdWVTdXJ2ZXkoKVxyXG4gICAgfSxcclxuICAgICAvLyDmlLnlj5jpgInmi6nliIbnsbtcclxuICAgIG9uQ2hhbmdlQ2FzY2FkZXIoZTphbnkpIHtcclxuICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgICAgdmFsdWUyOiBlLmRldGFpbC52YWx1ZSwgLy/ov5nkuKrmmK/miYDmnInnmoRpZFxyXG4gICAgICAgICAgICAgaWRMZW5ndGg6ZS5kZXRhaWwudmFsdWUubGVuZ3RoLFxyXG4gICAgICAgICAgICAvLyAgZGVwdElkOmUuZGV0YWlsLnZhbHVlW3RoaXMuZGF0YS5pZExlbmd0aF0sXHJcbiAgICAgICAgICAgICBTZWxldGVkVGl0bGU6IGUuZGV0YWlsLm9wdGlvbnMubWFwKChuOmFueSkgPT4gbi5sYWJlbCkuam9pbignLycpLCAvL+e7meS4i+aLieahhui1i+WAvFxyXG4gICAgICAgICAgICAgaXNTaG93RWNoYXJ0czpmYWxzZVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgZS5kZXRhaWwudmFsdWUuZm9yRWFjaCgoaXRlbTphbnkpPT57XHJcbiAgICAgICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICAgICAgICBkZXB0SWQ6aXRlbVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgd3guc2V0U3RvcmFnZVN5bmMoJ2NoaWxkcmVuSUQnLCB0aGlzLmRhdGEuZGVwdElkKTtcclxuICAgIH0sXHJcbiAgICAvKioqKioqKirogZTliqjpgInmi6nlvIDlp4sqKioqKiovIFxyXG4gICAgLyoqKioqKirojrflj5borq7popjor6bmg4UqKioqKiovXHJcbiAgICBhc3luYyBnZXRJc3N1ZVN1cnZleSgpe1xyXG4gICAgICAgIHd4LnNob3dMb2FkaW5nKHtcclxuICAgICAgICAgIHRpdGxlOiAnTG9hZGluZy4uLicsIC8v5o+Q56S655qE5YaF5a65LFxyXG4gICAgICAgICAgbWFzazogdHJ1ZSwgLy/mmL7npLrpgI/mmI7okpnlsYLvvIzpmLLmraLop6bmkbjnqb/pgI8sXHJcbiAgICAgICAgfSlcclxuICAgICAgICB0cnl7XHJcbiAgICAgICAgICAgIGxldCByZXM6YW55ID0gYXdhaXQgZ2V0SXNzdWVTdXJ2ZXkodGhpcy5kYXRhLmRlcHRJZClcclxuICAgICAgICAgICAgLy8g5pyq6L2s6aG555uuXHJcbiAgICAgICAgICAgIGxldCBhcnIgPSBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHZhbHVlOnJlcy5kYXRhLmxpc3QudW5wYXNzZWRQcm9qZWN0LFxyXG4gICAgICAgICAgICAgICAgbmFtZTon5pyq6L2s6aG555uuJ1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZTpyZXMuZGF0YS5saXN0LnBhc3NlZFByb2plY3QsXHJcbiAgICAgICAgICAgICAgICBuYW1lOiflt7Lovazpobnnm64nXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICAgICAgLyoqKirng63orq7kuK0s5bey5YWz6ZetICoqKiovXHJcbiAgICAgICAgICAgIGlmKHJlcy5kYXRhLmxpc3QuaG90TnVtYmVyPT0wICYmIHJlcy5kYXRhLmxpc3QuY2xvc2VkTnVtYmVyPT0wKXtcclxuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgICAgIGxldCBob3RDbG9zZSA9IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOnJlcy5kYXRhLmxpc3QuaG90TnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOifng63orq7kuK0nXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOnJlcy5kYXRhLmxpc3QuY2xvc2VkTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiflt7LlhbPpl60nXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXVxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3JOb1Byb2plY3Q6W1wiI0FENkRGRVwiLCBcIiNGRkEyNzBcIl1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYocmVzLmRhdGEubGlzdC5ob3ROdW1iZXI9PTAgJiYgcmVzLmRhdGEubGlzdC5jbG9zZWROdW1iZXIgIT09MCl7XHJcbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICAgICAgICBsZXQgaG90Q2xvc2UgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTpyZXMuZGF0YS5saXN0LmNsb3NlZE51bWJlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTon5bey5YWz6ZetJ1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIF1cclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yTm9Qcm9qZWN0OltcIiNGRkEyNzBcIl1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYocmVzLmRhdGEubGlzdC5ob3ROdW1iZXIgIT09MCAmJiByZXMuZGF0YS5saXN0LmNsb3NlZE51bWJlciA9PTApe1xyXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAgICAgbGV0IGhvdENsb3NlID0gW1xyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6cmVzLmRhdGEubGlzdC5ob3ROdW1iZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6J+eDreiuruS4rSdcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBdXHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgICAgICAgICBjb2xvck5vUHJvamVjdDpbXCIjQUQ2REZFXCJdXHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmKHJlcy5kYXRhLmxpc3QuaG90TnVtYmVyICE9PTAgJiYgcmVzLmRhdGEubGlzdC5jbG9zZWROdW1iZXIgIT09MCl7XHJcbiAgICAgICAgICAgICAgICAgLyoqKirng63orq7kuK3lt7LlhbPpl60qKioqL1xyXG4gICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgICAgIGxldCBob3RDbG9zZSA9IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOnJlcy5kYXRhLmxpc3QuaG90TnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOifng63orq7kuK0nXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOnJlcy5kYXRhLmxpc3QuY2xvc2VkTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiflt7LlhbPpl60nXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXVxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3JOb1Byb2plY3Q6W1wiI0FENkRGRVwiLCBcIiNGRkEyNzBcIl1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLyoqKirng63orq7kuK0gLOW3suWFs+mXrSoqKiovXHJcbiAgICAgICAgICAgIC8vIOW3suino+WGs1xyXG4gICAgICAgICAgICBpZihyZXMuZGF0YS5saXN0LnJlc29sdmVkTnVtYmVyPT0wICYmIHJlcy5kYXRhLmxpc3QuYmVTb2x2ZWROdW1iZXI9PTApe1xyXG4gICAgICAgICAgICAgICAgLyoqKioq5bey6Kej5Yaz5b6F6Kej5YazICoqKioqL1xyXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAgICAgbGV0IHJlc29sdmVkID0gW1xyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6cmVzLmRhdGEubGlzdC5yZXNvbHZlZE51bWJlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTon5bey6Kej5YazJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTpyZXMuZGF0YS5saXN0LmJlU29sdmVkTnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiflvoXop6PlhrMnXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXVxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3JQcm9qZWN0OltcIiM2M0NGRURcIiwgXCIjRkY3NzNGXCJdXHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmKHJlcy5kYXRhLmxpc3QucmVzb2x2ZWROdW1iZXI9PTAgJiYgcmVzLmRhdGEubGlzdC5iZVNvbHZlZE51bWJlciAhPT0wKXtcclxuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgICAgIGxldCByZXNvbHZlZCA9IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOnJlcy5kYXRhLmxpc3QuYmVTb2x2ZWROdW1iZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6J+W+heino+WGsydcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBdXHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgICAgICAgICBjb2xvclByb2plY3Q6W1wiI0ZGNzczRlwiXVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihyZXMuZGF0YS5saXN0LnJlc29sdmVkTnVtYmVyICE9PTAgJiYgcmVzLmRhdGEubGlzdC5iZVNvbHZlZE51bWJlciA9PTApe1xyXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAgICAgbGV0IHJlc29sdmVkID0gW1xyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6cmVzLmRhdGEubGlzdC5yZXNvbHZlZE51bWJlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTon5bey6Kej5YazJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBdXHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgICAgICAgICBjb2xvclByb2plY3Q6W1wiIzYzQ0ZFRFwiXVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZihyZXMuZGF0YS5saXN0LnJlc29sdmVkTnVtYmVyICE9PTAgJiYgcmVzLmRhdGEubGlzdC5iZVNvbHZlZE51bWJlciAhPT0wKXtcclxuICAgICAgICAgICAgICAgIC8qKioqKuW3suino+WGs+W+heino+WGsyAqKioqKi9cclxuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgICAgIGxldCByZXNvbHZlZCA9IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOnJlcy5kYXRhLmxpc3QucmVzb2x2ZWROdW1iZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6J+W3suino+WGsydcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6cmVzLmRhdGEubGlzdC5iZVNvbHZlZE51bWJlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTon5b6F6Kej5YazJ1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIF1cclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yUHJvamVjdDpbXCIjNjNDRkVEXCIsIFwiI0ZGNzczRlwiXVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgICAgICAgZGVhZGxpbmU6cmVzLmRhdGEuZGVhZGxpbmUsLy/ml7bpl7RcclxuICAgICAgICAgICAgICAgIGlzc3VlVG90YWw6cmVzLmRhdGEubGlzdC5pc3N1ZVRvdGFsLC8v6K6u6aKY5oC75pWwXHJcbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICAgICAgICBub1Byb2plY3REYXRhOmFyciwvL+acqui9rOmhueebrmVjaGFydHNcclxuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgICAgIGhvdENsb3NlOmhvdENsb3NlLC8v5pyq6L2s6aG555uuZWNoYXJ0c1xyXG4gICAgICAgICAgICAgICAgdW5wYXNzZWRQcm9qZWN0UGVyY2VudDoocmVzLmRhdGEubGlzdC51bnBhc3NlZFByb2plY3RQZXJjZW50KSwvL+acqui9rOmhueebruWNoOavlFxyXG4gICAgICAgICAgICAgICAgdW5wYXNzZWRQcm9qZWN0OnJlcy5kYXRhLmxpc3QudW5wYXNzZWRQcm9qZWN0LC8v5pyq6L2s6aG555uuXHJcbiAgICAgICAgICAgICAgICBob3ROdW1iZXI6cmVzLmRhdGEubGlzdC5ob3ROdW1iZXIsLy/ng63orq7kuK1cclxuICAgICAgICAgICAgICAgIGhvdFBlcmNlbnQ6cmVzLmRhdGEubGlzdC5ob3RQZXJjZW50LC8v54Ot6K6u5Y2g5q+UXHJcbiAgICAgICAgICAgICAgICBjbG9zZWROdW1iZXI6cmVzLmRhdGEubGlzdC5jbG9zZWROdW1iZXIsLy/lt7LlhbPpl61cclxuICAgICAgICAgICAgICAgIGNsb3NlZFBlcmNlbnQ6cmVzLmRhdGEubGlzdC5jbG9zZWRQZXJjZW50LC8v5bey5YWz6Zet5Y2g5q+UXHJcbiAgICAgICAgICAgICAgICBpc1Nob3c6dHJ1ZSxcclxuICAgICAgICAgICAgICAgIGlzc2hvdzI6dHJ1ZSxcclxuICAgICAgICAgICAgICAgIC8vIOW3sui9rOmhueebruaVsOaNrlxyXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAgICAgUHJvamVjdERhdGE6YXJyLC8vZWNoYXJ0c1xyXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZWREYXRhOnJlc29sdmVkLC8vZWNoYXJ0c1xyXG4gICAgICAgICAgICAgICAgZGF0YTpyZXMuZGF0YS5saXN0LC8v5omA5pyJ5pWw5o2uXHJcbiAgICAgICAgICAgICAgICByZXNvbHZlZFBlcmNlbnQ6cmVzLmRhdGEubGlzdC5yZXNvbHZlZFBlcmNlbnQsLy/lt7Lop6PlhrPpobnnm67ljaDmr5RcclxuICAgICAgICAgICAgICAgIGJlU29sdmVkUGVyY2VudDpyZXMuZGF0YS5saXN0LmJlU29sdmVkUGVyY2VudCwvL+W+heino+WGs+mhueebruWNoOavlFxyXG4gICAgICAgICAgICAgICAgcGFzc2VkUHJvamVjdFBlcmNlbnQ6cmVzLmRhdGEubGlzdC5wYXNzZWRQcm9qZWN0UGVyY2VudFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB3eC5oaWRlTG9hZGluZygpO1xyXG4gICAgICAgIH0gY2F0Y2goZXJyKXtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKVxyXG4gICAgICAgICAgICB3eC5oaWRlTG9hZGluZygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH0sXHJcbiAgfSkiXX0=