"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 clerkOnline_1 = require("../../../../api/clerkOnline"); Page({ data: { pageIndex: 1, pageSize: 10, loadVisible: true, loadType: 'more', grounpList: [], grounpListLength: 0, isBackOpen: false, isLoadingBottom: true, }, onLoad: function () { console.log('onload'); }, getGridEvaList: function () { return __awaiter(this, void 0, void 0, function () { var obj, obj, res_1, _a; var _this = this; return __generator(this, function (_b) { switch (_b.label) { case 0: this.setData({ loadVisible: true, loadType: 'more' }); if (this.data.isBackOpen) { obj = { pageIndex: 1, pageSize: this.data.pageSize, id: wx.getStorageSync('id') }; } else if (!this.data.isBackOpen) { obj = { pageIndex: this.data.pageIndex, pageSize: this.data.pageSize, id: '' }; } _b.label = 1; case 1: _b.trys.push([1, 3, , 4]); return [4, clerkOnline_1.getGridEvaList(obj)]; case 2: res_1 = _b.sent(); if (!this.data.isBackOpen && this.data.pageIndex == 1) { console.log('这是请求加载群列表pageIndex=1'); this.setData({ grounpList: res_1.data, grounpListLength: res_1.data.length, loadVisible: false, }); } else if (!this.data.isBackOpen && this.data.pageIndex > 1) { console.log('这是请求加载群列表pageIndex>1'); this.setData({ grounpList: this.data.grounpList.concat(res_1.data), grounpListLength: res_1.data.length, loadVisible: false, }); } else if (this.data.isBackOpen) { this.setData({ isBackOpen: wx.getStorageSync('isBackOpen') }); this.data.grounpList.forEach(function (element, index) { var _a; if (element.id == res_1.data[0].id) { _this.setData((_a = {}, _a["grounpList[" + index + "]"] = res_1.data[0], _a)); } }); } if (this.data.grounpListLength < this.data.pageSize) { this.setData({ loadVisible: true, loadType: 'none' }); } return [3, 4]; case 3: _a = _b.sent(); this.setData({ loadVisible: false, }); return [3, 4]; case 4: return [2]; } }); }); }, goMyTalk: function (e) { wx.navigateTo({ url: "/subpages/clerkOnline/pages/myTalk/myTalk?type=" + e.currentTarget.dataset.type }); }, goGroupPeople: function () { wx.setStorageSync('isBackOpen', true); wx.navigateTo({ url: '/subpages/clerkOnline/pages/memberList/memberList' }); }, goTopicDetail: function (e) { wx.setStorageSync('id', e.currentTarget.dataset.id); if (e.currentTarget.dataset.messagetype == '1') { wx.navigateTo({ url: "/subpages/clerkOnline/pages/topicDetail/topicDetail?id=" + e.currentTarget.dataset.id }); wx.setStorageSync('isBackOpen', true); wx.setStorageSync('isBackOpenTopic', true); } else if (e.currentTarget.dataset.messagetype == '2') { wx.navigateTo({ url: "/subpages/clerkOnline/pages/noticeDetail/noticeDetail?id=" + e.currentTarget.dataset.id }); wx.setStorageSync('isBackOpen', true); } }, onReachBottom: function () { if (!this.data.isLoadingBottom) { return; } if (this.data.isBackOpen) { return; } this.setData({ isBackOpen: wx.getStorageSync('isBackOpen') }); if (this.data.grounpListLength < this.data.pageSize) { return this.setData({ loadVisible: true, loadType: 'none' }); } this.setData({ pageIndex: ++this.data.pageIndex, loadVisible: true, loadType: 'more' }); this.getGridEvaList(); }, onShow: function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: this.setData({ isBackOpen: wx.getStorageSync('isBackOpen') }); if (this.data.isBackOpen) { this.getGridEvaList(); wx.setStorageSync('isBackOpen', false); return [2]; } this.setData({ pageIndex: 1 }); return [4, this.getGridEvaList()]; case 1: _a.sent(); return [2]; } }); }); }, onReady: function () { console.log('onReady'); }, goIsRead: function (e) { wx.setStorageSync('isBackOpen', true); wx.navigateTo({ url: "/subpages/clerkOnline/pages/readlist/readlist?id=" + e.currentTarget.dataset.id + "&type=" + e.currentTarget.dataset.type }); }, onPullDownRefresh: function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: wx.setStorageSync('isBackOpen', false); this.setData({ pageIndex: 1, loadVisible: false, }); return [4, this.getGridEvaList()]; case 1: _a.sent(); wx.stopPullDownRefresh(); return [2]; } }); }); }, }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlHcm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm15R3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyREFBNEQ7QUFDNUQsSUFBSSxDQUFDO0lBQ0gsSUFBSSxFQUFFO1FBQ0osU0FBUyxFQUFFLENBQUM7UUFDWixRQUFRLEVBQUUsRUFBRTtRQUNaLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFVBQVUsRUFBRSxFQUFFO1FBQ2QsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQixVQUFVLEVBQUUsS0FBSztRQUNqQixlQUFlLEVBQUUsSUFBSTtLQUN0QjtJQUNELE1BQU0sRUFBRTtRQUNOLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDdkIsQ0FBQztJQUNLLGNBQWMsRUFBcEI7Ozs7Ozs7d0JBQ0UsSUFBSSxDQUFDLE9BQU8sQ0FBQzs0QkFDWCxXQUFXLEVBQUUsSUFBSTs0QkFDakIsUUFBUSxFQUFFLE1BQU07eUJBQ2pCLENBQUMsQ0FBQTt3QkFDRixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFOzRCQUNwQixHQUFHLEdBQUc7Z0NBQ1IsU0FBUyxFQUFFLENBQUM7Z0NBQ1osUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtnQ0FDNUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDOzZCQUM1QixDQUFBO3lCQUNGOzZCQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTs0QkFFNUIsR0FBRyxHQUFHO2dDQUNSLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7Z0NBQzlCLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7Z0NBQzVCLEVBQUUsRUFBRSxFQUFFOzZCQUNQLENBQUE7eUJBQ0Y7Ozs7d0JBR2dCLFdBQU0sNEJBQWMsQ0FBQyxHQUFHLENBQUMsRUFBQTs7d0JBQXBDLFFBQVcsU0FBeUI7d0JBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLEVBQUU7NEJBQ3JELE9BQU8sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQTs0QkFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQ0FDWCxVQUFVLEVBQUUsS0FBRyxDQUFDLElBQUk7Z0NBQ3BCLGdCQUFnQixFQUFFLEtBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTTtnQ0FDakMsV0FBVyxFQUFFLEtBQUs7NkJBR25CLENBQUMsQ0FBQTt5QkFDSDs2QkFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxFQUFFOzRCQUMzRCxPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUE7NEJBQ25DLElBQUksQ0FBQyxPQUFPLENBQUM7Z0NBQ1gsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFHLENBQUMsSUFBSSxDQUFDO2dDQUNqRCxnQkFBZ0IsRUFBRSxLQUFHLENBQUMsSUFBSSxDQUFDLE1BQU07Z0NBQ2pDLFdBQVcsRUFBRSxLQUFLOzZCQUNuQixDQUFDLENBQUE7eUJBQ0g7NkJBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTs0QkFFL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQ0FDWCxVQUFVLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUM7NkJBQzVDLENBQUMsQ0FBQTs0QkFDRixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsVUFBQyxPQUFZLEVBQUUsS0FBVTs7Z0NBQ3BELElBQUksT0FBTyxDQUFDLEVBQUUsSUFBSSxLQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQ0FDaEMsS0FBSSxDQUFDLE9BQU87d0NBQ1YsR0FBQyxnQkFBYyxLQUFLLE1BQUcsSUFBRyxLQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzs0Q0FDckMsQ0FBQTtpQ0FDSDs0QkFDSCxDQUFDLENBQUMsQ0FBQTt5QkFDSDt3QkFDRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7NEJBQ25ELElBQUksQ0FBQyxPQUFPLENBQUM7Z0NBQ1gsV0FBVyxFQUFFLElBQUk7Z0NBQ2pCLFFBQVEsRUFBRSxNQUFNOzZCQUNqQixDQUFDLENBQUE7eUJBQ0g7Ozs7d0JBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQzs0QkFDWCxXQUFXLEVBQUUsS0FBSzt5QkFDbkIsQ0FBQyxDQUFBOzs7Ozs7S0FHTDtJQUVELFFBQVEsRUFBUixVQUFTLENBQU07UUFDYixFQUFFLENBQUMsVUFBVSxDQUFDO1lBQ1osR0FBRyxFQUFFLG9EQUFrRCxDQUFDLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFNO1NBQ3RGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhO1FBQ1gsRUFBRSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDckMsRUFBRSxDQUFDLFVBQVUsQ0FBQztZQUNaLEdBQUcsRUFBRSxtREFBbUQ7U0FDekQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWEsRUFBYixVQUFjLENBQU07UUFFbEIsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDbkQsSUFBSSxDQUFDLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksR0FBRyxFQUFFO1lBQzlDLEVBQUUsQ0FBQyxVQUFVLENBQUM7Z0JBQ1osR0FBRyxFQUFFLDREQUEwRCxDQUFDLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxFQUFJO2FBQzVGLENBQUMsQ0FBQztZQUNILEVBQUUsQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFBO1lBQ3JDLEVBQUUsQ0FBQyxjQUFjLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLENBQUE7U0FDM0M7YUFBTSxJQUFJLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxHQUFHLEVBQUU7WUFDckQsRUFBRSxDQUFDLFVBQVUsQ0FBQztnQkFDWixHQUFHLEVBQUUsOERBQTRELENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEVBQUk7YUFDOUYsQ0FBQyxDQUFDO1lBQ0gsRUFBRSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUE7U0FDdEM7SUFFSCxDQUFDO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQUUsT0FBTTtTQUFFO1FBQzFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFBRSxPQUFNO1NBQUU7UUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUNYLFVBQVUsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQztTQUM1QyxDQUFDLENBQUE7UUFDRixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbkQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO2dCQUNsQixXQUFXLEVBQUUsSUFBSTtnQkFDakIsUUFBUSxFQUFFLE1BQU07YUFDakIsQ0FBQyxDQUFBO1NBRUg7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ1gsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQ2hDLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLFFBQVEsRUFBRSxNQUFNO1NBQ2pCLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQTtJQUN2QixDQUFDO0lBQ0ssTUFBTTs7Ozs7d0JBRVYsSUFBSSxDQUFDLE9BQU8sQ0FBQzs0QkFDWCxVQUFVLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUM7eUJBQzVDLENBQUMsQ0FBQTt3QkFDRixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFOzRCQUN4QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7NEJBQ3JCLEVBQUUsQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFBOzRCQUN0QyxXQUFNO3lCQUNQO3dCQUlELElBQUksQ0FBQyxPQUFPLENBQUM7NEJBRVgsU0FBUyxFQUFFLENBQUM7eUJBQ2IsQ0FBQyxDQUFBO3dCQUNGLFdBQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFBOzt3QkFBM0IsU0FBMkIsQ0FBQTs7Ozs7S0FDNUI7SUFDRCxPQUFPLEVBQUU7UUFDUCxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQ3hCLENBQUM7SUFDRCxRQUFRLEVBQVIsVUFBUyxDQUFNO1FBQ2IsRUFBRSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDckMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxzREFBb0QsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxjQUFTLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQU0sRUFBRSxDQUFDLENBQUM7SUFDaEosQ0FBQztJQUlLLGlCQUFpQjs7Ozs7d0JBQ3JCLEVBQUUsQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFBO3dCQUN0QyxJQUFJLENBQUMsT0FBTyxDQUFDOzRCQUNYLFNBQVMsRUFBRSxDQUFDOzRCQUNaLFdBQVcsRUFBRSxLQUFLO3lCQUNuQixDQUFDLENBQUE7d0JBQ0YsV0FBTSxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUE7O3dCQUEzQixTQUEyQixDQUFBO3dCQUMzQixFQUFFLENBQUMsbUJBQW1CLEVBQUUsQ0FBQzs7Ozs7S0FDMUI7Q0FDRixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRHcmlkRXZhTGlzdCB9IGZyb20gJy4uLy4uLy4uLy4uL2FwaS9jbGVya09ubGluZSdcclxuUGFnZSh7XHJcbiAgZGF0YToge1xyXG4gICAgcGFnZUluZGV4OiAxLFxyXG4gICAgcGFnZVNpemU6IDEwLFxyXG4gICAgbG9hZFZpc2libGU6IHRydWUsXHJcbiAgICBsb2FkVHlwZTogJ21vcmUnLFxyXG4gICAgZ3JvdW5wTGlzdDogW10sXHJcbiAgICBncm91bnBMaXN0TGVuZ3RoOiAwLFxyXG4gICAgaXNCYWNrT3BlbjogZmFsc2UsLy90cnVlIOaYr+i/lOWbnueahCBmYWxzZeaYr+i3s+i9rOeahFxyXG4gICAgaXNMb2FkaW5nQm90dG9tOiB0cnVlLC8vdHJ1ZSDmraPluLjosIPnlKgsZmFsc2XkuI3osIPnlKggXHJcbiAgfSxcclxuICBvbkxvYWQ6IGZ1bmN0aW9uICgpIHtcclxuICAgIGNvbnNvbGUubG9nKCdvbmxvYWQnKVxyXG4gIH0sXHJcbiAgYXN5bmMgZ2V0R3JpZEV2YUxpc3QoKSB7XHJcbiAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICBsb2FkVmlzaWJsZTogdHJ1ZSxcclxuICAgICAgbG9hZFR5cGU6ICdtb3JlJ1xyXG4gICAgfSlcclxuICAgIGlmICh0aGlzLmRhdGEuaXNCYWNrT3Blbikge1xyXG4gICAgICB2YXIgb2JqID0ge1xyXG4gICAgICAgIHBhZ2VJbmRleDogMSxcclxuICAgICAgICBwYWdlU2l6ZTogdGhpcy5kYXRhLnBhZ2VTaXplLFxyXG4gICAgICAgIGlkOiB3eC5nZXRTdG9yYWdlU3luYygnaWQnKVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKCF0aGlzLmRhdGEuaXNCYWNrT3Blbikge1xyXG4gICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgIHZhciBvYmogPSB7XHJcbiAgICAgICAgcGFnZUluZGV4OiB0aGlzLmRhdGEucGFnZUluZGV4LFxyXG4gICAgICAgIHBhZ2VTaXplOiB0aGlzLmRhdGEucGFnZVNpemUsXHJcbiAgICAgICAgaWQ6ICcnXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRyeSB7XHJcbiAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgbGV0IHJlczogYW55ID0gYXdhaXQgZ2V0R3JpZEV2YUxpc3Qob2JqKVxyXG4gICAgICBpZiAoIXRoaXMuZGF0YS5pc0JhY2tPcGVuICYmIHRoaXMuZGF0YS5wYWdlSW5kZXggPT0gMSkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCfov5nmmK/or7fmsYLliqDovb3nvqTliJfooahwYWdlSW5kZXg9MScpXHJcbiAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgIGdyb3VucExpc3Q6IHJlcy5kYXRhLFxyXG4gICAgICAgICAgZ3JvdW5wTGlzdExlbmd0aDogcmVzLmRhdGEubGVuZ3RoLC8v5Yik5pat5piv5ZCm6L+Y6ZyA6KaB5Y+R6YCB6K+35rGCXHJcbiAgICAgICAgICBsb2FkVmlzaWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAvLyBpc0xvYWRpbmdCb3R0b206ZmFsc2VcclxuICAgICAgICAgIC8vIGlzQmFja09wZW46dHJ1ZVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0gZWxzZSBpZiAoIXRoaXMuZGF0YS5pc0JhY2tPcGVuICYmIHRoaXMuZGF0YS5wYWdlSW5kZXggPiAxKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coJ+i/meaYr+ivt+axguWKoOi9vee+pOWIl+ihqHBhZ2VJbmRleD4xJylcclxuICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgZ3JvdW5wTGlzdDogdGhpcy5kYXRhLmdyb3VucExpc3QuY29uY2F0KHJlcy5kYXRhKSxcclxuICAgICAgICAgIGdyb3VucExpc3RMZW5ndGg6IHJlcy5kYXRhLmxlbmd0aCwvL+WIpOaWreaYr+WQpui/mOmcgOimgeWPkemAgeivt+axglxyXG4gICAgICAgICAgbG9hZFZpc2libGU6IGZhbHNlLFxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5kYXRhLmlzQmFja09wZW4pIHtcclxuICAgICAgICAvLyDlsYDpg6jliLfmlrBcclxuICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgaXNCYWNrT3Blbjogd3guZ2V0U3RvcmFnZVN5bmMoJ2lzQmFja09wZW4nKVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5kYXRhLmdyb3VucExpc3QuZm9yRWFjaCgoZWxlbWVudDogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoZWxlbWVudC5pZCA9PSByZXMuZGF0YVswXS5pZCkge1xyXG4gICAgICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgICAgIFtgZ3JvdW5wTGlzdFske2luZGV4fV1gXTogcmVzLmRhdGFbMF1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmRhdGEuZ3JvdW5wTGlzdExlbmd0aCA8IHRoaXMuZGF0YS5wYWdlU2l6ZSkge1xyXG4gICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICBsb2FkVmlzaWJsZTogdHJ1ZSxcclxuICAgICAgICAgIGxvYWRUeXBlOiAnbm9uZSdcclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoe1xyXG4gICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgIGxvYWRWaXNpYmxlOiBmYWxzZSxcclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgfSxcclxuICAvKioqKioqKioqKioqKioq6Lez6L2s5Yiw5oiR5pyJ6K+d6K+0LOWSjOWPkeW4g+mAmuefpSoqKioqKioqKioqKioqL1xyXG4gIGdvTXlUYWxrKGU6IGFueSkge1xyXG4gICAgd3gubmF2aWdhdGVUbyh7XHJcbiAgICAgIHVybDogYC9zdWJwYWdlcy9jbGVya09ubGluZS9wYWdlcy9teVRhbGsvbXlUYWxrP3R5cGU9JHtlLmN1cnJlbnRUYXJnZXQuZGF0YXNldC50eXBlfWBcclxuICAgIH0pO1xyXG4gIH0sXHJcbiAgLyoqKioqKioqKioqKioqKui3s+i9rOWIsOe+pOaIkOWRmCoqKioqKioqKioqKioqL1xyXG4gIGdvR3JvdXBQZW9wbGUoKSB7XHJcbiAgICB3eC5zZXRTdG9yYWdlU3luYygnaXNCYWNrT3BlbicsIHRydWUpXHJcbiAgICB3eC5uYXZpZ2F0ZVRvKHtcclxuICAgICAgdXJsOiAnL3N1YnBhZ2VzL2NsZXJrT25saW5lL3BhZ2VzL21lbWJlckxpc3QvbWVtYmVyTGlzdCdcclxuICAgIH0pO1xyXG4gIH0sXHJcbiAgLyoqKioqKioqKioqKioqKui3s+i9rOWIsOivpuaDhemhtSoqKioqKioqKioqKioqL1xyXG4gIGdvVG9waWNEZXRhaWwoZTogYW55KSB7XHJcbiAgICAvLyDkv6Hmga/nsbvlnosg77yaMeivnemimO+8jDLpgJrnn6VcclxuICAgIHd4LnNldFN0b3JhZ2VTeW5jKCdpZCcsIGUuY3VycmVudFRhcmdldC5kYXRhc2V0LmlkKVxyXG4gICAgaWYgKGUuY3VycmVudFRhcmdldC5kYXRhc2V0Lm1lc3NhZ2V0eXBlID09ICcxJykge1xyXG4gICAgICB3eC5uYXZpZ2F0ZVRvKHtcclxuICAgICAgICB1cmw6IGAvc3VicGFnZXMvY2xlcmtPbmxpbmUvcGFnZXMvdG9waWNEZXRhaWwvdG9waWNEZXRhaWw/aWQ9JHtlLmN1cnJlbnRUYXJnZXQuZGF0YXNldC5pZH1gXHJcbiAgICAgIH0pO1xyXG4gICAgICB3eC5zZXRTdG9yYWdlU3luYygnaXNCYWNrT3BlbicsIHRydWUpXHJcbiAgICAgIHd4LnNldFN0b3JhZ2VTeW5jKCdpc0JhY2tPcGVuVG9waWMnLCB0cnVlKVxyXG4gICAgfSBlbHNlIGlmIChlLmN1cnJlbnRUYXJnZXQuZGF0YXNldC5tZXNzYWdldHlwZSA9PSAnMicpIHtcclxuICAgICAgd3gubmF2aWdhdGVUbyh7XHJcbiAgICAgICAgdXJsOiBgL3N1YnBhZ2VzL2NsZXJrT25saW5lL3BhZ2VzL25vdGljZURldGFpbC9ub3RpY2VEZXRhaWw/aWQ9JHtlLmN1cnJlbnRUYXJnZXQuZGF0YXNldC5pZH1gXHJcbiAgICAgIH0pO1xyXG4gICAgICB3eC5zZXRTdG9yYWdlU3luYygnaXNCYWNrT3BlbicsIHRydWUpXHJcbiAgICB9XHJcblxyXG4gIH0sXHJcbiAgb25SZWFjaEJvdHRvbTogZnVuY3Rpb24gKCkge1xyXG4gICAgaWYgKCF0aGlzLmRhdGEuaXNMb2FkaW5nQm90dG9tKSB7IHJldHVybiB9XHJcbiAgICBpZiAodGhpcy5kYXRhLmlzQmFja09wZW4pIHsgcmV0dXJuIH1cclxuICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgIGlzQmFja09wZW46IHd4LmdldFN0b3JhZ2VTeW5jKCdpc0JhY2tPcGVuJylcclxuICAgIH0pXHJcbiAgICBpZiAodGhpcy5kYXRhLmdyb3VucExpc3RMZW5ndGggPCB0aGlzLmRhdGEucGFnZVNpemUpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgbG9hZFZpc2libGU6IHRydWUsXHJcbiAgICAgICAgbG9hZFR5cGU6ICdub25lJ1xyXG4gICAgICB9KVxyXG4gICAgICAvL+iOt+WPlueahOmVv+W6puWwj+S6jjEwIOWwhuS4jeWGjeWPkeivt+axglxyXG4gICAgfVxyXG4gICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgcGFnZUluZGV4OiArK3RoaXMuZGF0YS5wYWdlSW5kZXgsXHJcbiAgICAgIGxvYWRWaXNpYmxlOiB0cnVlLFxyXG4gICAgICBsb2FkVHlwZTogJ21vcmUnXHJcbiAgICB9KVxyXG4gICAgdGhpcy5nZXRHcmlkRXZhTGlzdCgpXHJcbiAgfSxcclxuICBhc3luYyBvblNob3coKSB7XHJcblxyXG4gICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgaXNCYWNrT3Blbjogd3guZ2V0U3RvcmFnZVN5bmMoJ2lzQmFja09wZW4nKVxyXG4gICAgfSlcclxuICAgIGlmICh0aGlzLmRhdGEuaXNCYWNrT3Blbikge1xyXG4gICAgICB0aGlzLmdldEdyaWRFdmFMaXN0KClcclxuICAgICAgd3guc2V0U3RvcmFnZVN5bmMoJ2lzQmFja09wZW4nLCBmYWxzZSlcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcbiAgICAvLyB3eC5wYWdlU2Nyb2xsVG8oe1xyXG4gICAgLy8gICBzY3JvbGxUb3A6MFxyXG4gICAgLy8gfSlcclxuICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgIC8vIGdyb3VucExpc3Q6IFtdLFxyXG4gICAgICBwYWdlSW5kZXg6IDFcclxuICAgIH0pXHJcbiAgICBhd2FpdCB0aGlzLmdldEdyaWRFdmFMaXN0KClcclxuICB9LFxyXG4gIG9uUmVhZHk6IGZ1bmN0aW9uICgpIHtcclxuICAgIGNvbnNvbGUubG9nKCdvblJlYWR5JylcclxuICB9LFxyXG4gIGdvSXNSZWFkKGU6IGFueSkge1xyXG4gICAgd3guc2V0U3RvcmFnZVN5bmMoJ2lzQmFja09wZW4nLCB0cnVlKVxyXG4gICAgd3gubmF2aWdhdGVUbyh7IHVybDogYC9zdWJwYWdlcy9jbGVya09ubGluZS9wYWdlcy9yZWFkbGlzdC9yZWFkbGlzdD9pZD0ke2UuY3VycmVudFRhcmdldC5kYXRhc2V0LmlkfSZ0eXBlPSR7ZS5jdXJyZW50VGFyZ2V0LmRhdGFzZXQudHlwZX1gIH0pO1xyXG4gIH0sXHJcbiAgLyoqXHJcbiAgICog6aG16Z2i55u45YWz5LqL5Lu25aSE55CG5Ye95pWwLS3nm5HlkKznlKjmiLfkuIvmi4nliqjkvZxcclxuICAgKi9cclxuICBhc3luYyBvblB1bGxEb3duUmVmcmVzaCgpIHtcclxuICAgIHd4LnNldFN0b3JhZ2VTeW5jKCdpc0JhY2tPcGVuJywgZmFsc2UpXHJcbiAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICBwYWdlSW5kZXg6IDEsXHJcbiAgICAgIGxvYWRWaXNpYmxlOiBmYWxzZSxcclxuICAgIH0pXHJcbiAgICBhd2FpdCB0aGlzLmdldEdyaWRFdmFMaXN0KClcclxuICAgIHd4LnN0b3BQdWxsRG93blJlZnJlc2goKTtcclxuICB9LFxyXG59KSJdfQ==