榆山数据端小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

235 lines
21 KiB

"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 organization_1 = require("../../../../api/organization");
Page({
data: {
isClick: 'person',
keyWords: '',
personList: [],
departmentList: [],
callNumber: '',
locked: false,
loadVisible: false,
loadType: 'more',
isShowNoData: false
},
onLoad: function () {
},
triggle: function (e) {
var currentTarget = e.currentTarget;
if (currentTarget.dataset.index == "联系人") {
this.setData({
isClick: 'person',
personList: [],
departmentList: [],
loadVisible: false,
isShowNoData: false
});
this.getSearchOfficer();
}
else if (currentTarget.dataset.index == "部门") {
this.setData({
isClick: 'department',
personList: [],
departmentList: [],
loadVisible: false,
isShowNoData: false
});
this.getSearchDept();
}
},
goCall: function (e) {
var _this = this;
this.setData({
callNumber: e.currentTarget.dataset.number
});
wx.showModal({
title: '拨打电话',
content: "\u60A8\u786E\u5B9A\u62E8\u6253" + this.data.callNumber,
cancelColor: '#29B9A5',
confirmColor: '#29B9A5',
success: function (res) {
if (res.confirm) {
console.log('用户点击确定');
wx.makePhoneCall({
phoneNumber: _this.data.callNumber
});
}
else if (res.cancel) {
console.log('用户点击取消');
}
}
});
},
bindKeyInput: function (e) {
this.setData({
keyWords: e.detail.value
});
if (this.data.isClick == "person") {
this.getSearchOfficer();
}
else if (this.data.isClick == "department") {
this.getSearchDept();
}
},
getSearchOfficer: function () {
return __awaiter(this, void 0, void 0, function () {
var obj, res, _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0:
if (this.data.keyWords == '')
return [2];
if (this.data.locked)
return [2];
this.setData({
loadVisible: true,
personList: [],
loadType: 'more',
isShowNoData: false
});
obj = {
keyWords: this.data.keyWords,
};
this.setData({
locked: true,
});
_b.label = 1;
case 1:
_b.trys.push([1, 3, , 4]);
return [4, organization_1.getSearchOfficer(obj)];
case 2:
res = _b.sent();
this.setData({
personList: res.data,
locked: false,
loadType: 'none'
});
if (this.data.personList.length == 0) {
this.setData({
loadVisible: false,
isShowNoData: true
});
}
console.log('res', res);
return [3, 4];
case 3:
_a = _b.sent();
this.setData({
locked: false,
loadVisible: false
});
return [3, 4];
case 4: return [2];
}
});
});
},
getSearchDept: function () {
return __awaiter(this, void 0, void 0, function () {
var obj, res, _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0:
if (this.data.keyWords == '')
return [2];
if (this.data.locked)
return [2];
this.setData({
loadVisible: true,
departmentList: [],
loadType: 'more',
isShowNoData: false
});
obj = {
keyWords: this.data.keyWords,
};
this.setData({
locked: true,
});
_b.label = 1;
case 1:
_b.trys.push([1, 3, , 4]);
return [4, organization_1.getSearchDept(obj)];
case 2:
res = _b.sent();
this.setData({
departmentList: res.data,
locked: false,
loadType: 'none'
});
if (this.data.departmentList.length == 0) {
this.setData({
loadVisible: false,
isShowNoData: true
});
}
console.log('res', res);
return [3, 4];
case 3:
_a = _b.sent();
this.setData({
locked: false,
loadVisible: false
});
return [3, 4];
case 4: return [2];
}
});
});
},
goIndex: function (e) {
if (e.currentTarget.dataset.key == '2') {
wx.navigateTo({
url: "/subpages/organization/pages/streeUnfold/streeUnfold?communityId=" + e.currentTarget.dataset.id
});
}
else if (e.currentTarget.dataset.key == '0') {
wx.navigateTo({
url: "/subpages/organization/pages/organizationStree/organizationStree"
});
}
else if (e.currentTarget.dataset.key == '1') {
wx.navigateTo({
url: "/subpages/organization/pages/organizationStree/organizationStree?id=" + e.currentTarget.dataset.id
});
}
}
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoSW5mby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNlYXJjaEluZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw2REFBMkU7QUFDM0UsSUFBSSxDQUFDO0lBS0QsSUFBSSxFQUFFO1FBQ0osT0FBTyxFQUFDLFFBQVE7UUFDaEIsUUFBUSxFQUFDLEVBQUU7UUFDWCxVQUFVLEVBQUMsRUFBRTtRQUNiLGNBQWMsRUFBQyxFQUFFO1FBQ2pCLFVBQVUsRUFBQyxFQUFFO1FBQ2IsTUFBTSxFQUFDLEtBQUs7UUFDWixXQUFXLEVBQUUsS0FBSztRQUNsQixRQUFRLEVBQUUsTUFBTTtRQUNoQixZQUFZLEVBQUMsS0FBSztLQUNuQjtJQUNELE1BQU0sRUFBRTtJQUNSLENBQUM7SUFDRCxPQUFPLEVBQVAsVUFBUSxDQUFLO1FBQ04sSUFBQSxhQUFhLEdBQUUsQ0FBQyxjQUFILENBQUc7UUFDckIsSUFBRyxhQUFhLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBRSxLQUFLLEVBQUM7WUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDWCxPQUFPLEVBQUMsUUFBUTtnQkFDaEIsVUFBVSxFQUFDLEVBQUU7Z0JBQ2IsY0FBYyxFQUFDLEVBQUU7Z0JBRWpCLFdBQVcsRUFBQyxLQUFLO2dCQUNqQixZQUFZLEVBQUMsS0FBSzthQUNuQixDQUFDLENBQUE7WUFDRixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQTtTQUN4QjthQUFLLElBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUUsSUFBSSxFQUFDO1lBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUM7Z0JBQ1gsT0FBTyxFQUFDLFlBQVk7Z0JBQ3BCLFVBQVUsRUFBQyxFQUFFO2dCQUNiLGNBQWMsRUFBQyxFQUFFO2dCQUVqQixXQUFXLEVBQUMsS0FBSztnQkFDakIsWUFBWSxFQUFDLEtBQUs7YUFDbkIsQ0FBQyxDQUFBO1lB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QWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFFLEdBQUcsRUFBQztZQUNsQyxFQUFFLENBQUMsVUFBVSxDQUFDO2dCQUNaLEdBQUcsRUFBRSxzRUFBb0UsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBSTthQUN0RyxDQUFDLENBQUM7U0FDSjthQUFLLElBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFFLEdBQUcsRUFBQztZQUN4QyxFQUFFLENBQUMsVUFBVSxDQUFDO2dCQUNaLEdBQUcsRUFBRSxrRUFBa0U7YUFDeEUsQ0FBQyxDQUFDO1NBQ0o7YUFBSyxJQUFHLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBRSxHQUFHLEVBQUM7WUFDeEMsRUFBRSxDQUFDLFVBQVUsQ0FBQztnQkFDWixHQUFHLEVBQUUseUVBQXVFLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEVBQUk7YUFDekcsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0NBRUYsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gbWluaXByb2dyYW0vc3VicGFnZXMvb3JnYW5pemF0aW9uL3BhZ2VzL3NlYXJjaEluZm8vc2VhcmNoSW5mby5qc1xyXG5pbXBvcnQge2dldFNlYXJjaE9mZmljZXIsZ2V0U2VhcmNoRGVwdH0gZnJvbSAnLi4vLi4vLi4vLi4vYXBpL29yZ2FuaXphdGlvbidcclxuUGFnZSh7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDpobXpnaLnmoTliJ3lp4vmlbDmja5cclxuICAgICAqL1xyXG4gICAgZGF0YToge1xyXG4gICAgICBpc0NsaWNrOidwZXJzb24nLFxyXG4gICAgICBrZXlXb3JkczonJyxcclxuICAgICAgcGVyc29uTGlzdDpbXSxcclxuICAgICAgZGVwYXJ0bWVudExpc3Q6W10sXHJcbiAgICAgIGNhbGxOdW1iZXI6JycsXHJcbiAgICAgIGxvY2tlZDpmYWxzZSwvL+aYr+WQpuWPkeivt+axgiBmYWxzZeWPkemAgSB0cnVl5LiN5Y+R6YCBXHJcbiAgICAgIGxvYWRWaXNpYmxlOiBmYWxzZSxcclxuICAgICAgbG9hZFR5cGU6ICdtb3JlJyxcclxuICAgICAgaXNTaG93Tm9EYXRhOmZhbHNlXHJcbiAgICB9LFxyXG4gICAgb25Mb2FkOiBmdW5jdGlvbiAoKSB7XHJcbiAgICB9LFxyXG4gICAgdHJpZ2dsZShlOmFueSl7XHJcbiAgICAgIGxldCB7Y3VycmVudFRhcmdldH09ZVxyXG4gICAgICBpZihjdXJyZW50VGFyZ2V0LmRhdGFzZXQuaW5kZXg9PVwi6IGU57O75Lq6XCIpe1xyXG4gICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICBpc0NsaWNrOidwZXJzb24nLFxyXG4gICAgICAgICAgcGVyc29uTGlzdDpbXSxcclxuICAgICAgICAgIGRlcGFydG1lbnRMaXN0OltdLFxyXG4gICAgICAgICAgLy8ga2V5V29yZHM6JycsXHJcbiAgICAgICAgICBsb2FkVmlzaWJsZTpmYWxzZSxcclxuICAgICAgICAgIGlzU2hvd05vRGF0YTpmYWxzZVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5nZXRTZWFyY2hPZmZpY2VyKClcclxuICAgICAgfWVsc2UgaWYoY3VycmVudFRhcmdldC5kYXRhc2V0LmluZGV4PT1cIumDqOmXqFwiKXtcclxuICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgaXNDbGljazonZGVwYXJ0bWVudCcsXHJcbiAgICAgICAgICBwZXJzb25MaXN0OltdLFxyXG4gICAgICAgICAgZGVwYXJ0bWVudExpc3Q6W10sXHJcbiAgICAgICAgICAvLyBrZXlXb3JkczonJyxcclxuICAgICAgICAgIGxvYWRWaXNpYmxlOmZhbHNlLFxyXG4gICAgICAgICAgaXNTaG93Tm9EYXRhOmZhbHNlXHJcbiAgICAgICAgfSlcclxuICAgICAgICB0aGlzLmdldFNlYXJjaERlcHQoKVxyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgZ29DYWxsKGU6YW55KXtcclxuICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICBjYWxsTnVtYmVyOmUuY3VycmVudFRhcmdldC5kYXRhc2V0Lm51bWJlclxyXG4gICAgICB9KVxyXG4gICAgICB3eC5zaG93TW9kYWwoe1xyXG4gICAgICAgIHRpdGxlOiAn5ouo5omT55S16K+dJyxcclxuICAgICAgICBjb250ZW50OiBg5oKo56Gu5a6a5ouo5omTJHt0aGlzLmRhdGEuY2FsbE51bWJlcn1gLFxyXG4gICAgICAgIGNhbmNlbENvbG9yOicjMjlCOUE1JyxcclxuICAgICAgICBjb25maXJtQ29sb3I6JyMyOUI5QTUnLFxyXG4gICAgICAgIHN1Y2Nlc3M6KHJlcyk9PiB7XHJcbiAgICAgICAgICBpZiAocmVzLmNvbmZpcm0pIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ+eUqOaIt+eCueWHu+ehruWumicpXHJcbiAgICAgICAgICAgIHd4Lm1ha2VQaG9uZUNhbGwoe1xyXG4gICAgICAgICAgICAgICAgcGhvbmVOdW1iZXI6IHRoaXMuZGF0YS5jYWxsTnVtYmVyIFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfSBlbHNlIGlmIChyZXMuY2FuY2VsKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCfnlKjmiLfngrnlh7vlj5bmtognKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIH0sXHJcbiAgICAvKioq6I635Y+W5pCc57Si5qGG55qE5YaF5a65ICoqKiovXHJcbiAgICBiaW5kS2V5SW5wdXQoZTphbnkpe1xyXG4gICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgIGtleVdvcmRzOiBlLmRldGFpbC52YWx1ZVxyXG4gICAgICB9KVxyXG4gICAgICBpZih0aGlzLmRhdGEuaXNDbGljaz09XCJwZXJzb25cIil7XHJcbiAgICAgICAgdGhpcy5nZXRTZWFyY2hPZmZpY2VyKClcclxuICAgICAgfWVsc2UgaWYodGhpcy5kYXRhLmlzQ2xpY2sgPT0gXCJkZXBhcnRtZW50XCIpe1xyXG4gICAgICAgIHRoaXMuZ2V0U2VhcmNoRGVwdCgpXHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICB9LFxyXG4gICAgLyoqKioq5pCc57Si6IGU57O75Lq655qE6K+35rGCICoqKioqL1xyXG4gICAgYXN5bmMgZ2V0U2VhcmNoT2ZmaWNlcigpe1xyXG4gICAgICBpZih0aGlzLmRhdGEua2V5V29yZHM9PScnKSByZXR1cm4gXHJcbiAgICAgIGlmKHRoaXMuZGF0YS5sb2NrZWQpIHJldHVybiAvL+S7o+ihqOS4iuS4gOasoeeahOivt+axgui/mOayoeWPkemAgeWujCDkuI3ov5vooYzkuIvkuIDmrKHnmoTor7fmsYJcclxuICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICBsb2FkVmlzaWJsZTp0cnVlLFxyXG4gICAgICAgIHBlcnNvbkxpc3Q6W10sXHJcbiAgICAgICAgbG9hZFR5cGU6J21vcmUnLFxyXG4gICAgICAgIGlzU2hvd05vRGF0YTpmYWxzZVxyXG4gICAgICB9KVxyXG4gICAgICBsZXQgb2JqID0ge1xyXG4gICAgICAgIGtleVdvcmRzOnRoaXMuZGF0YS5rZXlXb3JkcyxcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgIGxvY2tlZDp0cnVlLC8v5bCG6KaB5byA5aeL5Y+R6YCB6K+35rGCXHJcbiAgICAgIH0pXHJcbiAgICAgIHRyeXtcclxuICAgICAgICBsZXQgcmVzOmFueSA9IGF3YWl0IGdldFNlYXJjaE9mZmljZXIob2JqKVxyXG4gICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICBwZXJzb25MaXN0OnJlcy5kYXRhLFxyXG4gICAgICAgICAgbG9ja2VkOmZhbHNlLFxyXG4gICAgICAgICAgbG9hZFR5cGU6J25vbmUnXHJcbiAgICAgICAgfSlcclxuICAgICAgICBpZih0aGlzLmRhdGEucGVyc29uTGlzdC5sZW5ndGg9PTApe1xyXG4gICAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgICAgbG9hZFZpc2libGU6ZmFsc2UsXHJcbiAgICAgICAgICAgIGlzU2hvd05vRGF0YTp0cnVlXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zb2xlLmxvZygncmVzJyxyZXMpXHJcbiAgICAgIH1jYXRjaHtcclxuICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgbG9ja2VkOmZhbHNlLFxyXG4gICAgICAgICAgbG9hZFZpc2libGU6ZmFsc2VcclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgfSxcclxuICAgIC8qKioqKuaQnOe0oumDqOmXqOeahOivt+axgiAqKioqKi9cclxuICAgIGFzeW5jIGdldFNlYXJjaERlcHQoKXtcclxuICAgICAgaWYodGhpcy5kYXRhLmtleVdvcmRzPT0nJykgcmV0dXJuIFxyXG4gICAgICBpZih0aGlzLmRhdGEubG9ja2VkKSByZXR1cm4gLy/ku6PooajkuIrkuIDmrKHnmoTor7fmsYLov5jmsqHlj5HpgIHlrowg5LiN6L+b6KGM5LiL5LiA5qyh55qE6K+35rGCXHJcbiAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgbG9hZFZpc2libGU6dHJ1ZSxcclxuICAgICAgICBkZXBhcnRtZW50TGlzdDpbXSxcclxuICAgICAgICBsb2FkVHlwZTonbW9yZScsXHJcbiAgICAgICAgaXNTaG93Tm9EYXRhOmZhbHNlXHJcbiAgICAgIH0pXHJcbiAgICAgIGxldCBvYmogPSB7XHJcbiAgICAgICAga2V5V29yZHM6dGhpcy5kYXRhLmtleVdvcmRzLFxyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgbG9ja2VkOnRydWUsLy/lsIbopoHlvIDlp4vlj5HpgIHor7fmsYJcclxuICAgICAgfSlcclxuICAgICAgdHJ5e1xyXG4gICAgICAgIGxldCByZXM6YW55ID0gYXdhaXQgZ2V0U2VhcmNoRGVwdChvYmopXHJcbiAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgIGRlcGFydG1lbnRMaXN0OnJlcy5kYXRhLFxyXG4gICAgICAgICAgbG9ja2VkOmZhbHNlLFxyXG4gICAgICAgICAgbG9hZFR5cGU6J25vbmUnXHJcbiAgICAgICAgfSlcclxuICAgICAgICBpZih0aGlzLmRhdGEuZGVwYXJ0bWVudExpc3QubGVuZ3RoPT0wKXtcclxuICAgICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICAgIGxvYWRWaXNpYmxlOmZhbHNlLFxyXG4gICAgICAgICAgICBpc1Nob3dOb0RhdGE6dHJ1ZVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc29sZS5sb2coJ3JlcycscmVzKVxyXG4gICAgICB9Y2F0Y2h7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgIGxvY2tlZDpmYWxzZSxcclxuICAgICAgICAgIGxvYWRWaXNpYmxlOmZhbHNlXHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGdvSW5kZXgoZTphbnkpe1xyXG4gICAgICBpZihlLmN1cnJlbnRUYXJnZXQuZGF0YXNldC5rZXk9PScyJyl7XHJcbiAgICAgICAgd3gubmF2aWdhdGVUbyh7IFxyXG4gICAgICAgICAgdXJsOiBgL3N1YnBhZ2VzL29yZ2FuaXphdGlvbi9wYWdlcy9zdHJlZVVuZm9sZC9zdHJlZVVuZm9sZD9jb21tdW5pdHlJZD0ke2UuY3VycmVudFRhcmdldC5kYXRhc2V0LmlkfWBcclxuICAgICAgICB9KTtcclxuICAgICAgfWVsc2UgaWYoZS5jdXJyZW50VGFyZ2V0LmRhdGFzZXQua2V5PT0nMCcpe1xyXG4gICAgICAgIHd4Lm5hdmlnYXRlVG8oeyBcclxuICAgICAgICAgIHVybDogYC9zdWJwYWdlcy9vcmdhbml6YXRpb24vcGFnZXMvb3JnYW5pemF0aW9uU3RyZWUvb3JnYW5pemF0aW9uU3RyZWVgXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1lbHNlIGlmKGUuY3VycmVudFRhcmdldC5kYXRhc2V0LmtleT09JzEnKXtcclxuICAgICAgICB3eC5uYXZpZ2F0ZVRvKHsgXHJcbiAgICAgICAgICB1cmw6IGAvc3VicGFnZXMvb3JnYW5pemF0aW9uL3BhZ2VzL29yZ2FuaXphdGlvblN0cmVlL29yZ2FuaXphdGlvblN0cmVlP2lkPSR7ZS5jdXJyZW50VGFyZ2V0LmRhdGFzZXQuaWR9YFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgfSkiXX0=