|
(function() {
|
var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
|
var __module = nodeEnv ? module : {exports:{}};
|
var __filename = 'preview-scripts/assets/Scripts/mod/guildboss/view/guildboss_result_window.js';
|
var __require = nodeEnv ? function (request) {
|
return cc.require(request);
|
} : function (request) {
|
return __quick_compile_project__.require(request, __filename);
|
};
|
function __define (exports, require, module) {
|
if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict";
|
cc._RF.push(module, '800e1sREPxPi6rh566TQNtM', 'guildboss_result_window');
|
// Scripts/mod/guildboss/view/guildboss_result_window.js
|
|
"use strict";
|
|
// --------------------------------------------------------------------
|
// @author: xxx@syg.com(必填, 创建模块的人员)
|
// @description:
|
// 公会副本挑战结算面板
|
// <br/>Create: 2019-04-18 11:42:02
|
// --------------------------------------------------------------------
|
var PathTool = require("pathtool");
|
|
var GuildBossController = require("guildboss_controller");
|
|
var Guildboss_resultWindow = cc.Class({
|
"extends": BaseView,
|
ctor: function ctor() {
|
this.prefabPath = PathTool.getPrefabPath("guildboss", "guildboss_result_window");
|
this.viewTag = SCENE_TAG.dialogue; //该窗体所属ui层级,全屏ui需要在ui层,非全屏ui在dialogue层,这个要注意
|
|
this.win_type = WinType.Mini; //是否是全屏窗体 WinType.Full, WinType.Big, WinType.Mini, WinType.Tips
|
},
|
// 初始化一些配置数据,可以用于声明一些变量之类的
|
initConfig: function initConfig() {
|
this.ctrl = GuildBossController.getInstance();
|
this.label_list = [];
|
},
|
// 预制体加载完成之后的回调,可以在这里捕获相关节点或者组件
|
openCallBack: function openCallBack() {
|
this.background = this.seekChild("background");
|
this.background.scale = FIT_SCALE;
|
var container = this.seekChild("container");
|
this.title_container = this.seekChild("title_container");
|
this.special_sk = this.title_container.getComponent(sp.Skeleton); // this.dps_list_btn = this.seekChild("dps_list_btn");
|
|
this.harm_btn = this.seekChild("harm_btn"); // this.harm_btn
|
|
this.partner_item = ItemsPool.getInstance().getItem("hero_exhibition_item");
|
;
|
this.partner_item.setPosition(-200, 8);
|
this.partner_item.show();
|
this.partner_item.setParent(container);
|
this.dps_value_lb = this.seekChild("dps_value", cc.Label);
|
this.container = container;
|
},
|
// 注册事件监听的接口,不需要手动调用,如果是使用gcore.GlobalEvent监听,可以直接调用addGlobalEvent
|
registerEvent: function registerEvent() {
|
Utils.onTouchEnd(this.background, function () {
|
this.ctrl.openGuildbossResultWindow(false);
|
}.bind(this), 2); // Utils.onTouchEnd(this.dps_list_btn, function () {
|
// this.ctrl.openGuildbossResultDpsRankWindow(true, this.data)
|
// }.bind(this), 1)
|
|
Utils.onTouchEnd(this.harm_btn, function () {
|
if (this.data && Utils.next(this.data) != null) {
|
require("battle_controller").getInstance().openBattleHarmInfoView(true, this.data);
|
}
|
}.bind(this), 1);
|
},
|
// 预制体加载完成之后,添加到对应主节点之后的回调,也就是一个窗体的正式入口,可以设置一些数据了
|
openRootWnd: function openRootWnd(data) {
|
this.handleEffect(true);
|
|
if (data != null) {
|
this.data = data;
|
this.dps_value_lb.string = cc.js.formatStr(Utils.TI18N("总伤害:%s"), data.all_dps);
|
|
var hero_vo = require("hero_controller").getInstance().getModel().getHeroById(data.best_partner);
|
|
this.partner_item.setData(hero_vo);
|
this.createRewardsList(data.award_list);
|
this.harm_btn.active = true;
|
}
|
},
|
//创建奖励
|
createRewardsList: function createRewardsList(award_list) {
|
var _this = this;
|
|
if (award_list == null) return;
|
var _y = 0;
|
var item_config = null;
|
var index = 1;
|
var item_name = "";
|
|
for (var i in award_list) {
|
var v = award_list[i];
|
item_config = Utils.getItemConfig(v.bid);
|
|
if (item_config) {
|
var res;
|
|
(function () {
|
_y = 36 - (index - 1) * 50;
|
var rich_label = Utils.createRichLabel(24, new cc.Color(0x35, 0xff, 0x14, 0xff), cc.v2(0, 0.5), cc.v2(-100, _y), null, 500, _this.container);
|
rich_label.horizontalAlign = cc.macro.TextAlignment.LEFT;
|
|
if (item_config.id == Config.item_data.data_assets_label2id.guild) {
|
item_name = Utils.TI18N("贡献");
|
} else {
|
item_name = item_config.name;
|
}
|
|
rich_label.string = cc.js.formatStr("%s%s:<img src='%s' scale=0.4 /> +%s", Utils.TI18N("获得"), item_name, item_config.icon, v.num);
|
res = PathTool.getItemRes(item_config.icon);
|
|
_this.loadRes(res, function (resObject) {
|
rich_label.addSpriteFrame(resObject);
|
}.bind(_this));
|
|
index = index + 1;
|
|
_this.label_list.push(rich_label);
|
})();
|
}
|
}
|
},
|
handleEffect: function handleEffect(status) {
|
if (status == false) {
|
if (this.special_sk) {
|
this.special_sk.setToSetupPose();
|
this.special_sk.clearTracks();
|
}
|
} else {
|
if (this.special_sk) {
|
var res = cc.js.formatStr("spine/%s/action.atlas", PathTool.getEffectRes(103));
|
this.loadRes(res, function (res_object) {
|
this.special_sk.skeletonData = res_object;
|
this.special_sk.setAnimation(1, PlayerAction.action_2, false);
|
}.bind(this));
|
}
|
}
|
},
|
// 关闭窗体回调,需要在这里调用该窗体所属controller的close方法没用于置空该窗体实例对象
|
closeCallBack: function closeCallBack() {
|
this.ctrl.openGuildbossResultWindow(false);
|
this.handleEffect(false);
|
|
if (this.partner_item) {
|
this.partner_item.deleteMe();
|
this.partner_item = null;
|
}
|
|
if (this.label_list) {
|
for (var k in this.label_list) {
|
var v = this.label_list[k];
|
|
if (v) {
|
v.node.destroy();
|
v = null;
|
}
|
}
|
|
this.label_list = null;
|
}
|
}
|
});
|
|
cc._RF.pop();
|
}
|
if (nodeEnv) {
|
__define(__module.exports, __require, __module);
|
}
|
else {
|
__quick_compile_project__.registerModuleFunc(__filename, function () {
|
__define(__module.exports, __require, __module);
|
});
|
}
|
})();
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcbW9kXFxndWlsZGJvc3NcXHZpZXdcXGd1aWxkYm9zc19yZXN1bHRfd2luZG93LmpzIl0sIm5hbWVzIjpbIlBhdGhUb29sIiwicmVxdWlyZSIsIkd1aWxkQm9zc0NvbnRyb2xsZXIiLCJHdWlsZGJvc3NfcmVzdWx0V2luZG93IiwiY2MiLCJDbGFzcyIsIkJhc2VWaWV3IiwiY3RvciIsInByZWZhYlBhdGgiLCJnZXRQcmVmYWJQYXRoIiwidmlld1RhZyIsIlNDRU5FX1RBRyIsImRpYWxvZ3VlIiwid2luX3R5cGUiLCJXaW5UeXBlIiwiTWluaSIsImluaXRDb25maWciLCJjdHJsIiwiZ2V0SW5zdGFuY2UiLCJsYWJlbF9saXN0Iiwib3BlbkNhbGxCYWNrIiwiYmFja2dyb3VuZCIsInNlZWtDaGlsZCIsInNjYWxlIiwiRklUX1NDQUxFIiwiY29udGFpbmVyIiwidGl0bGVfY29udGFpbmVyIiwic3BlY2lhbF9zayIsImdldENvbXBvbmVudCIsInNwIiwiU2tlbGV0b24iLCJoYXJtX2J0biIsInBhcnRuZXJfaXRlbSIsIkl0ZW1zUG9vbCIsImdldEl0ZW0iLCJzZXRQb3NpdGlvbiIsInNob3ciLCJzZXRQYXJlbnQiLCJkcHNfdmFsdWVfbGIiLCJMYWJlbCIsInJlZ2lzdGVyRXZlbnQiLCJVdGlscyIsIm9uVG91Y2hFbmQiLCJvcGVuR3VpbGRib3NzUmVzdWx0V2luZG93IiwiYmluZCIsImRhdGEiLCJuZXh0Iiwib3BlbkJhdHRsZUhhcm1JbmZvVmlldyIsIm9wZW5Sb290V25kIiwiaGFuZGxlRWZmZWN0Iiwic3RyaW5nIiwianMiLCJmb3JtYXRTdHIiLCJUSTE4TiIsImFsbF9kcHMiLCJoZXJvX3ZvIiwiZ2V0TW9kZWwiLCJnZXRIZXJvQnlJZCIsImJlc3RfcGFydG5lciIsInNldERhdGEiLCJjcmVhdGVSZXdhcmRzTGlzdCIsImF3YXJkX2xpc3QiLCJhY3RpdmUiLCJfeSIsIml0ZW1fY29uZmlnIiwiaW5kZXgiLCJpdGVtX25hbWUiLCJpIiwidiIsImdldEl0ZW1Db25maWciLCJiaWQiLCJyZXMiLCJyaWNoX2xhYmVsIiwiY3JlYXRlUmljaExhYmVsIiwiQ29sb3IiLCJ2MiIsImhvcml6b250YWxBbGlnbiIsIm1hY3JvIiwiVGV4dEFsaWdubWVudCIsIkxFRlQiLCJpZCIsIkNvbmZpZyIsIml0ZW1fZGF0YSIsImRhdGFfYXNzZXRzX2xhYmVsMmlkIiwiZ3VpbGQiLCJuYW1lIiwiaWNvbiIsIm51bSIsImdldEl0ZW1SZXMiLCJsb2FkUmVzIiwicmVzT2JqZWN0IiwiYWRkU3ByaXRlRnJhbWUiLCJwdXNoIiwic3RhdHVzIiwic2V0VG9TZXR1cFBvc2UiLCJjbGVhclRyYWNrcyIsImdldEVmZmVjdFJlcyIsInJlc19vYmplY3QiLCJza2VsZXRvbkRhdGEiLCJzZXRBbmltYXRpb24iLCJQbGF5ZXJBY3Rpb24iLCJhY3Rpb25fMiIsImNsb3NlQ2FsbEJhY2siLCJkZWxldGVNZSIsImsiLCJub2RlIiwiZGVzdHJveSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJQSxRQUFRLEdBQUdDLE9BQU8sQ0FBQyxVQUFELENBQXRCOztBQUNBLElBQUlDLG1CQUFtQixHQUFHRCxPQUFPLENBQUMsc0JBQUQsQ0FBakM7O0FBRUEsSUFBSUUsc0JBQXNCLEdBQUdDLEVBQUUsQ0FBQ0MsS0FBSCxDQUFTO0FBQ2xDLGFBQVNDLFFBRHlCO0FBRWxDQyxFQUFBQSxJQUFJLEVBQUUsZ0JBQVk7QUFDZCxTQUFLQyxVQUFMLEdBQWtCUixRQUFRLENBQUNTLGFBQVQsQ0FBdUIsV0FBdkIsRUFBb0MseUJBQXBDLENBQWxCO0FBQ0EsU0FBS0MsT0FBTCxHQUFlQyxTQUFTLENBQUNDLFFBQXpCLENBRmMsQ0FFb0M7O0FBQ2xELFNBQUtDLFFBQUwsR0FBZ0JDLE9BQU8sQ0FBQ0MsSUFBeEIsQ0FIYyxDQUc4QjtBQUMvQyxHQU5pQztBQVFsQztBQUNBQyxFQUFBQSxVQUFVLEVBQUUsc0JBQVk7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LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBhdXRob3I6IHh4eEBzeWcuY29tKOW/heWhqywg5Yib5bu65qih5Z2X55qE5Lq65ZGYKVxuLy8gQGRlc2NyaXB0aW9uOlxuLy8gICAgIOWFrOS8muWJr+acrOaMkeaImOe7k+eul+mdouadv1xuLy8gPGJyLz5DcmVhdGU6IDIwMTktMDQtMTggMTE6NDI6MDJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG52YXIgUGF0aFRvb2wgPSByZXF1aXJlKFwicGF0aHRvb2xcIik7XG52YXIgR3VpbGRCb3NzQ29udHJvbGxlciA9IHJlcXVpcmUoXCJndWlsZGJvc3NfY29udHJvbGxlclwiKTtcblxudmFyIEd1aWxkYm9zc19yZXN1bHRXaW5kb3cgPSBjYy5DbGFzcyh7XG4gICAgZXh0ZW5kczogQmFzZVZpZXcsXG4gICAgY3RvcjogZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLnByZWZhYlBhdGggPSBQYXRoVG9vbC5nZXRQcmVmYWJQYXRoKFwiZ3VpbGRib3NzXCIsIFwiZ3VpbGRib3NzX3Jlc3VsdF93aW5kb3dcIik7XG4gICAgICAgIHRoaXMudmlld1RhZyA9IFNDRU5FX1RBRy5kaWFsb2d1ZTsgICAgICAgICAgICAgICAgLy/or6XnqpfkvZPmiYDlsZ51aeWxgue6pyzlhajlsY91aemcgOimgeWcqHVp5bGCLOmdnuWFqOWxj3Vp5ZyoZGlhbG9ndWXlsYIs6L+Z5Liq6KaB5rOo5oSPXG4gICAgICAgIHRoaXMud2luX3R5cGUgPSBXaW5UeXBlLk1pbmk7ICAgICAgICAgICAgICAgLy/mmK/lkKbmmK/lhajlsY/nqpfkvZMgIFdpblR5cGUuRnVsbCwgV2luVHlwZS5CaWcsIFdpblR5cGUuTWluaSwgV2luVHlwZS5UaXBzXG4gICAgfSxcblxuICAgIC8vIOWIneWni+WMluS4gOS6m+mFjee9ruaVsOaNrizlj6/ku6XnlKjkuo7lo7DmmI7kuIDkupvlj5jph4/kuYvnsbvnmoRcbiAgICBpbml0Q29uZmlnOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMuY3RybCA9IEd1aWxkQm9zc0NvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKTtcbiAgICAgICAgdGhpcy5sYWJlbF9saXN0ID0gW107XG4gICAgfSxcblxuICAgIC8vIOmihOWItuS9k+WKoOi9veWujOaIkOS5i+WQjueahOWbnuiwgyzlj6/ku6XlnKjov5nph4zmjZXojrfnm7jlhbPoioLngrnmiJbogIXnu4Tku7ZcbiAgICBvcGVuQ2FsbEJhY2s6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdGhpcy5iYWNrZ3JvdW5kID0gdGhpcy5zZWVrQ2hpbGQoXCJiYWNrZ3JvdW5kXCIpO1xuICAgICAgICB0aGlzLmJhY2tncm91bmQuc2NhbGUgPSBGSVRfU0NBTEU7XG4gICAgICAgIHZhciBjb250YWluZXIgPSB0aGlzLnNlZWtDaGlsZChcImNvbnRhaW5lclwiKTtcblxuICAgICAgICB0aGlzLnRpdGxlX2NvbnRhaW5lciA9IHRoaXMuc2Vla0NoaWxkKFwidGl0bGVfY29udGFpbmVyXCIpO1xuICAgICAgICB0aGlzLnNwZWNpYWxfc2sgPSB0aGlzLnRpdGxlX2NvbnRhaW5lci5nZXRDb21wb25lbnQoc3AuU2tlbGV0b24pO1xuXG4gICAgICAgIC8vIHRoaXMuZHBzX2xpc3RfYnRuID0gdGhpcy5zZWVrQ2hpbGQoXCJkcHNfbGlzdF9idG5cIik7XG4gICAgICAgIHRoaXMuaGFybV9idG4gPSB0aGlzLnNlZWtDaGlsZChcImhhcm1fYnRuXCIpO1xuICAgICAgICAvLyB0aGlzLmhhcm1fYnRuXG5cbiAgICAgICAgdGhpcy5wYXJ0bmVyX2l0ZW0gPSBJdGVtc1Bvb2wuZ2V0SW5zdGFuY2UoKS5nZXRJdGVtKFwiaGVyb19leGhpYml0aW9uX2l0ZW1cIik7O1xuICAgICAgICB0aGlzLnBhcnRuZXJfaXRlbS5zZXRQb3NpdGlvbigtMjAwLCA4KVxuICAgICAgICB0aGlzLnBhcnRuZXJfaXRlbS5zaG93KCk7XG4gICAgICAgIHRoaXMucGFydG5lcl9pdGVtLnNldFBhcmVudChjb250YWluZXIpO1xuXG4gICAgICAgIHRoaXMuZHBzX3ZhbHVlX2xiID0gdGhpcy5zZWVrQ2hpbGQoXCJkcHNfdmFsdWVcIiwgY2MuTGFiZWwpO1xuICAgICAgICB0aGlzLmNvbnRhaW5lciA9IGNvbnRhaW5lcjtcbiAgICB9LFxuXG4gICAgLy8g5rOo5YaM5LqL5Lu255uR5ZCs55qE5o6l5Y+jLOS4jemcgOimgeaJi+WKqOiwg+eUqCzlpoLmnpzmmK/kvb/nlKhnY29yZS5HbG9iYWxFdmVudOebkeWQrCzlj6/ku6Xnm7TmjqXosIPnlKhhZGRHbG9iYWxFdmVudFxuICAgIHJlZ2lzdGVyRXZlbnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgVXRpbHMub25Ub3VjaEVuZCh0aGlzLmJhY2tncm91bmQsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHRoaXMuY3RybC5vcGVuR3VpbGRib3NzUmVzdWx0V2luZG93KGZhbHNlKVxuICAgICAgICB9LmJpbmQodGhpcyksIDIpXG4gICAgICAgIC8vIFV0aWxzLm9uVG91Y2hFbmQodGhpcy5kcHNfbGlzdF9idG4sIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgLy8gICAgIHRoaXMuY3RybC5vcGVuR3VpbGRib3NzUmVzdWx0RHBzUmFua1dpbmRvdyh0cnVlLCB0aGlzLmRhdGEpXG4gICAgICAgIC8vIH0uYmluZCh0aGlzKSwgMSlcbiAgICAgICAgVXRpbHMub25Ub3VjaEVuZCh0aGlzLmhhcm1fYnRuLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5kYXRhICYmIFV0aWxzLm5leHQodGhpcy5kYXRhKSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgcmVxdWlyZShcImJhdHRsZV9jb250cm9sbGVyXCIpLmdldEluc3RhbmNlKCkub3BlbkJhdHRsZUhhcm1JbmZvVmlldyh0cnVlLCB0aGlzLmRhdGEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LmJpbmQodGhpcyksIDEpXG4gICAgfSxcblxuICAgIC8vIOmihOWItuS9k+WKoOi9veWujOaIkOS5i+WQjizmt7vliqDliLDlr7nlupTkuLvoioLngrnkuYvlkI7nmoTlm57osIMs5Lmf5bCx5piv5LiA5Liq56qX5L2T55qE5q2j5byP5YWl5Y+jLOWPr+S7peiuvue9ruS4gOS6m+aVsOaNruS6hlxuICAgIG9wZW5Sb290V25kOiBmdW5jdGlvbiAoZGF0YSkge1xuICAgICAgICB0aGlzLmhhbmRsZUVmZmVjdCh0cnVlKTtcbiAgICAgICAgaWYgKGRhdGEgIT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICAgICAgICAgIHRoaXMuZHBzX3ZhbHVlX2xiLnN0cmluZyA9IGNjLmpzLmZvcm1hdFN0cihVdGlscy5USTE4TihcIuaAu+S8pOWus++8miVzXCIpLCBkYXRhLmFsbF9kcHMpO1xuICAgICAgICAgICAgdmFyIGhlcm9fdm8gPSByZXF1aXJlKFwiaGVyb19jb250cm9sbGVyXCIpLmdldEluc3RhbmNlKCkuZ2V0TW9kZWwoKS5nZXRIZXJvQnlJZChkYXRhLmJlc3RfcGFydG5lcik7XG4gICAgICAgICAgICB0aGlzLnBhcnRuZXJfaXRlbS5zZXREYXRhKGhlcm9fdm8pO1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVSZXdhcmRzTGlzdChkYXRhLmF3YXJkX2xpc3QpO1xuICAgICAgICAgICAgdGhpcy5oYXJtX2J0bi5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfSxcblxuICAgIC8v5Yib5bu65aWW5YqxXG4gICAgY3JlYXRlUmV3YXJkc0xpc3Q6IGZ1bmN0aW9uIChhd2FyZF9saXN0KSB7XG4gICAgICAgIGlmIChhd2FyZF9saXN0ID09IG51bGwpIHJldHVyblxuICAgICAgICB2YXIgX3kgPSAwO1xuICAgICAgICB2YXIgaXRlbV9jb25maWcgPSBudWxsO1xuICAgICAgICB2YXIgaW5kZXggPSAxO1xuICAgICAgICB2YXIgaXRlbV9uYW1lID0gXCJcIjtcbiAgICAgICAgZm9yICh2YXIgaSBpbiBhd2FyZF9saXN0KSB7XG4gICAgICAgICAgICB2YXIgdiA9IGF3YXJkX2xpc3RbaV07XG4gICAgICAgICAgICBpdGVtX2NvbmZpZyA9IFV0aWxzLmdldEl0ZW1Db25maWcodi5iaWQpO1xuICAgICAgICAgICAgaWYgKGl0ZW1fY29uZmlnKSB7XG4gICAgICAgICAgICAgICAgX3kgPSAzNiAtIChpbmRleCAtIDEpICogNTA7XG4gICAgICAgICAgICAgICAgY29uc3QgcmljaF9sYWJlbCA9IFV0aWxzLmNyZWF0ZVJpY2hMYWJlbCgyNCwgbmV3IGNjLkNvbG9yKDB4MzUsMHhmZiwweDE0LDB4ZmYpLCBjYy52MigwLCAwLjUpLCBjYy52MigtMTAwLCBfeSksIG51bGwsIDUwMCwgdGhpcy5jb250YWluZXIpO1xuICAgICAgICAgICAgICAgIHJpY2hfbGFiZWwuaG9yaXpvbnRhbEFsaWduID0gY2MubWFjcm8uVGV4dEFsaWdubWVudC5MRUZUO1xuICAgICAgICAgICAgICAgIGlmIChpdGVtX2NvbmZpZy5pZCA9PSBDb25maWcuaXRlbV9kYXRhLmRhdGFfYXNzZXRzX2xhYmVsMmlkLmd1aWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW1fbmFtZSA9IFV0aWxzLlRJMThOKFwi6LSh54yuXCIpXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaXRlbV9uYW1lID0gaXRlbV9jb25maWcubmFtZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmljaF9sYWJlbC5zdHJpbmcgPSBjYy5qcy5mb3JtYXRTdHIoXCIlcyVz77yaPGltZyBzcmM9JyVzJyBzY2FsZT0wLjQgLz4gKyVzXCIsIFV0aWxzLlRJMThOKFwi6I635b6XXCIpLCBpdGVtX25hbWUsIGl0ZW1fY29uZmlnLmljb24sIHYubnVtKTtcbiAgICAgICAgICAgICAgICB2YXIgcmVzID0gUGF0aFRvb2wuZ2V0SXRlbVJlcyhpdGVtX2NvbmZpZy5pY29uKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRSZXMocmVzLCAoZnVuY3Rpb24gKHJlc09iamVjdCkge1xuICAgICAgICAgICAgICAgICAgICByaWNoX2xhYmVsLmFkZFNwcml0ZUZyYW1lKHJlc09iamVjdCk7XG4gICAgICAgICAgICAgICAgfSkuYmluZCh0aGlzKSk7XG4gICAgICAgICAgICAgICAgaW5kZXggPSBpbmRleCArIDE7XG4gICAgICAgICAgICAgICAgdGhpcy5sYWJlbF9saXN0LnB1c2gocmljaF9sYWJlbClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBoYW5kbGVFZmZlY3Q6IGZ1bmN0aW9uIChzdGF0dXMpIHtcbiAgICAgICAgaWYgKHN0YXR1cyA9PSBmYWxzZSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuc3BlY2lhbF9zaykge1xuICAgICAgICAgICAgICAgIHRoaXMuc3BlY2lhbF9zay5zZXRUb1NldHVwUG9zZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuc3BlY2lhbF9zay5jbGVhclRyYWNrcygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMuc3BlY2lhbF9zaykge1xuICAgICAgICAgICAgICAgIHZhciByZXMgPSBjYy5qcy5mb3JtYXRTdHIoXCJzcGluZS8lcy9hY3Rpb24uYXRsYXNcIiwgUGF0aFRvb2wuZ2V0RWZmZWN0UmVzKDEwMykpXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkUmVzKHJlcywgZnVuY3Rpb24gKHJlc19vYmplY3QpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zcGVjaWFsX3NrLnNrZWxldG9uRGF0YSA9IHJlc19vYmplY3Q7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3BlY2lhbF9zay5zZXRBbmltYXRpb24oMSwgUGxheWVyQWN0aW9uLmFjdGlvbl8yLCBmYWxzZSlcbiAgICAgICAgICAgICAgICB9LmJpbmQodGhpcykpXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgLy8g5YWz6Zet56qX5L2T5Zue6LCDLOmcgOimgeWcqOi/memHjOiwg+eUqOivpeeql+S9k+aJgOWxnmNvbnRyb2xsZXLnmoRjbG9zZeaWueazleayoeeUqOS6jue9ruepuuivpeeql+S9k+WunuS+i+WvueixoVxuICAgIGNsb3NlQ2FsbEJhY2s6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdGhpcy5jdHJsLm9wZW5HdWlsZGJvc3NSZXN1bHRXaW5kb3coZmFsc2UpXG4gICAgICAgIHRoaXMuaGFuZGxlRWZmZWN0KGZhbHNlKVxuICAgICAgICBpZiAodGhpcy5wYXJ0bmVyX2l0ZW0pIHtcbiAgICAgICAgICAgIHRoaXMucGFydG5lcl9pdGVtLmRlbGV0ZU1lKCk7XG4gICAgICAgICAgICB0aGlzLnBhcnRuZXJfaXRlbSA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYodGhpcy5sYWJlbF9saXN0KXtcbiAgICAgICAgICAgIGZvcih2YXIgayBpbiB0aGlzLmxhYmVsX2xpc3Qpe1xuICAgICAgICAgICAgICAgIHZhciB2ID0gdGhpcy5sYWJlbF9saXN0W2tdO1xuICAgICAgICAgICAgICAgIGlmKHYpe1xuICAgICAgICAgICAgICAgICAgICB2Lm5vZGUuZGVzdHJveSgpO1xuICAgICAgICAgICAgICAgICAgICB2ID0gbnVsbFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMubGFiZWxfbGlzdCA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9LFxufSkiXX0=
|