|
(function() {
|
var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
|
var __module = nodeEnv ? module : {exports:{}};
|
var __filename = 'preview-scripts/assets/Scripts/mod/mail/view/mail_cell.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, 'f0e70yb6slG3bMwfqyKQiET', 'mail_cell');
|
// Scripts/mod/mail/view/mail_cell.js
|
|
"use strict";
|
|
// --------------------------------------------------------------------
|
// @author: shiraho@syg.com(必填, 创建模块的人员)
|
// @description:
|
// 竖版邮件单个
|
// <br/>Create: new Date().toISOString()
|
// --------------------------------------------------------------------
|
var PathTool = require("pathtool");
|
|
var TimeTool = require("timetool");
|
|
var MailCell = cc.Class({
|
"extends": BasePanel,
|
ctor: function ctor() {
|
this.prefabPath = PathTool.getPrefabPath("mail", "mail_item");
|
this.data = null;
|
},
|
initPanel: function initPanel() {
|
this.main_container = this.root_wnd.getChildByName("main_container");
|
this.mail_con = this.main_container.getChildByName("mail_con");
|
this.icon = this.mail_con.getChildByName("icon").getComponent(cc.Sprite);
|
this.mail_title = this.mail_con.getChildByName("title").getComponent(cc.Label);
|
this.time = this.mail_con.getChildByName("time").getComponent(cc.Label);
|
this.unread = this.mail_con.getChildByName("unread").getComponent(cc.Label);
|
this.unread.string = "未读";
|
this.notice_con = this.main_container.getChildByName("notice_con");
|
this.notice_title = this.notice_con.getChildByName("title").getComponent(cc.Label);
|
this.notice_content = this.notice_con.getChildByName("content").getComponent(cc.Label);
|
this.onShow();
|
},
|
registerEvent: function registerEvent() {
|
if (this.main_container == null) return;
|
this.main_container.on(cc.Node.EventType.TOUCH_END, function () {
|
if (this.data != null && this.callback != null) this.callback(this);
|
}, this);
|
},
|
addCallBack: function addCallBack(value) {
|
this.callback = value;
|
},
|
//必要添加的数据传入方法
|
setData: function setData(data) {
|
this.data = data;
|
this.onShow();
|
},
|
onShow: function onShow() {
|
if (this.data == null) return;
|
if (this.root_wnd == null) return; // this.root_wnd.setPosition(this.x, this.y);
|
|
if (this.data.status >= 0) {
|
//邮件
|
this.mail_con.active = true;
|
this.notice_con.active = false;
|
var show_time = TimeTool.getDayOrHour(gcore.SmartSocket.getTime() - this.data.send_time);
|
|
if (show_time) {
|
this.time.string = show_time + "前";
|
} else {
|
this.time.string = "";
|
}
|
|
this.changeIcon(this.data.status);
|
this.mail_title.string = this.data.subject;
|
} else if (this.data.flag >= 0) {
|
//公告
|
this.mail_con.active = false;
|
this.notice_con.active = true;
|
this.notice_title.string = this.data.title;
|
this.notice_content.string = this.data.summary;
|
this.setGray(this.data.flag == 1);
|
}
|
},
|
//邮件的icon改变
|
changeIcon: function changeIcon(status) {
|
if (status != null) {
|
if (status == 1) {
|
//已读
|
this.setGray(true);
|
|
if (Utils.getArrLen(this.data.assets) > 0 || Utils.getArrLen(this.data.items) > 0) {
|
this.loadRes(PathTool.getUIIconPath("mail", "mail_icon4"), function (sf_obj) {
|
this.icon.spriteFrame = sf_obj;
|
}.bind(this));
|
} else if (Utils.getArrLen(this.data.assets) == 0 || Utils.getArrLen(this.data.items) == 0) {
|
this.loadRes(PathTool.getUIIconPath("mail", "mail_icon3"), function (sf_obj) {
|
this.icon.spriteFrame = sf_obj;
|
}.bind(this));
|
}
|
} else if (status == 2) {
|
//领了
|
this.setGray(true);
|
this.loadRes(PathTool.getUIIconPath("mail", "mail_icon3"), function (sf_obj) {
|
this.icon.spriteFrame = sf_obj;
|
}.bind(this));
|
} else if (status == 0) {
|
//未读
|
this.setGray(false);
|
|
if (Utils.getArrLen(this.data.assets) > 0 || Utils.getArrLen(this.data.items) > 0) {
|
//有物品
|
this.loadRes(PathTool.getUIIconPath("mail", "mail_icon2"), function (sf_obj) {
|
this.icon.spriteFrame = sf_obj;
|
}.bind(this));
|
} else {
|
this.loadRes(PathTool.getUIIconPath("mail", "mail_icon1"), function (sf_obj) {
|
this.icon.spriteFrame = sf_obj;
|
}.bind(this));
|
}
|
}
|
}
|
},
|
setGray: function setGray(status) {
|
if (status) {
|
this.root_wnd.opacity = 178;
|
this.unread.node.active = false;
|
} else {
|
this.root_wnd.opacity = 255;
|
this.unread.node.active = true;
|
}
|
},
|
getData: function getData() {
|
return this.data;
|
},
|
updateIconStatus: function updateIconStatus() {
|
if (this.data == null) return;
|
var status = this.data.status;
|
this.changeIcon(status);
|
},
|
onHide: function onHide() {},
|
onDelete: function onDelete() {}
|
});
|
module.exports = MailCell;
|
|
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcbW9kXFxtYWlsXFx2aWV3XFxtYWlsX2NlbGwuanMiXSwibmFtZXMiOlsiUGF0aFRvb2wiLCJyZXF1aXJlIiwiVGltZVRvb2wiLCJNYWlsQ2VsbCIsImNjIiwiQ2xhc3MiLCJCYXNlUGFuZWwiLCJjdG9yIiwicHJlZmFiUGF0aCIsImdldFByZWZhYlBhdGgiLCJkYXRhIiwiaW5pdFBhbmVsIiwibWFpbl9jb250YWluZXIiLCJyb290X3duZCIsImdldENoaWxkQnlOYW1lIiwibWFpbF9jb24iLCJpY29uIiwiZ2V0Q29tcG9uZW50IiwiU3ByaXRlIiwibWFpbF90aXRsZSIsIkxhYmVsIiwidGltZSIsInVucmVhZCIsInN0cmluZyIsIm5vdGljZV9jb24iLCJub3RpY2VfdGl0bGUiLCJub3RpY2VfY29udGVudCIsIm9uU2hvdyIsInJlZ2lzdGVyRXZlbnQiLCJvbiIsIk5vZGUiLCJFdmVudFR5cGUiLCJUT1VDSF9FTkQiLCJjYWxsYmFjayIsImFkZENhbGxCYWNrIiwidmFsdWUiLCJzZXREYXRhIiwic3RhdHVzIiwiYWN0aXZlIiwic2hvd190aW1lIiwiZ2V0RGF5T3JIb3VyIiwiZ2NvcmUiLCJTbWFydFNvY2tldCIsImdldFRpbWUiLCJzZW5kX3RpbWUiLCJjaGFuZ2VJY29uIiwic3ViamVjdCIsImZsYWciLCJ0aXRsZSIsInN1bW1hcnkiLCJzZXRHcmF5IiwiVXRpbHMiLCJnZXRBcnJMZW4iLCJhc3NldHMiLCJpdGVtcyIsImxvYWRSZXMiLCJnZXRVSUljb25QYXRoIiwic2Zfb2JqIiwic3ByaXRlRnJhbWUiLCJiaW5kIiwib3BhY2l0eSIsIm5vZGUiLCJnZXREYXRhIiwidXBkYXRlSWNvblN0YXR1cyIsIm9uSGlkZSIsIm9uRGVsZXRlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQSxJQUFJQSxRQUFRLEdBQUdDLE9BQU8s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TUFBakIsR0FBMEIsSUFBMUI7QUFDSDtBQUNKLEdBaEhtQjtBQWtIcEJ3QixFQUFBQSxPQUFPLEVBQUUsbUJBQVk7QUFDakIsV0FBTyxLQUFLcEQsSUFBWjtBQUNILEdBcEhtQjtBQXNIcEJxRCxFQUFBQSxnQkFBZ0IsRUFBQyw0QkFBVTtBQUN2QixRQUFHLEtBQUtyRCxJQUFMLElBQWEsSUFBaEIsRUFBcUI7QUFDckIsUUFBSTJCLE1BQU0sR0FBRyxLQUFLM0IsSUFBTCxDQUFVMkIsTUFBdkI7QUFDQSxTQUFLUSxVQUFMLENBQWdCUixNQUFoQjtBQUNILEdBMUhtQjtBQTRIcEIyQixFQUFBQSxNQUFNLEVBQUUsa0JBQVksQ0FFbkIsQ0E5SG1CO0FBZ0lwQkMsRUFBQUEsUUFBUSxFQUFFLG9CQUFZLENBRXJCO0FBbEltQixDQUFULENBQWY7QUFzSUFDLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQmhFLFFBQWpCIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBAYXV0aG9yOiBzaGlyYWhvQHN5Zy5jb20o5b+F5aGrLCDliJvlu7rmqKHlnZfnmoTkurrlkZgpXHJcbi8vIEBkZXNjcmlwdGlvbjpcclxuLy8gICAgICDnq5bniYjpgq7ku7bljZXkuKpcclxuLy8gPGJyLz5DcmVhdGU6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxudmFyIFBhdGhUb29sID0gcmVxdWlyZShcInBhdGh0b29sXCIpO1xyXG52YXIgVGltZVRvb2wgPSByZXF1aXJlKFwidGltZXRvb2xcIik7XHJcblxyXG52YXIgTWFpbENlbGwgPSBjYy5DbGFzcyh7XHJcbiAgICBleHRlbmRzOiBCYXNlUGFuZWwsXHJcbiAgICBjdG9yOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgdGhpcy5wcmVmYWJQYXRoID0gUGF0aFRvb2wuZ2V0UHJlZmFiUGF0aChcIm1haWxcIiwgXCJtYWlsX2l0ZW1cIik7XHJcbiAgICAgICAgdGhpcy5kYXRhID0gbnVsbDtcclxuICAgIH0sXHJcblxyXG5cclxuICAgIGluaXRQYW5lbDogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIHRoaXMubWFpbl9jb250YWluZXIgPSB0aGlzLnJvb3Rfd25kLmdldENoaWxkQnlOYW1lKFwibWFpbl9jb250YWluZXJcIik7XHJcbiAgICAgICAgdGhpcy5tYWlsX2NvbiA9IHRoaXMubWFpbl9jb250YWluZXIuZ2V0Q2hpbGRCeU5hbWUoXCJtYWlsX2NvblwiKTtcclxuICAgICAgICB0aGlzLmljb24gPSB0aGlzLm1haWxfY29uLmdldENoaWxkQnlOYW1lKFwiaWNvblwiKS5nZXRDb21wb25lbnQoY2MuU3ByaXRlKTtcclxuICAgICAgICB0aGlzLm1haWxfdGl0bGUgPSB0aGlzLm1haWxfY29uLmdldENoaWxkQnlOYW1lKFwidGl0bGVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcclxuICAgICAgICB0aGlzLnRpbWUgPSB0aGlzLm1haWxfY29uLmdldENoaWxkQnlOYW1lKFwidGltZVwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpO1xyXG4gICAgICAgIHRoaXMudW5yZWFkID0gdGhpcy5tYWlsX2Nvbi5nZXRDaGlsZEJ5TmFtZShcInVucmVhZFwiKS5nZXRDb21wb25lbnQoY2MuTGFiZWwpO1xyXG4gICAgICAgIHRoaXMudW5yZWFkLnN0cmluZyA9IChcIuacquivu1wiKVxyXG5cclxuICAgICAgICB0aGlzLm5vdGljZV9jb24gPSB0aGlzLm1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwibm90aWNlX2NvblwiKTtcclxuICAgICAgICB0aGlzLm5vdGljZV90aXRsZSA9IHRoaXMubm90aWNlX2Nvbi5nZXRDaGlsZEJ5TmFtZShcInRpdGxlXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCk7XHJcbiAgICAgICAgdGhpcy5ub3RpY2VfY29udGVudCA9IHRoaXMubm90aWNlX2Nvbi5nZXRDaGlsZEJ5TmFtZShcImNvbnRlbnRcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcclxuXHJcbiAgICAgICAgdGhpcy5vblNob3coKVxyXG4gICAgfSxcclxuXHJcblxyXG4gICAgcmVnaXN0ZXJFdmVudDogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGlmICh0aGlzLm1haW5fY29udGFpbmVyID09IG51bGwpIHJldHVyblxyXG4gICAgICAgIHRoaXMubWFpbl9jb250YWluZXIub24oY2MuTm9kZS5FdmVudFR5cGUuVE9VQ0hfRU5ELCBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmRhdGEgIT0gbnVsbCAmJiB0aGlzLmNhbGxiYWNrICE9IG51bGwpXHJcbiAgICAgICAgICAgICAgICB0aGlzLmNhbGxiYWNrKHRoaXMpO1xyXG4gICAgICAgIH0sIHRoaXMpXHJcblxyXG4gICAgfSxcclxuXHJcbiAgICBhZGRDYWxsQmFjazogZnVuY3Rpb24gKHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5jYWxsYmFjayA9IHZhbHVlXHJcbiAgICB9LFxyXG5cclxuICAgIC8v5b+F6KaB5re75Yqg55qE5pWw5o2u5Lyg5YWl5pa55rOVXHJcbiAgICBzZXREYXRhOiBmdW5jdGlvbiAoZGF0YSkge1xyXG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XHJcbiAgICAgICAgdGhpcy5vblNob3coKVxyXG4gICAgfSxcclxuXHJcbiAgICBvblNob3c6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICBpZiAodGhpcy5kYXRhID09IG51bGwpXHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIGlmICh0aGlzLnJvb3Rfd25kID09IG51bGwpXHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIC8vIHRoaXMucm9vdF93bmQuc2V0UG9zaXRpb24odGhpcy54LCB0aGlzLnkpO1xyXG4gICAgICAgIGlmICh0aGlzLmRhdGEuc3RhdHVzID49IDApIHsgLy/pgq7ku7ZcclxuICAgICAgICAgICAgdGhpcy5tYWlsX2Nvbi5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm5vdGljZV9jb24uYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHZhciBzaG93X3RpbWUgPSBUaW1lVG9vbC5nZXREYXlPckhvdXIoZ2NvcmUuU21hcnRTb2NrZXQuZ2V0VGltZSgpIC0gdGhpcy5kYXRhLnNlbmRfdGltZSk7XHJcbiAgICAgICAgICAgIGlmIChzaG93X3RpbWUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudGltZS5zdHJpbmcgPSBzaG93X3RpbWUgKyBcIuWJjVwiO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy50aW1lLnN0cmluZyA9IFwiXCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5jaGFuZ2VJY29uKHRoaXMuZGF0YS5zdGF0dXMpO1xyXG4gICAgICAgICAgICB0aGlzLm1haWxfdGl0bGUuc3RyaW5nID0gdGhpcy5kYXRhLnN1YmplY3Q7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGEuZmxhZyA+PSAwKSB7ICAvL+WFrOWRilxyXG4gICAgICAgICAgICB0aGlzLm1haWxfY29uLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm5vdGljZV9jb24uYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5ub3RpY2VfdGl0bGUuc3RyaW5nID0gdGhpcy5kYXRhLnRpdGxlO1xyXG4gICAgICAgICAgICB0aGlzLm5vdGljZV9jb250ZW50LnN0cmluZyA9IHRoaXMuZGF0YS5zdW1tYXJ5O1xyXG4gICAgICAgICAgICB0aGlzLnNldEdyYXkodGhpcy5kYXRhLmZsYWcgPT0gMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuXHJcbiAgICAvL+mCruS7tueahGljb27mlLnlj5hcclxuICAgIGNoYW5nZUljb246IGZ1bmN0aW9uIChzdGF0dXMpIHtcclxuICAgICAgICBpZiAoc3RhdHVzICE9IG51bGwpIHtcclxuICAgICAgICAgICAgaWYgKHN0YXR1cyA9PSAxKSB7ICAvL+W3suivu1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRHcmF5KHRydWUpO1xyXG4gICAgICAgICAgICAgICAgaWYgKFV0aWxzLmdldEFyckxlbih0aGlzLmRhdGEuYXNzZXRzKSA+IDAgfHwgVXRpbHMuZ2V0QXJyTGVuKHRoaXMuZGF0YS5pdGVtcykgPiAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUmVzKFBhdGhUb29sLmdldFVJSWNvblBhdGgoXCJtYWlsXCIsIFwibWFpbF9pY29uNFwiKSwgZnVuY3Rpb24gKHNmX29iaikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmljb24uc3ByaXRlRnJhbWUgPSBzZl9vYmo7XHJcbiAgICAgICAgICAgICAgICAgICAgfS5iaW5kKHRoaXMpKVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChVdGlscy5nZXRBcnJMZW4odGhpcy5kYXRhLmFzc2V0cykgPT0gMCB8fCBVdGlscy5nZXRBcnJMZW4odGhpcy5kYXRhLml0ZW1zKSA9PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUmVzKFBhdGhUb29sLmdldFVJSWNvblBhdGgoXCJtYWlsXCIsIFwibWFpbF9pY29uM1wiKSwgZnVuY3Rpb24gKHNmX29iaikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmljb24uc3ByaXRlRnJhbWUgPSBzZl9vYmo7XHJcbiAgICAgICAgICAgICAgICAgICAgfS5iaW5kKHRoaXMpKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHN0YXR1cyA9PSAyKSB7ICAvL+mihuS6hlxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRHcmF5KHRydWUpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkUmVzKFBhdGhUb29sLmdldFVJSWNvblBhdGgoXCJtYWlsXCIsIFwibWFpbF9pY29uM1wiKSwgZnVuY3Rpb24gKHNmX29iaikge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaWNvbi5zcHJpdGVGcmFtZSA9IHNmX29iajtcclxuICAgICAgICAgICAgICAgIH0uYmluZCh0aGlzKSlcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChzdGF0dXMgPT0gMCkgeyAgLy/mnKror7tcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0R3JheShmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoVXRpbHMuZ2V0QXJyTGVuKHRoaXMuZGF0YS5hc3NldHMpID4gMCB8fCBVdGlscy5nZXRBcnJMZW4odGhpcy5kYXRhLml0ZW1zKSA+IDApIHsgIC8v5pyJ54mp5ZOBXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUmVzKFBhdGhUb29sLmdldFVJSWNvblBhdGgoXCJtYWlsXCIsIFwibWFpbF9pY29uMlwiKSwgZnVuY3Rpb24gKHNmX29iaikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmljb24uc3ByaXRlRnJhbWUgPSBzZl9vYmo7XHJcbiAgICAgICAgICAgICAgICAgICAgfS5iaW5kKHRoaXMpKVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRSZXMoUGF0aFRvb2wuZ2V0VUlJY29uUGF0aChcIm1haWxcIiwgXCJtYWlsX2ljb24xXCIpLCBmdW5jdGlvbiAoc2Zfb2JqKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaWNvbi5zcHJpdGVGcmFtZSA9IHNmX29iajtcclxuICAgICAgICAgICAgICAgICAgICB9LmJpbmQodGhpcykpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9LFxyXG5cclxuICAgIHNldEdyYXk6IGZ1bmN0aW9uIChzdGF0dXMpIHtcclxuICAgICAgICBpZiAoc3RhdHVzKSB7XHJcbiAgICAgICAgICAgIHRoaXMucm9vdF93bmQub3BhY2l0eSA9IDE3ODtcclxuICAgICAgICAgICAgdGhpcy51bnJlYWQubm9kZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnJvb3Rfd25kLm9wYWNpdHkgPSAyNTU7XHJcbiAgICAgICAgICAgIHRoaXMudW5yZWFkLm5vZGUuYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9LFxyXG5cclxuICAgIGdldERhdGE6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kYXRhXHJcbiAgICB9LFxyXG5cclxuICAgIHVwZGF0ZUljb25TdGF0dXM6ZnVuY3Rpb24oKXtcclxuICAgICAgICBpZih0aGlzLmRhdGEgPT0gbnVsbClyZXR1cm5cclxuICAgICAgICB2YXIgc3RhdHVzID0gdGhpcy5kYXRhLnN0YXR1cztcclxuICAgICAgICB0aGlzLmNoYW5nZUljb24oc3RhdHVzKVxyXG4gICAgfSxcclxuXHJcbiAgICBvbkhpZGU6IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgICB9LFxyXG5cclxuICAgIG9uRGVsZXRlOiBmdW5jdGlvbiAoKSB7XHJcblxyXG4gICAgfVxyXG5cclxufSk7XHJcblxyXG5tb2R1bGUuZXhwb3J0cyA9IE1haWxDZWxsOyJdfQ==
|