|
(function() {
|
var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
|
var __module = nodeEnv ? module : {exports:{}};
|
var __filename = 'preview-scripts/assets/Scripts/mod/exchange/view/exchange_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, '7fb6c1VdDVC6ok8cQp3cFLO', 'exchange_window');
|
// Scripts/mod/exchange/view/exchange_window.js
|
|
"use strict";
|
|
// --------------------------------------------------------------------
|
// @author: shiraho@syg.com(必填, 创建模块的人员)
|
// @description:
|
// 用户输入框
|
// <br/>Create: new Date().toISOString()
|
// --------------------------------------------------------------------
|
var PathTool = require("pathtool");
|
|
var LoaderManager = require("loadermanager");
|
|
var RoleController = require("role_controller");
|
|
var ExchangeController = require("exchange_controller");
|
|
var ExchangeEvent = require("exchange_event");
|
|
var TimeTool = require("timetool");
|
|
var ExchangeWindow = cc.Class({
|
"extends": BaseView,
|
ctor: function ctor() {
|
this.prefabPath = PathTool.getPrefabPath("exchange", "exchange_main_win");
|
this.viewTag = SCENE_TAG.dialogue;
|
},
|
openCallBack: function openCallBack() {
|
var _this = this;
|
|
this.main_container = this.root_wnd.getChildByName("main_container");
|
this.background = this.root_wnd.getChildByName("background");
|
this.bg = this.root_wnd.getChildByName("bg").getComponent(cc.Sprite);
|
LoaderManager.getInstance().loadRes(PathTool.getBigBg("bigbg_65", "png"), function (spriteFrame) {
|
this.bg.spriteFrame = spriteFrame;
|
}.bind(this));
|
this.objects = {};
|
|
var _loop = function _loop(i) {
|
item = {};
|
item.remain = _this.main_container.getChildByName("remain_text_" + i).getComponent(cc.Label);
|
item.btn = _this.main_container.getChildByName("btn_" + i);
|
item.get = _this.main_container.getChildByName("get_" + i);
|
item.gold = item.btn.getChildByName("label").getComponent(cc.Label);
|
item.coin = _this.main_container.getChildByName("coin_" + i).getChildByName("label").getComponent(cc.Label);
|
_this.objects[i] = item;
|
LoaderManager.getInstance().loadRes(PathTool.getItemRes("1"), function (res) {
|
this.main_container.getChildByName("coin_" + i).getChildByName("icon").getComponent(cc.Sprite).spriteFrame = res;
|
}.bind(_this));
|
|
if (_this.main_container.getChildByName("btn_" + i).getChildByName("icon")) {
|
LoaderManager.getInstance().loadRes(PathTool.getItemRes("3"), function (res) {
|
this.main_container.getChildByName("btn_" + i).getChildByName("icon").getComponent(cc.Sprite).spriteFrame = res;
|
}.bind(_this));
|
}
|
};
|
|
for (var i = 1; i <= 3; i++) {
|
var item;
|
|
_loop(i);
|
}
|
|
this.textTime = this.main_container.getChildByName("textTime").getComponent(cc.Label);
|
},
|
registerEvent: function registerEvent() {
|
var _this2 = this;
|
|
this.background.on(cc.Node.EventType.TOUCH_END, function (event) {
|
Utils.playButtonSound(2);
|
ExchangeController.getInstance().openExchangeMainView(false);
|
}, this);
|
|
var _loop2 = function _loop2(i) {
|
_this2.objects[i].btn.on(cc.Node.EventType.TOUCH_END, function (event) {
|
Utils.playButtonSound(1);
|
|
if (this.objects[i].v) {
|
ExchangeController.getInstance().send23607(this.objects[i].v.id);
|
}
|
}, _this2);
|
};
|
|
for (var i in this.objects) {
|
_loop2(i);
|
}
|
|
this.addGlobalEvent(ExchangeEvent.Extra_Reward, function (data) {
|
this.updateData(data);
|
}, this);
|
},
|
openRootWnd: function openRootWnd() {
|
ExchangeController.getInstance().send23606();
|
},
|
updateData: function updateData(data) {
|
this.data = data;
|
this.setLessTime();
|
|
for (var i in data.list) {
|
var v = data.list[i];
|
var item = this.objects[v.id];
|
item.v = v;
|
item.remain.string = Utils.TI18N("剩余:" + Math.max(0, v.max - v.num));
|
item.coin.string = v.gain;
|
|
if (v.num >= v.max) {
|
item.btn.active = false;
|
item.get.active = true;
|
} else {
|
item.btn.active = true;
|
item.get.active = false;
|
|
if (v.price == 0) {
|
item.gold.string = Utils.TI18N("免费获取");
|
} else {
|
item.gold.string = v.price + Utils.TI18N("获取");
|
}
|
}
|
}
|
},
|
setLessTime: function setLessTime() {
|
if (!cc.isValid(this.textTime) || !this.data) {
|
return;
|
}
|
|
var lesstime = this.data.ref_time - gcore.SmartSocket.getTime(); // Log.info("====>>>", lesstime, this.data, gcore.SmartSocket.getTime());
|
|
if (lesstime > 0) {
|
this.textTime.string = TimeTool.getTimeFormat(lesstime);
|
this.timer = gcore.Timer.set(function () {
|
this.setLessTime();
|
this.timer = null;
|
}.bind(this), 1000, 1);
|
} else {
|
this.textTime.string = "00:00:00";
|
}
|
},
|
closeCallBack: function closeCallBack() {
|
ExchangeController.getInstance().openExchangeMainView(false);
|
|
if (this.timer) {
|
gcore.Timer.del(this.timer);
|
}
|
|
LoaderManager.getInstance().deleteRes(PathTool.getBigBg("bigbg_65", "png"));
|
}
|
});
|
module.exports = ExchangeWindow;
|
|
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcbW9kXFxleGNoYW5nZVxcdmlld1xcZXhjaGFuZ2Vfd2luZG93LmpzIl0sIm5hbWVzIjpbIlBhdGhUb29sIiwicmVxdWlyZSIsIkxvYWRlck1hbmFnZXIiLCJSb2xlQ29udHJvbGxlciIsIkV4Y2hhbmdlQ29udHJvbGxlciIsIkV4Y2hhbmdlRXZlbnQiLCJUaW1lVG9vbCIsIkV4Y2hhbmdlV2luZG93IiwiY2MiLCJDbGFzcyIsIkJhc2VWaWV3IiwiY3RvciIsInByZWZhYlBhdGgiLCJnZXRQcmVmYWJQYXRoIiwidmlld1RhZyIsIlNDRU5FX1RBRyIsImRpYWxvZ3VlIiwib3BlbkNhbGxCYWNrIiwibWFpbl9jb250YWluZXIiLCJyb290X3duZCIsImdldENoaWxkQnlOYW1lIiwiYmFja2dyb3VuZCIsImJnIiwiZ2V0Q29tcG9uZW50IiwiU3ByaXRlIiwiZ2V0SW5zdGFuY2UiLCJsb2FkUmVzIiwiZ2V0QmlnQmciLCJzcHJpdGVGcmFtZSIsImJpbmQiLCJvYmplY3RzIiwiaSIsIml0ZW0iLCJyZW1haW4iLCJMYWJlbCIsImJ0biIsImdldCIsImdvbGQiLCJjb2luIiwiZ2V0SXRlbVJlcyIsInJlcyIsInRleHRUaW1lIiwicmVnaXN0ZXJFdmVudCIsIm9uIiwiTm9kZSIsIkV2ZW50VHlwZSIsIlRPVUNIX0VORCIsImV2ZW50IiwiVXRpbHMiLCJwbGF5QnV0dG9uU291bmQiLCJvcGVuRXhjaGFuZ2VNYWluVmlldyIsInYiLCJzZW5kMjM2MDciLCJpZCIsImFkZEdsb2JhbEV2ZW50IiwiRXh0cmFfUmV3YXJkIiwiZGF0YSIsInVwZGF0ZURhdGEiLCJvcGVuUm9vdFduZCIsInNlbmQyMzYwNiIsInNldExlc3NUaW1lIiwibGlzdCIsInN0cmluZyIsIlRJMThOIiwiTWF0aCIsIm1heCIsIm51bSIsImdhaW4iLCJhY3RpdmUiLCJwcmljZSIsImlzVmFsaWQiLCJsZXNzdGltZSIsInJlZl90aW1lIiwiZ2NvcmUiLCJTbWFydFNvY2tldCIsImdldFRpbWUiLCJnZXRUaW1lRm9ybWF0IiwidGltZXIiLCJUaW1lciIsInNldCIsImNsb3NlQ2FsbEJhY2siLCJkZWwiLCJkZWxldGVSZXMiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBLElBQUlBLFFBQVEsR0FBR0MsT0FBTyxDQUFDLFVBQUQsQ0FBdEI7O0FBQ0EsSUFBSUMsYUFBYSxHQUFHRCxPQUFPLENBQUMsZUFBRCxDQUEzQjs7QUFDQSxJQUFJRSxjQUFjLEdBQUdGLE9BQU8sQ0FBQyxpQkFBRCxDQUE1Qjs7QUFDQSxJQUFJRyxrQkFBa0IsR0FBR0gsT0FBTyxDQUFDLHFCQUFELENBQWhDOztBQUNBLElBQUlJLGFBQWEsR0FBR0osT0FBTyxDQUFDLGdCQUFELENBQTNCOztBQUNBLElBQUlLLFFBQVEsR0FBR0wsT0FBTyxDQUFDLFVBQUQsQ0FBdEI7O0FBRUEsSUFBSU0sY0FBYyxHQUFHQyxFQUFFLENBQUNDLEtBQUgsQ0FBUztBQUMxQixhQUFTQyxRQURpQjtBQUUxQkMsRUFBQUEsSUFBSSxFQUFDLGdCQUFVO0FBQ1gsU0FBS0MsVUFBTCxHQUFrQlosUUFBUSxDQUFDYSxhQUFULENBQXVCLFVBQXZCLEVBQW1DLG1CQUFuQyxDQUFsQjtBQUNBLFNBQUtDLE9BQUwsR0FBZUMsU0FBUyxDQUFDQyxRQUF6QjtBQUNILEdBTHlCO0FBTzFCQyxFQUFBQSxZQUFZLEVBQUUsd0JBQVk7QUFBQTs7QUFDdEIsU0FBS0MsY0FBTCxHQUFzQixLQUFLQyxRQUFMLENBQWNDLGNBQWQsQ0FBNkIsZ0JBQTdCLENBQXRCO0FBQ0EsU0FBS0MsVUFBTCxHQUFrQixLQUFLRixRQUFMLENBQWNDLGNBQWQsQ0FBNkIsWUFBN0IsQ0FBbEI7QUFDQSxTQUFLRSxFQUFMLEdBQVUsS0FBS0gsUUFBTCxDQUFjQyxjQUFkLENBQTZCLElBQTdCLEVBQW1DRyxZQUFuQyxDQUFnRGYsRUFBRSxDQUFDZ0IsTUFBbkQsQ0FBVjtB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MkIsS0FBUixFQUFjO0FBQ1ZKLE1BQUFBLEtBQUssQ0FBQ0ssS0FBTixDQUFZRyxHQUFaLENBQWdCLEtBQUtKLEtBQXJCO0FBQ0g7O0FBQ0QzRSxJQUFBQSxhQUFhLENBQUN1QixXQUFkLEdBQTRCeUQsU0FBNUIsQ0FBc0NsRixRQUFRLENBQUMyQixRQUFULENBQWtCLFVBQWxCLEVBQThCLEtBQTlCLENBQXRDO0FBQ0g7QUEzR3lCLENBQVQsQ0FBckI7QUE4R0F3RCxNQUFNLENBQUNDLE9BQVAsR0FBaUI3RSxjQUFqQiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBhdXRob3I6IHNoaXJhaG9Ac3lnLmNvbSjlv4XloassIOWIm+W7uuaooeWdl+eahOS6uuWRmClcbi8vIEBkZXNjcmlwdGlvbjpcbi8vICAgICAg55So5oi36L6T5YWl5qGGXG4vLyA8YnIvPkNyZWF0ZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG52YXIgUGF0aFRvb2wgPSByZXF1aXJlKFwicGF0aHRvb2xcIik7XG52YXIgTG9hZGVyTWFuYWdlciA9IHJlcXVpcmUoXCJsb2FkZXJtYW5hZ2VyXCIpXG52YXIgUm9sZUNvbnRyb2xsZXIgPSByZXF1aXJlKFwicm9sZV9jb250cm9sbGVyXCIpO1xudmFyIEV4Y2hhbmdlQ29udHJvbGxlciA9IHJlcXVpcmUoXCJleGNoYW5nZV9jb250cm9sbGVyXCIpO1xudmFyIEV4Y2hhbmdlRXZlbnQgPSByZXF1aXJlKFwiZXhjaGFuZ2VfZXZlbnRcIik7XG52YXIgVGltZVRvb2wgPSByZXF1aXJlKFwidGltZXRvb2xcIik7XG5cbnZhciBFeGNoYW5nZVdpbmRvdyA9IGNjLkNsYXNzKHtcbiAgICBleHRlbmRzOiBCYXNlVmlldyxcbiAgICBjdG9yOmZ1bmN0aW9uKCl7XG4gICAgICAgIHRoaXMucHJlZmFiUGF0aCA9IFBhdGhUb29sLmdldFByZWZhYlBhdGgoXCJleGNoYW5nZVwiLCBcImV4Y2hhbmdlX21haW5fd2luXCIpO1xuICAgICAgICB0aGlzLnZpZXdUYWcgPSBTQ0VORV9UQUcuZGlhbG9ndWU7XG4gICAgfSxcblxuICAgIG9wZW5DYWxsQmFjazogZnVuY3Rpb24gKCkgeyBcbiAgICAgICAgdGhpcy5tYWluX2NvbnRhaW5lciA9IHRoaXMucm9vdF93bmQuZ2V0Q2hpbGRCeU5hbWUoXCJtYWluX2NvbnRhaW5lclwiKTtcbiAgICAgICAgdGhpcy5iYWNrZ3JvdW5kID0gdGhpcy5yb290X3duZC5nZXRDaGlsZEJ5TmFtZShcImJhY2tncm91bmRcIik7XG4gICAgICAgIHRoaXMuYmcgPSB0aGlzLnJvb3Rfd25kLmdldENoaWxkQnlOYW1lKFwiYmdcIikuZ2V0Q29tcG9uZW50KGNjLlNwcml0ZSk7XG4gICAgICAgIExvYWRlck1hbmFnZXIuZ2V0SW5zdGFuY2UoKS5sb2FkUmVzKFBhdGhUb29sLmdldEJpZ0JnKFwiYmlnYmdfNjVcIiwgXCJwbmdcIiksIChmdW5jdGlvbiAoc3ByaXRlRnJhbWUpIHtcbiAgICAgICAgICAgIHRoaXMuYmcuc3ByaXRlRnJhbWUgPSBzcHJpdGVGcmFtZTtcbiAgICAgICAgfSkuYmluZCh0aGlzKSlcbiAgICAgICAgdGhpcy5vYmplY3RzID0ge307XG4gICAgICAgIGZvcihsZXQgaT0xOyBpPD0zOyBpKyspe1xuICAgICAgICAgICAgdmFyIGl0ZW0gPSB7fTtcbiAgICAgICAgICAgIGl0ZW0ucmVtYWluID0gdGhpcy5tYWluX2NvbnRhaW5lci5nZXRDaGlsZEJ5TmFtZShcInJlbWFpbl90ZXh0X1wiICsgaSkuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcbiAgICAgICAgICAgIGl0ZW0uYnRuID0gdGhpcy5tYWluX2NvbnRhaW5lci5nZXRDaGlsZEJ5TmFtZShcImJ0bl9cIiArIGkpO1xuICAgICAgICAgICAgaXRlbS5nZXQgPSB0aGlzLm1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwiZ2V0X1wiICsgaSk7XG4gICAgICAgICAgICBpdGVtLmdvbGQgPSBpdGVtLmJ0bi5nZXRDaGlsZEJ5TmFtZShcImxhYmVsXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCk7XG4gICAgICAgICAgICBpdGVtLmNvaW4gPSB0aGlzLm1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwiY29pbl9cIiArIGkpLmdldENoaWxkQnlOYW1lKFwibGFiZWxcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcbiAgICAgICAgICAgIHRoaXMub2JqZWN0c1tpXSA9IGl0ZW07XG4gICAgICAgICAgICBMb2FkZXJNYW5hZ2VyLmdldEluc3RhbmNlKCkubG9hZFJlcyhQYXRoVG9vbC5nZXRJdGVtUmVzKFwiMVwiKSwgKGZ1bmN0aW9uIChyZXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwiY29pbl9cIiArIGkpLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKS5zcHJpdGVGcmFtZSA9IHJlc1xuICAgICAgICAgICAgfSkuYmluZCh0aGlzKSlcbiAgICAgICAgICAgIGlmKHRoaXMubWFpbl9jb250YWluZXIuZ2V0Q2hpbGRCeU5hbWUoXCJidG5fXCIgKyBpKS5nZXRDaGlsZEJ5TmFtZShcImljb25cIikpe1xuICAgICAgICAgICAgICAgIExvYWRlck1hbmFnZXIuZ2V0SW5zdGFuY2UoKS5sb2FkUmVzKFBhdGhUb29sLmdldEl0ZW1SZXMoXCIzXCIpLCAoZnVuY3Rpb24gKHJlcykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwiYnRuX1wiICsgaSkuZ2V0Q2hpbGRCeU5hbWUoXCJpY29uXCIpLmdldENvbXBvbmVudChjYy5TcHJpdGUpLnNwcml0ZUZyYW1lID0gcmVzXG4gICAgICAgICAgICAgICAgfSkuYmluZCh0aGlzKSlcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnRleHRUaW1lID0gdGhpcy5tYWluX2NvbnRhaW5lci5nZXRDaGlsZEJ5TmFtZShcInRleHRUaW1lXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCk7XG4gICAgfSxcblxuICAgIHJlZ2lzdGVyRXZlbnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdGhpcy5iYWNrZ3JvdW5kLm9uKGNjLk5vZGUuRXZlbnRUeXBlLlRPVUNIX0VORCwgZnVuY3Rpb24oZXZlbnQpe1xuICAgICAgICAgICAgVXRpbHMucGxheUJ1dHRvblNvdW5kKDIpXG4gICAgICAgICAgICBFeGNoYW5nZUNvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKS5vcGVuRXhjaGFuZ2VNYWluVmlldyhmYWxzZSk7XG4gICAgICAgIH0sIHRoaXMpO1xuXG4gICAgICAgIGZvcihsZXQgaSBpbiB0aGlzLm9iamVjdHMpe1xuICAgICAgICAgICAgdGhpcy5vYmplY3RzW2ldLmJ0bi5vbihjYy5Ob2RlLkV2ZW50VHlwZS5UT1VDSF9FTkQsIGZ1bmN0aW9uKGV2ZW50KXtcbiAgICAgICAgICAgICAgICBVdGlscy5wbGF5QnV0dG9uU291bmQoMSlcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5vYmplY3RzW2ldLnYpe1xuICAgICAgICAgICAgICAgICAgICBFeGNoYW5nZUNvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKS5zZW5kMjM2MDcodGhpcy5vYmplY3RzW2ldLnYuaWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sIHRoaXMpXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFkZEdsb2JhbEV2ZW50KEV4Y2hhbmdlRXZlbnQuRXh0cmFfUmV3YXJkLCBmdW5jdGlvbihkYXRhKXtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlRGF0YShkYXRhKTtcbiAgICAgICAgfSwgdGhpcyk7XG4gICAgfSxcblxuICAgIG9wZW5Sb290V25kOiBmdW5jdGlvbigpe1xuICAgICAgICBFeGNoYW5nZUNvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKS5zZW5kMjM2MDYoKTtcbiAgICB9LFxuXG4gICAgdXBkYXRlRGF0YTogZnVuY3Rpb24oZGF0YSl7XG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGFcbiAgICAgICAgdGhpcy5zZXRMZXNzVGltZSgpO1xuICAgICAgICBmb3IobGV0IGkgaW4gZGF0YS5saXN0KXtcbiAgICAgICAgICAgIHZhciB2ID0gZGF0YS5saXN0W2ldO1xuICAgICAgICAgICAgdmFyIGl0ZW0gPSB0aGlzLm9iamVjdHNbdi5pZF07XG4gICAgICAgICAgICBpdGVtLnYgPSB2O1xuICAgICAgICAgICAgaXRlbS5yZW1haW4uc3RyaW5nID0gVXRpbHMuVEkxOE4oXCLliankvZnvvJpcIiArIE1hdGgubWF4KDAsIHYubWF4LXYubnVtKSk7XG4gICAgICAgICAgICBpdGVtLmNvaW4uc3RyaW5nID0gdi5nYWluO1xuICAgICAgICAgICAgaWYodi5udW0gPj0gdi5tYXgpe1xuICAgICAgICAgICAgICAgIGl0ZW0uYnRuLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGl0ZW0uZ2V0LmFjdGl2ZSA9IHRydWU7XG4gICAgICAgICAgICB9ZWxzZXtcbiAgICAgICAgICAgICAgICBpdGVtLmJ0bi5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGl0ZW0uZ2V0LmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGlmKHYucHJpY2UgPT0gMCl7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uZ29sZC5zdHJpbmcgPSBVdGlscy5USTE4TihcIuWFjei0ueiOt+WPllwiKTtcbiAgICAgICAgICAgICAgICB9ZWxzZXtcbiAgICAgICAgICAgICAgICAgICAgaXRlbS5nb2xkLnN0cmluZyA9IHYucHJpY2UgKyBVdGlscy5USTE4TihcIuiOt+WPllwiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgc2V0TGVzc1RpbWUgOiBmdW5jdGlvbigpe1xuICAgICAgICBpZighY2MuaXNWYWxpZCh0aGlzLnRleHRUaW1lKSB8fCAhdGhpcy5kYXRhKXtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBsZXQgbGVzc3RpbWUgPSB0aGlzLmRhdGEucmVmX3RpbWUgLSBnY29yZS5TbWFydFNvY2tldC5nZXRUaW1lKCk7XG4gICAgICAgIC8vIExvZy5pbmZvKFwiPT09PT4+PlwiLCBsZXNzdGltZSwgdGhpcy5kYXRhLCBnY29yZS5TbWFydFNvY2tldC5nZXRUaW1lKCkpO1xuICAgICAgICBpZihsZXNzdGltZSA+IDApe1xuICAgICAgICAgICAgdGhpcy50ZXh0VGltZS5zdHJpbmcgPSBUaW1lVG9vbC5nZXRUaW1lRm9ybWF0KGxlc3N0aW1lKTtcbiAgICAgICAgICAgIHRoaXMudGltZXIgPSBnY29yZS5UaW1lci5zZXQoKGZ1bmN0aW9uKCl7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMZXNzVGltZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMudGltZXIgPSBudWxsO1xuICAgICAgICAgICAgfSkuYmluZCh0aGlzKSwgMTAwMCwgMSk7XG4gICAgICAgIH1lbHNle1xuICAgICAgICAgICAgdGhpcy50ZXh0VGltZS5zdHJpbmcgPSBcIjAwOjAwOjAwXCI7XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgY2xvc2VDYWxsQmFjazogZnVuY3Rpb24gKCkge1xuICAgICAgICBFeGNoYW5nZUNvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKS5vcGVuRXhjaGFuZ2VNYWluVmlldyhmYWxzZSk7XG4gICAgICAgIGlmKHRoaXMudGltZXIpe1xuICAgICAgICAgICAgZ2NvcmUuVGltZXIuZGVsKHRoaXMudGltZXIpO1xuICAgICAgICB9XG4gICAgICAgIExvYWRlck1hbmFnZXIuZ2V0SW5zdGFuY2UoKS5kZWxldGVSZXMoUGF0aFRvb2wuZ2V0QmlnQmcoXCJiaWdiZ182NVwiLCBcInBuZ1wiKSk7XG4gICAgfVxufSk7XG5cbm1vZHVsZS5leHBvcnRzID0gRXhjaGFuZ2VXaW5kb3c7Il19
|