(function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; var __filename = 'preview-scripts/assets/Scripts/mod/esecsice/view/esecsice_item.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, '04b23lOWsxAVaKTrIjCrC7f', 'esecsice_item'); // Scripts/mod/esecsice/view/esecsice_item.js "use strict"; // -------------------------------------------------------------------- // @author: xxx@syg.com(必填, 创建模块的人员) // @description: // 这里是描述这个窗体的作用的 //
Create: 2019-01-07 17:18:12 // -------------------------------------------------------------------- var PathTool = require("pathtool"); var EsecsiceController = require("esecsice_controller"); var EsecsiceItem = cc.Class({ "extends": BasePanel, ctor: function ctor() { this.prefabPath = PathTool.getPrefabPath("esercise", "esercise_item"); }, // 可以初始化声明一些变量的 initConfig: function initConfig() { this.listReward = {}; }, // 初始化一些配置数据,可以用于声明一些变量之类的 initPanel: function initPanel() { this.main_container = this.root_wnd.getChildByName("main_container"); this.itemBG_node = this.main_container.getChildByName("itemBG"); // this.itemBG_node.scale = 2; this.itemBG = this.itemBG_node.getComponent(cc.Sprite); this.redPoint = this.main_container.getChildByName("redPoint"); this.redPoint.active = false; this.limitMask = this.main_container.getChildByName("limitMask"); this.limitMask.zIndex = 10; this.textLimitLev = this.main_container.getChildByName("textLimitLev").getComponent(cc.Label); this.textLimitLev.string = ""; this.textLimitLev.node.zIndex = 10; this.textLimitLev.node.active = false; this.textTimeStart = this.main_container.getChildByName("textTimeStart").getComponent(cc.Label); this.textTimeStart.string = ""; this.textTimeStart.node.active = false; }, // 注册事件监听的接口,不需要手动调用,如果是使用gcore.GlobalEvent监听,可以直接调用addGlobalEvent registerEvent: function registerEvent() { this.main_container.on(cc.Node.EventType.TOUCH_END, function (event) { if (this.limitMask.active) { // message(this.data.lock_desc); return; } EsecsiceController.getInstance().switchEcecsiceActivityView(this.data.goto_id); }, this); }, // 预制体加载完成之后,添加到对应主节点之后的回调可以设置一些数据了 onShow: function onShow(params) { if (!this.data) { return; } this.main_container.name = "guide_activity_item_" + this.data.id; this.loadRes(PathTool.getActivityBig(this.data.pic_name), function (resObject) { this.itemBG.spriteFrame = resObject; }.bind(this)); if (this.data.desc) { this.textTimeStart.string = this.data.desc; this.textTimeStart.node.active = true; } if (this.data.is_open == 1) { this.textLimitLev.string = this.data.lock_desc; var MainuiController = require("mainui_controller"); var bool = MainuiController.getInstance().checkIsOpenByActivate(this.data.activate); if (bool) { this.limitMask.active = false; this.textLimitLev.node.active = false; } else { this.limitMask.active = true; this.textLimitLev.node.active = true; } } else { this.limitMask.active = true; this.textLimitLev.node.active = true; } for (var i in this.data.val[0]) { var bid = this.data.val[0][i]; var item = this.listReward[i]; if (!item) { item = ItemsPool.getInstance().getItem("backpack_item"); this.listReward[i] = item; item.setParent(this.main_container); item.initConfig(null, 0.5, false, true); } item.setPosition(80 * i - 260, -40); item.setData(bid); item.show(); } this.updateRedStatus(); }, // 设置显示数据 setData: function setData(data) { this.data = data; }, // 面板设置不可见的回调,这里做一些不可见的屏蔽处理 onHide: function onHide() {}, updateRedStatus: function updateRedStatus() { if (this.data && this.redPoint) { var red_status = false; var EsecsiceConst = require("esecsice_const"); if (this.data.id == EsecsiceConst.execsice_index.endless) { //日常副本 var Stone_dungeonController = require("stone_dungeon_controller"); red_status = Stone_dungeonController.getInstance().getModel().checkRedStatus(); } else if (this.data.id == EsecsiceConst.execsice_index.stonedungeon) { //无尽试炼 var Endless_trailController = require("endless_trail_controller"); red_status = Endless_trailController.getInstance().getModel().checkRedStatus(); } else if (this.data.id == EsecsiceConst.execsice_index.honourfane) { //神殿 var PrimusController = require("primus_controller"); red_status = PrimusController.getInstance().getModel().checkRedStatus(); } else if (this.data.id == EsecsiceConst.execsice_index.heroexpedit) { //远征 var HeroExpeditController = require("heroexpedit_controller"); red_status = HeroExpeditController.getInstance().getModel().checkRedStatus(); } this.redPoint.active = red_status; } }, // 当面板从主节点释放掉的调用接口,需要手动调用,而且也一定要调用 onDelete: function onDelete() { for (var k in this.listReward) { this.listReward[k].deleteMe(); } this.listReward = 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcbW9kXFxlc2Vjc2ljZVxcdmlld1xcZXNlY3NpY2VfaXRlbS5qcyJdLCJuYW1lcyI6WyJQYXRoVG9vbCIsInJlcXVpcmUiLCJFc2Vjc2ljZUNvbnRyb2xsZXIiLCJFc2Vjc2ljZUl0ZW0iLCJjYyIsIkNsYXNzIiwiQmFzZVBhbmVsIiwiY3RvciIsInByZWZhYlBhdGgiLCJnZXRQcmVmYWJQYXRoIiwiaW5pdENvbmZpZyIsImxpc3RSZXdhcmQiLCJpbml0UGFuZWwiLCJtYWluX2NvbnRhaW5lciIsInJvb3Rfd25kIiwiZ2V0Q2hpbGRCeU5hbWUiLCJpdGVtQkdfbm9kZSIsIml0ZW1CRyIsImdldENvbXBvbmVudCIsIlNwcml0ZSIsInJlZFBvaW50IiwiYWN0aXZlIiwibGltaXRNYXNrIiwiekluZGV4IiwidGV4dExpbWl0TGV2IiwiTGFiZWwiLCJzdHJpbmciLCJub2RlIiwidGV4dFRpbWVTdGFydCIsInJlZ2lzdGVyRXZlbnQiLCJvbiIsIk5vZGUiLCJFdmVudFR5cGUiLCJUT1VDSF9FTkQiLCJldmVudCIsImdldEluc3RhbmNlIiwic3dpdGNoRWNlY3NpY2VBY3Rpdml0eVZpZXciLCJkYXRhIiwiZ290b19pZCIsIm9uU2hvdyIsInBhcmFtcyIsIm5hbWUiLCJpZCIsImxvYWRSZXMiLCJnZXRBY3Rpdml0eUJpZyIsInBpY19uYW1lIiwicmVzT2JqZWN0Iiwic3ByaXRlRnJhbWUiLCJiaW5kIiwiZGVzYyIsImlzX29wZW4iLCJsb2NrX2Rlc2MiLCJNYWludWlDb250cm9sbGVyIiwiYm9vbCIsImNoZWNrSXNPcGVuQnlBY3RpdmF0ZSIsImFjdGl2YXRlIiwiaSIsInZhbCIsImJpZCIsIml0ZW0iLCJJdGVtc1Bvb2wiLCJnZXRJdGVtIiwic2V0UGFyZW50Iiwic2V0UG9zaXRpb24iLCJzZXREYXRhIiwic2hvdyIsInVwZGF0ZVJlZFN0YXR1cyIsIm9uSGlkZSIsInJlZF9zdGF0dXMiLCJFc2Vjc2ljZUNvbnN0IiwiZXhlY3NpY2VfaW5kZXgiLCJlbmRsZXNzIiwiU3RvbmVfZHVuZ2VvbkNvbnRyb2xsZXIiLCJnZXRNb2RlbCIsImNoZWNrUmVkU3RhdHVzIiwic3RvbmVkdW5nZW9uIiwiRW5kbGVzc190cmFpbENvbnRyb2xsZXIiLCJob25vdXJmYW5lIiwiUHJpbXVzQ29udHJvbGxlciIsImhlcm9leHBlZGl0IiwiSGVyb0V4cGVkaXRDb250cm9sbGVyIiwib25EZWxldGUiLCJrIiwiZGVsZXRlTWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSUEsUUFBUSxHQUFHQyxPQUFPLENBQUMsVUFBRCxDQUF0Qjs7QUFDQSxJQUFJQyxrQkFBa0IsR0FBR0QsT0FBTyxDQUFDLHFCQUFELENBQWhDOztBQUNBLElBQUlFLFlBQVksR0FBR0MsRUFBRSxDQUFDQyxLQUFILENBQVM7QUFDeEIsYUFBU0MsU0FEZTtBQUV4QkMsRUFBQUEsSUFBSSxFQUFFLGdCQUFZO0FBQ2QsU0FBS0MsVUFBTCxHQUFrQlIsUUFBUSxDQUFDUyxhQUFULENBQXVCLFVBQXZCLEVBQW1DLGVBQW5DLENBQWxCO0FBQ0gsR0FKdUI7QUFNeEI7QUFDQUMsRUFBQUEsVUFBVSxFQUFDLHNCQUFVO0FBQ2pCLFNBQUtDLFVBQUwsR0FBa0IsRUFBbEI7QUFDSCxHQVR1QjtBQVd4QjtBQUNBQyxFQUFBQSxTQUFTLEVBQUMscUJBQVU7QUFDaEIsU0FBS0MsY0FBTCxHQUFzQixLQUFLQyxRQUFMLENBQWNDLGNBQWQsQ0FBNkIsZ0JBQTdCLENBQXRCO0FBQ0EsU0FBS0MsV0FBTCxHQUFtQixLQUFLSCxjQUFMLENBQW9CRSxjQUFwQixDQUFtQyxRQUFuQyxDQUFuQixDQUZnQixDQUdoQjs7QUFDQSxTQUFLRSxNQUFMLEdBQWMsS0FBS0QsV0FBTCxDQUFpQkUsWUFBakIsQ0FBOEJkLEVBQUUsQ0FBQ2UsTUFBakMsQ0FBZDtBQUNBLFNBQUtDLFFBQUwsR0FBZ0IsS0FBS1AsY0FBTCxDQUFvQkUsY0FBcEIsQ0FB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QSxJQUFHLEtBQUtyQyxJQUFMLENBQVVLLEVBQVYsSUFBZ0IyQixhQUFhLENBQUNDLGNBQWQsQ0FBNkJTLFdBQWhELEVBQTREO0FBQUM7QUFDL0QsWUFBSUMscUJBQXFCLEdBQUcvRSxPQUFPLENBQUMsd0JBQUQsQ0FBbkM7O0FBQ0FtRSxRQUFBQSxVQUFVLEdBQUdZLHFCQUFxQixDQUFDN0MsV0FBdEIsR0FBb0NzQyxRQUFwQyxHQUErQ0MsY0FBL0MsRUFBYjtBQUNIOztBQUNELFdBQUt0RCxRQUFMLENBQWNDLE1BQWQsR0FBdUIrQyxVQUF2QjtBQUNIO0FBQ0osR0FySHVCO0FBdUh4QjtBQUNBYSxFQUFBQSxRQUFRLEVBQUMsb0JBQVU7QUFDZixTQUFJLElBQUlDLENBQVIsSUFBYSxLQUFLdkUsVUFBbEIsRUFBNkI7QUFDekIsV0FBS0EsVUFBTCxDQUFnQnVFLENBQWhCLEVBQW1CQyxRQUFuQjtBQUNIOztBQUNELFNBQUt4RSxVQUFMLEdBQWtCLElBQWxCO0FBQ0g7QUE3SHVCLENBQVQsQ0FBbkIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBAYXV0aG9yOiB4eHhAc3lnLmNvbSjlv4XloassIOWIm+W7uuaooeWdl+eahOS6uuWRmClcbi8vIEBkZXNjcmlwdGlvbjpcbi8vICAgICDov5nph4zmmK/mj4/ov7Dov5nkuKrnqpfkvZPnmoTkvZznlKjnmoRcbi8vIDxici8+Q3JlYXRlOiAyMDE5LTAxLTA3IDE3OjE4OjEyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxudmFyIFBhdGhUb29sID0gcmVxdWlyZShcInBhdGh0b29sXCIpO1xudmFyIEVzZWNzaWNlQ29udHJvbGxlciA9IHJlcXVpcmUoXCJlc2Vjc2ljZV9jb250cm9sbGVyXCIpO1xudmFyIEVzZWNzaWNlSXRlbSA9IGNjLkNsYXNzKHtcbiAgICBleHRlbmRzOiBCYXNlUGFuZWwsXG4gICAgY3RvcjogZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLnByZWZhYlBhdGggPSBQYXRoVG9vbC5nZXRQcmVmYWJQYXRoKFwiZXNlcmNpc2VcIiwgXCJlc2VyY2lzZV9pdGVtXCIpO1xuICAgIH0sXG5cbiAgICAvLyDlj6/ku6XliJ3lp4vljJblo7DmmI7kuIDkupvlj5jph4/nmoRcbiAgICBpbml0Q29uZmlnOmZ1bmN0aW9uKCl7XG4gICAgICAgIHRoaXMubGlzdFJld2FyZCA9IHt9O1xuICAgIH0sXG5cbiAgICAvLyDliJ3lp4vljJbkuIDkupvphY3nva7mlbDmja4s5Y+v5Lul55So5LqO5aOw5piO5LiA5Lqb5Y+Y6YeP5LmL57G755qEXG4gICAgaW5pdFBhbmVsOmZ1bmN0aW9uKCl7XG4gICAgICAgIHRoaXMubWFpbl9jb250YWluZXIgPSB0aGlzLnJvb3Rfd25kLmdldENoaWxkQnlOYW1lKFwibWFpbl9jb250YWluZXJcIik7XG4gICAgICAgIHRoaXMuaXRlbUJHX25vZGUgPSB0aGlzLm1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwiaXRlbUJHXCIpO1xuICAgICAgICAvLyB0aGlzLml0ZW1CR19ub2RlLnNjYWxlID0gMjtcbiAgICAgICAgdGhpcy5pdGVtQkcgPSB0aGlzLml0ZW1CR19ub2RlLmdldENvbXBvbmVudChjYy5TcHJpdGUpO1xuICAgICAgICB0aGlzLnJlZFBvaW50ID0gdGhpcy5tYWluX2NvbnRhaW5lci5nZXRDaGlsZEJ5TmFtZShcInJlZFBvaW50XCIpO1xuICAgICAgICB0aGlzLnJlZFBvaW50LmFjdGl2ZSA9IGZhbHNlO1xuXG4gICAgICAgIHRoaXMubGltaXRNYXNrID0gdGhpcy5tYWluX2NvbnRhaW5lci5nZXRDaGlsZEJ5TmFtZShcImxpbWl0TWFza1wiKTtcbiAgICAgICAgdGhpcy5saW1pdE1hc2suekluZGV4ID0gMTA7XG4gICAgICAgIHRoaXMudGV4dExpbWl0TGV2ID0gdGhpcy5tYWluX2NvbnRhaW5lci5nZXRDaGlsZEJ5TmFtZShcInRleHRMaW1pdExldlwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpO1xuICAgICAgICB0aGlzLnRleHRMaW1pdExldi5zdHJpbmcgPSBcIlwiO1xuICAgICAgICB0aGlzLnRleHRMaW1pdExldi5ub2RlLnpJbmRleCA9IDEwO1xuICAgICAgICB0aGlzLnRleHRMaW1pdExldi5ub2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnRleHRUaW1lU3RhcnQgPSB0aGlzLm1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwidGV4dFRpbWVTdGFydFwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpO1xuICAgICAgICB0aGlzLnRleHRUaW1lU3RhcnQuc3RyaW5nID0gXCJcIjtcbiAgICAgICAgdGhpcy50ZXh0VGltZVN0YXJ0Lm5vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgfSxcblxuICAgIC8vIOazqOWGjOS6i+S7tuebkeWQrOeahOaOpeWPoyzkuI3pnIDopoHmiYvliqjosIPnlKgs5aaC5p6c5piv5L2/55SoZ2NvcmUuR2xvYmFsRXZlbnTnm5HlkKws5Y+v5Lul55u05o6l6LCD55SoYWRkR2xvYmFsRXZlbnRcbiAgICByZWdpc3RlckV2ZW50OmZ1bmN0aW9uKCl7XG4gICAgICAgIHRoaXMubWFpbl9jb250YWluZXIub24oY2MuTm9kZS5FdmVudFR5cGUuVE9VQ0hfRU5ELCBmdW5jdGlvbihldmVudCl7XG4gICAgICAgICAgICBpZih0aGlzLmxpbWl0TWFzay5hY3RpdmUpe1xuICAgICAgICAgICAgICAgIC8vIG1lc3NhZ2UodGhpcy5kYXRhLmxvY2tfZGVzYyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgRXNlY3NpY2VDb250cm9sbGVyLmdldEluc3RhbmNlKCkuc3dpdGNoRWNlY3NpY2VBY3Rpdml0eVZpZXcodGhpcy5kYXRhLmdvdG9faWQpO1xuICAgICAgICB9LCB0aGlzKTtcbiAgICB9LFxuXG4gICAgLy8g6aKE5Yi25L2T5Yqg6L295a6M5oiQ5LmL5ZCOLOa3u+WKoOWIsOWvueW6lOS4u+iKgueCueS5i+WQjueahOWbnuiwg+WPr+S7peiuvue9ruS4gOS6m+aVsOaNruS6hlxuICAgIG9uU2hvdzpmdW5jdGlvbihwYXJhbXMpe1xuICAgICAgICBpZighdGhpcy5kYXRhKXtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubWFpbl9jb250YWluZXIubmFtZSA9IFwiZ3VpZGVfYWN0aXZpdHlfaXRlbV9cIiArIHRoaXMuZGF0YS5pZDtcblxuICAgICAgICB0aGlzLmxvYWRSZXMoUGF0aFRvb2wuZ2V0QWN0aXZpdHlCaWcodGhpcy5kYXRhLnBpY19uYW1lKSwgKGZ1bmN0aW9uKHJlc09iamVjdCl7XG4gICAgICAgICAgICB0aGlzLml0ZW1CRy5zcHJpdGVGcmFtZSA9IHJlc09iamVjdDtcbiAgICAgICAgfSkuYmluZCh0aGlzKSk7XG4gICAgICAgIGlmKHRoaXMuZGF0YS5kZXNjKXtcbiAgICAgICAgICAgIHRoaXMudGV4dFRpbWVTdGFydC5zdHJpbmcgPSB0aGlzLmRhdGEuZGVzYztcbiAgICAgICAgICAgIHRoaXMudGV4dFRpbWVTdGFydC5ub2RlLmFjdGl2ZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYodGhpcy5kYXRhLmlzX29wZW4gPT0gMSl7XG4gICAgICAgICAgICB0aGlzLnRleHRMaW1pdExldi5zdHJpbmcgPSB0aGlzLmRhdGEubG9ja19kZXNjO1xuICAgICAgICAgICAgdmFyIE1haW51aUNvbnRyb2xsZXIgPSByZXF1aXJlKFwibWFpbnVpX2NvbnRyb2xsZXJcIik7XG4gICAgICAgICAgICB2YXIgYm9vbCA9IE1haW51aUNvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKS5jaGVja0lzT3BlbkJ5QWN0aXZhdGUodGhpcy5kYXRhLmFjdGl2YXRlKTtcbiAgICAgICAgICAgIGlmKGJvb2wpe1xuICAgICAgICAgICAgICAgIHRoaXMubGltaXRNYXNrLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHRoaXMudGV4dExpbWl0TGV2Lm5vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgICB9ZWxzZXtcbiAgICAgICAgICAgICAgICB0aGlzLmxpbWl0TWFzay5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMudGV4dExpbWl0TGV2Lm5vZGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICB0aGlzLmxpbWl0TWFzay5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy50ZXh0TGltaXRMZXYubm9kZS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGZvcihsZXQgaSBpbiB0aGlzLmRhdGEudmFsWzBdKXtcbiAgICAgICAgICAgIGxldCBiaWQgPSB0aGlzLmRhdGEudmFsWzBdW2ldO1xuICAgICAgICAgICAgbGV0IGl0ZW0gPSB0aGlzLmxpc3RSZXdhcmRbaV07XG4gICAgICAgICAgICBpZighaXRlbSl7XG4gICAgICAgICAgICAgICAgaXRlbSA9IEl0ZW1zUG9vbC5nZXRJbnN0YW5jZSgpLmdldEl0ZW0oXCJiYWNrcGFja19pdGVtXCIpO1xuICAgICAgICAgICAgICAgIHRoaXMubGlzdFJld2FyZFtpXSA9IGl0ZW07IFxuICAgICAgICAgICAgICAgIGl0ZW0uc2V0UGFyZW50KHRoaXMubWFpbl9jb250YWluZXIpO1xuICAgICAgICAgICAgICAgIGl0ZW0uaW5pdENvbmZpZyhudWxsLCAwLjUsIGZhbHNlLCB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGl0ZW0uc2V0UG9zaXRpb24oODAgKiBpIC0gMjYwLCAtNDApO1xuICAgICAgICAgICAgaXRlbS5zZXREYXRhKGJpZCk7XG4gICAgICAgICAgICBpdGVtLnNob3coKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnVwZGF0ZVJlZFN0YXR1cygpO1xuICAgIH0sXG5cbiAgICAvLyDorr7nva7mmL7npLrmlbDmja5cbiAgICBzZXREYXRhOmZ1bmN0aW9uKGRhdGEpe1xuICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICAgIH0sXG5cbiAgICAvLyDpnaLmnb/orr7nva7kuI3lj6/op4HnmoTlm57osIMs6L+Z6YeM5YGa5LiA5Lqb5LiN5Y+v6KeB55qE5bGP6JS95aSE55CGXG4gICAgb25IaWRlOmZ1bmN0aW9uKCl7XG5cbiAgICB9LFxuXG4gICAgdXBkYXRlUmVkU3RhdHVzOmZ1bmN0aW9uKCl7XG4gICAgICAgIGlmKHRoaXMuZGF0YSAmJiB0aGlzLnJlZFBvaW50KXtcbiAgICAgICAgICAgIHZhciByZWRfc3RhdHVzID0gZmFsc2U7XG4gICAgICAgICAgICB2YXIgRXNlY3NpY2VDb25zdCA9IHJlcXVpcmUoXCJlc2Vjc2ljZV9jb25zdFwiKTtcbiAgICAgICAgICAgIGlmKHRoaXMuZGF0YS5pZCA9PSBFc2Vjc2ljZUNvbnN0LmV4ZWNzaWNlX2luZGV4LmVuZGxlc3Mpey8v5pel5bi45Ymv5pysXG4gICAgICAgICAgICAgICAgdmFyIFN0b25lX2R1bmdlb25Db250cm9sbGVyID0gcmVxdWlyZShcInN0b25lX2R1bmdlb25fY29udHJvbGxlclwiKTtcbiAgICAgICAgICAgICAgICByZWRfc3RhdHVzID0gU3RvbmVfZHVuZ2VvbkNvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKS5nZXRNb2RlbCgpLmNoZWNrUmVkU3RhdHVzKClcbiAgICAgICAgICAgIH1lbHNlIGlmKHRoaXMuZGF0YS5pZCA9PSBFc2Vjc2ljZUNvbnN0LmV4ZWNzaWNlX2luZGV4LnN0b25lZHVuZ2Vvbil7Ly/ml6DlsL3or5XngrxcbiAgICAgICAgICAgICAgICB2YXIgRW5kbGVzc190cmFpbENvbnRyb2xsZXIgPSByZXF1aXJlKFwiZW5kbGVzc190cmFpbF9jb250cm9sbGVyXCIpO1xuICAgICAgICAgICAgICAgIHJlZF9zdGF0dXMgPSBFbmRsZXNzX3RyYWlsQ29udHJvbGxlci5nZXRJbnN0YW5jZSgpLmdldE1vZGVsKCkuY2hlY2tSZWRTdGF0dXMoKTtcbiAgICAgICAgICAgIH1lbHNlIGlmKHRoaXMuZGF0YS5pZCA9PSBFc2Vjc2ljZUNvbnN0LmV4ZWNzaWNlX2luZGV4Lmhvbm91cmZhbmUpey8v56We5q6/XG4gICAgICAgICAgICAgICAgdmFyIFByaW11c0NvbnRyb2xsZXIgPSByZXF1aXJlKFwicHJpbXVzX2NvbnRyb2xsZXJcIik7XG4gICAgICAgICAgICAgICAgcmVkX3N0YXR1cyA9IFByaW11c0NvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKS5nZXRNb2RlbCgpLmNoZWNrUmVkU3RhdHVzKCk7XG4gICAgICAgICAgICB9ZWxzZSBpZih0aGlzLmRhdGEuaWQgPT0gRXNlY3NpY2VDb25zdC5leGVjc2ljZV9pbmRleC5oZXJvZXhwZWRpdCl7Ly/ov5zlvoFcbiAgICAgICAgICAgICAgICB2YXIgSGVyb0V4cGVkaXRDb250cm9sbGVyID0gcmVxdWlyZShcImhlcm9leHBlZGl0X2NvbnRyb2xsZXJcIik7XG4gICAgICAgICAgICAgICAgcmVkX3N0YXR1cyA9IEhlcm9FeHBlZGl0Q29udHJvbGxlci5nZXRJbnN0YW5jZSgpLmdldE1vZGVsKCkuY2hlY2tSZWRTdGF0dXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMucmVkUG9pbnQuYWN0aXZlID0gcmVkX3N0YXR1cztcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICAvLyDlvZPpnaLmnb/ku47kuLvoioLngrnph4rmlL7mjonnmoTosIPnlKjmjqXlj6Ms6ZyA6KaB5omL5Yqo6LCD55SoLOiAjOS4lOS5n+S4gOWumuimgeiwg+eUqFxuICAgIG9uRGVsZXRlOmZ1bmN0aW9uKCl7XG4gICAgICAgIGZvcihsZXQgayBpbiB0aGlzLmxpc3RSZXdhcmQpe1xuICAgICAgICAgICAgdGhpcy5saXN0UmV3YXJkW2tdLmRlbGV0ZU1lKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5saXN0UmV3YXJkID0gbnVsbDtcbiAgICB9LFxufSlcbiJdfQ==