|
(function() {
|
var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
|
var __module = nodeEnv ? module : {exports:{}};
|
var __filename = 'preview-scripts/assets/Scripts/common/common_explain_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, '30b0bjFY85GjrR9Du6UKr6X', 'common_explain_window');
|
// Scripts/common/common_explain_window.js
|
|
"use strict";
|
|
// --------------------------------------------------------------------
|
// @author: shiraho@syg.com(必填, 创建模块的人员)
|
// @description:
|
// 通用的规则说明面板,只需要传固定格式的就行了
|
// <br/>Create: new Date().toISOString()
|
// --------------------------------------------------------------------
|
var PathTool = require("pathtool");
|
|
var CommonExplainWindow = cc.Class({
|
"extends": BaseView,
|
ctor: function ctor() {
|
this.prefabPath = PathTool.getPrefabPath("common", "common_explain_view");
|
this.viewTag = SCENE_TAG.dialogue; //该窗体所属ui层级,全屏ui需要在ui层,非全屏ui在dialogue层,这个要注意
|
|
this.win_type = WinType.Mini; //是否是全屏窗体 WinType.Full, WinType.Big, WinType.Mini, WinType.Tips
|
|
this.ctrl = arguments[0];
|
},
|
// 初始化一些配置数据,可以用于声明一些变量之类的
|
initConfig: function initConfig() {
|
this.max_height = 0;
|
this.cache_list = [];
|
this.title_str = Utils.TI18N("规则");
|
this.color_1 = new cc.Color(0x68, 0x45, 0x2a, 0xff);
|
},
|
openCallBack: function openCallBack() {
|
this.background = this.root_wnd.getChildByName("background");
|
this.background.scale = FIT_SCALE;
|
this.container = this.root_wnd.getChildByName("container");
|
this.close_btn = this.container.getChildByName("close_btn");
|
this.scroll_view = this.container.getChildByName("scroll_view");
|
this.scroll_content = this.scroll_view.getChildByName("content");
|
this.scroll_view_compend = this.scroll_view.getComponent(cc.ScrollView);
|
this.scroll_width = this.scroll_view.getContentSize().width;
|
this.scroll_height = this.scroll_view.getContentSize().height;
|
this.win_title = this.container.getChildByName("win_title").getComponent(cc.Label);
|
this.win_title.string = this.title_str;
|
},
|
registerEvent: function registerEvent() {
|
Utils.onTouchEnd(this.background, function () {
|
this.ctrl.openCommonExplainView(false);
|
}.bind(this), 2);
|
Utils.onTouchEnd(this.close_btn, function () {
|
this.ctrl.openCommonExplainView(false);
|
}.bind(this), 2);
|
},
|
openRootWnd: function openRootWnd(tmpInfo) {
|
if (tmpInfo && tmpInfo.length >= 2) {
|
this.title_str = tmpInfo[1];
|
this.setDataList(tmpInfo[0]);
|
}
|
},
|
setDataList: function setDataList(list) {
|
this.render_list = list;
|
|
for (var i in this.render_list) {
|
gcore.Timer.set(function (v) {
|
this.createList(v);
|
}.bind(this, this.render_list[i]), i / 60, 1, "render_list" + i);
|
}
|
},
|
createList: function createList(data) {
|
var info = this.createTitleContent(data);
|
this.scroll_content.addChild(info.container);
|
this.cache_list.push(info.container);
|
this.max_height = this.max_height + info.height + 30;
|
var max_height = Math.max(this.max_height, this.scroll_height);
|
this.scroll_content.setContentSize(cc.size(this.scroll_width, max_height));
|
var off_y = 0;
|
|
for (var i in this.cache_list) {
|
this.cache_list[i].setPosition(8, max_height - off_y);
|
off_y = off_y + this.cache_list[i].getContentSize().height + 30;
|
}
|
|
this.scroll_view_compend.scrollToTop(0);
|
},
|
createTitleContent: function createTitleContent(data) {
|
if (data == null) return;
|
var container = new cc.Node();
|
container.setAnchorPoint(cc.v2(0, 1));
|
var _height = 0;
|
|
if (data.title == " " || data.title == "") {
|
var content = Utils.createRichLabel(24, this.color_1, cc.v2(0, 1), cc.v2(0, 0), 30, 605);
|
content.horizontalAlign = cc.macro.TextAlignment.LEFT;
|
content.string = Utils.splitDataStr(data.desc);
|
container.addChild(content.node);
|
|
var _width = this.scroll_width - 8;
|
|
_height = content.node.getContentSize().height;
|
container.node.setContentSize(cc.size(_width, _height));
|
content.node.y = _height - 8;
|
} else {
|
// 重新矫正一下位置坐标
|
var title_bg = Utils.createImage(container, null, 0, 0, cc.v2(0, 1), true, 0, true);
|
title_bg.type = cc.Sprite.Type.SLICED;
|
title_bg.sizeMode = cc.Sprite.SizeMode.CUSTOM;
|
title_bg.node.setContentSize(cc.size(617, 44));
|
var title = Utils.createLabel(26, this.color_1, null, 5, -title_bg.node.height * 0.5, data.title, title_bg.node, 0, cc.v2(0, 0.5));
|
this.loadRes(PathTool.getCommonIcomPath("common_90025"), function (resObject) {
|
title_bg.spriteFrame = resObject;
|
}.bind(this));
|
var content = Utils.createRichLabel(24, this.color_1, cc.v2(0, 1), cc.v2(0, 0), 30, 605);
|
content.horizontalAlign = cc.macro.TextAlignment.LEFT;
|
content.string = Utils.splitDataStr(data.desc);
|
container.addChild(content.node);
|
|
var _width = this.scroll_width - 8;
|
|
_height = title_bg.node.height + content.node.height;
|
container.setContentSize(cc.size(_width, _height));
|
title_bg.node.y = 0;
|
content.node.y = title_bg.node.y - title_bg.node.height - 8;
|
}
|
|
return {
|
container: container,
|
height: _height
|
};
|
},
|
closeCallBack: function closeCallBack() {
|
if (this.render_list) {
|
for (var i in this.render_list) {
|
gcore.Timer.del("render_list" + i);
|
}
|
}
|
|
this.cache_list = null;
|
this.title_str = null;
|
this.max_height = null;
|
this.ctrl.openCommonExplainView(false);
|
}
|
});
|
module.exports = CommonExplainWindow;
|
|
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcY29tbW9uXFxjb21tb25fZXhwbGFpbl93aW5kb3cuanMiXSwibmFtZXMiOlsiUGF0aFRvb2wiLCJyZXF1aXJlIiwiQ29tbW9uRXhwbGFpbldpbmRvdyIsImNjIiwiQ2xhc3MiLCJCYXNlVmlldyIsImN0b3IiLCJwcmVmYWJQYXRoIiwiZ2V0UHJlZmFiUGF0aCIsInZpZXdUYWciLCJTQ0VORV9UQUciLCJkaWFsb2d1ZSIsIndpbl90eXBlIiwiV2luVHlwZSIsIk1pbmkiLCJjdHJsIiwiYXJndW1lbnRzIiwiaW5pdENvbmZpZyIsIm1heF9oZWlnaHQiLCJjYWNoZV9saXN0IiwidGl0bGVfc3RyIiwiVXRpbHMiLCJUSTE4TiIsImNvbG9yXzEiLCJDb2xvciIsIm9wZW5DYWxsQmFjayIsImJhY2tncm91bmQiLCJyb290X3duZCIsImdldENoaWxkQnlOYW1lIiwic2NhbGUiLCJGSVRfU0NBTEUiLCJjb250YWluZXIiLCJjbG9zZV9idG4iLCJzY3JvbGxfdmlldyIsInNjcm9sbF9jb250ZW50Iiwic2Nyb2xsX3ZpZXdfY29tcGVuZCIsImdldENvbXBvbmVudCIsIlNjcm9sbFZpZXciLCJzY3JvbGxfd2lkdGgiLCJnZXRDb250ZW50U2l6ZSIsIndpZHRoIiwic2Nyb2xsX2hlaWdodCIsImhlaWdodCIsIndpbl90aXRsZSIsIkxhYmVsIiwic3RyaW5nIiwicmVnaXN0ZXJFdmVudCIsIm9uVG91Y2hFbmQiLCJvcGVuQ29tbW9uRXhwbGFpblZpZXciLCJiaW5kIiwib3BlblJvb3RXbmQiLCJ0bXBJbmZvIiwibGVuZ3RoIiwic2V0RGF0YUxpc3QiLCJsaXN0IiwicmVuZGVyX2xpc3QiLCJpIiwiZ2NvcmUiLCJUaW1lciIsInNldCIsInYiLCJjcmVhdGVMaXN0IiwiZGF0YSIsImluZm8iLCJjcmVhdGVUaXRsZUNvbnRlbnQiLCJhZGRDaGlsZCIsInB1c2giLCJNYXRoIiwibWF4Iiwic2V0Q29udGVudFNpemUiLCJzaXplIiwib2ZmX3kiLCJzZXRQb3NpdGlvbiIsInNjcm9sbFRvVG9wIiwiTm9kZSIsInNldEFuY2hvclBvaW50IiwidjIiLCJfaGVpZ2h0IiwidGl0bGUiLCJjb250ZW50IiwiY3JlYXRlUmljaExhYmVsIiwiaG9yaXpvbnRhbEFsaWduIiwibWFjcm8iLCJUZXh0QWxpZ25tZW50IiwiTEVGVCIsInNwbGl0RGF0YVN0ciIsImRlc2MiLCJub2RlIiwiX3dpZHRoIiwieSIsInRpdGxlX2JnIiwiY3JlYXRlSW1hZ2UiLCJ0eXBlIiwiU3ByaXRlIiwiVHlwZSIsIlNMSUNFRCIsInNpemVNb2RlIiwiU2l6ZU1vZGUiLCJDVVNUT00iLCJjcmVhdGVMYWJlbCIsImxvYWRSZXMiLCJnZXRDb21tb25JY29tUGF0aCIsInJlc09iamVjdCIsInNwcml0ZUZyYW1lIiwiY2xvc2VDYWxsQmFjayIsImRlbCIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUEsSUFBSUEsUUFBUSxHQUFHQyxPQUFPLENBQUMsVUFBRCxDQUF0Qjs7QUFFQSxJQUFJQyxtQkFBbUIsR0FBR0MsRUFBRSxDQUFDQyxLQUFILENBQVM7QUFDL0IsYUFBU0MsUUFEc0I7QUFHL0JDLEVBQUFBLElBQUksRUFBQyxnQkFBVTtBQUNYLFNBQUtDLFVBQUwsR0FBa0JQLFFBQVEsQ0FBQ1EsYUFBVCxDQUF1QixRQUF2QixFQUFpQyxxQkFBakMsQ0FBbEI7QUFDQSxTQUFLQyxPQUFMLEdBQWVDLFNBQVMsQ0FBQ0MsUUFBekIsQ0FGVyxDQUV1Qzs7QUFDbEQsU0FBS0MsUUFBTCxHQUFnQkMsT0FBTyxDQUFDQyxJQUF4QixDQUhXLENBR2lDOztBQUM1QyxTQUFLQyxJQUFMLEdBQVlDLFNBQVMsQ0FBQyxDQUFELENBQXJCO0FBQ0gsR0FSOEI7QUFVL0I7QUFDQUMsRUFBQUEsVUFBVSxFQUFDLHNCQUFVO0FBQ2pCLFNBQUtDLFVBQUwsR0FBa0IsQ0FBbEI7QUFDQSxTQUFLQyxVQUFMLEdBQWtC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LHlCQUFZO0FBQ3ZCLFFBQUcsS0FBS2pELFdBQVIsRUFBb0I7QUFDaEIsV0FBSSxJQUFJQyxDQUFSLElBQWEsS0FBS0QsV0FBbEIsRUFBOEI7QUFDMUJFLFFBQUFBLEtBQUssQ0FBQ0MsS0FBTixDQUFZK0MsR0FBWixDQUFnQixnQkFBY2pELENBQTlCO0FBQ0g7QUFDSjs7QUFDRCxTQUFLckMsVUFBTCxHQUFpQixJQUFqQjtBQUNBLFNBQUtDLFNBQUwsR0FBaUIsSUFBakI7QUFDQSxTQUFLRixVQUFMLEdBQWtCLElBQWxCO0FBQ0EsU0FBS0gsSUFBTCxDQUFVaUMscUJBQVYsQ0FBZ0MsS0FBaEM7QUFDSDtBQW5JOEIsQ0FBVCxDQUExQjtBQXNJQTBELE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQnpHLG1CQUFqQiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBhdXRob3I6IHNoaXJhaG9Ac3lnLmNvbSjlv4XloassIOWIm+W7uuaooeWdl+eahOS6uuWRmClcbi8vIEBkZXNjcmlwdGlvbjpcbi8vICAgICAg6YCa55So55qE6KeE5YiZ6K+05piO6Z2i5p2/LOWPqumcgOimgeS8oOWbuuWumuagvOW8j+eahOWwseihjOS6hlxuLy8gPGJyLz5DcmVhdGU6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxudmFyIFBhdGhUb29sID0gcmVxdWlyZShcInBhdGh0b29sXCIpO1xuXG52YXIgQ29tbW9uRXhwbGFpbldpbmRvdyA9IGNjLkNsYXNzKHtcbiAgICBleHRlbmRzOiBCYXNlVmlldyxcblxuICAgIGN0b3I6ZnVuY3Rpb24oKXtcbiAgICAgICAgdGhpcy5wcmVmYWJQYXRoID0gUGF0aFRvb2wuZ2V0UHJlZmFiUGF0aChcImNvbW1vblwiLCBcImNvbW1vbl9leHBsYWluX3ZpZXdcIik7XG4gICAgICAgIHRoaXMudmlld1RhZyA9IFNDRU5FX1RBRy5kaWFsb2d1ZTsgICAgICAgICAgICAgICAgLy/or6XnqpfkvZPmiYDlsZ51aeWxgue6pyzlhajlsY91aemcgOimgeWcqHVp5bGCLOmdnuWFqOWxj3Vp5ZyoZGlhbG9ndWXlsYIs6L+Z5Liq6KaB5rOo5oSPXG4gICAgICAgIHRoaXMud2luX3R5cGUgPSBXaW5UeXBlLk1pbmk7ICAgICAgICAgICAgICAgLy/mmK/lkKbmmK/lhajlsY/nqpfkvZMgIFdpblR5cGUuRnVsbCwgV2luVHlwZS5CaWcsIFdpblR5cGUuTWluaSwgV2luVHlwZS5UaXBzXG4gICAgICAgIHRoaXMuY3RybCA9IGFyZ3VtZW50c1swXTtcbiAgICB9LFxuXG4gICAgLy8g5Yid5aeL5YyW5LiA5Lqb6YWN572u5pWw5o2uLOWPr+S7peeUqOS6juWjsOaYjuS4gOS6m+WPmOmHj+S5i+exu+eahFxuICAgIGluaXRDb25maWc6ZnVuY3Rpb24oKXtcbiAgICAgICAgdGhpcy5tYXhfaGVpZ2h0ID0gMDtcbiAgICAgICAgdGhpcy5jYWNoZV9saXN0ID0gW107XG4gICAgICAgIHRoaXMudGl0bGVfc3RyID0gVXRpbHMuVEkxOE4oXCLop4TliJlcIik7XG4gICAgICAgIHRoaXMuY29sb3JfMSA9IG5ldyBjYy5Db2xvcigweDY4LDB4NDUsMHgyYSwgMHhmZik7XG4gICAgfSxcblxuICAgIG9wZW5DYWxsQmFjazogZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLmJhY2tncm91bmQgPSB0aGlzLnJvb3Rfd25kLmdldENoaWxkQnlOYW1lKFwiYmFja2dyb3VuZFwiKTtcbiAgICAgICAgdGhpcy5iYWNrZ3JvdW5kLnNjYWxlID0gRklUX1NDQUxFO1xuICAgICAgICB0aGlzLmNvbnRhaW5lciA9IHRoaXMucm9vdF93bmQuZ2V0Q2hpbGRCeU5hbWUoXCJjb250YWluZXJcIik7XG4gICAgICAgIHRoaXMuY2xvc2VfYnRuID0gdGhpcy5jb250YWluZXIuZ2V0Q2hpbGRCeU5hbWUoXCJjbG9zZV9idG5cIik7XG4gICAgICAgIHRoaXMuc2Nyb2xsX3ZpZXcgPSB0aGlzLmNvbnRhaW5lci5nZXRDaGlsZEJ5TmFtZShcInNjcm9sbF92aWV3XCIpO1xuICAgICAgICB0aGlzLnNjcm9sbF9jb250ZW50ID0gdGhpcy5zY3JvbGxfdmlldy5nZXRDaGlsZEJ5TmFtZShcImNvbnRlbnRcIik7XG4gICAgICAgIHRoaXMuc2Nyb2xsX3ZpZXdfY29tcGVuZCA9IHRoaXMuc2Nyb2xsX3ZpZXcuZ2V0Q29tcG9uZW50KGNjLlNjcm9sbFZpZXcpXG5cbiAgICAgICAgdGhpcy5zY3JvbGxfd2lkdGggPSB0aGlzLnNjcm9sbF92aWV3LmdldENvbnRlbnRTaXplKCkud2lkdGg7XG4gICAgICAgIHRoaXMuc2Nyb2xsX2hlaWdodCA9IHRoaXMuc2Nyb2xsX3ZpZXcuZ2V0Q29udGVudFNpemUoKS5oZWlnaHQ7XG4gICAgICAgIHRoaXMud2luX3RpdGxlID0gdGhpcy5jb250YWluZXIuZ2V0Q2hpbGRCeU5hbWUoXCJ3aW5fdGl0bGVcIikuZ2V0Q29tcG9uZW50KGNjLkxhYmVsKTtcbiAgICAgICAgdGhpcy53aW5fdGl0bGUuc3RyaW5nID0gdGhpcy50aXRsZV9zdHI7XG4gICAgfSxcblxuICAgIHJlZ2lzdGVyRXZlbnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgVXRpbHMub25Ub3VjaEVuZCh0aGlzLmJhY2tncm91bmQsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHRoaXMuY3RybC5vcGVuQ29tbW9uRXhwbGFpblZpZXcoZmFsc2UpO1xuICAgICAgICB9LmJpbmQodGhpcyksIDIpO1xuXG4gICAgICAgIFV0aWxzLm9uVG91Y2hFbmQodGhpcy5jbG9zZV9idG4sIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHRoaXMuY3RybC5vcGVuQ29tbW9uRXhwbGFpblZpZXcoZmFsc2UpO1xuICAgICAgICB9LmJpbmQodGhpcyksIDIpO1xuICAgIH0sXG5cbiAgICBvcGVuUm9vdFduZDogZnVuY3Rpb24odG1wSW5mbykge1xuICAgICAgICBpZih0bXBJbmZvICYmIHRtcEluZm8ubGVuZ3RoPj0yKXtcbiAgICAgICAgICAgIHRoaXMudGl0bGVfc3RyID0gdG1wSW5mb1sxXTtcbiAgICAgICAgICAgIHRoaXMuc2V0RGF0YUxpc3QodG1wSW5mb1swXSlcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBzZXREYXRhTGlzdDpmdW5jdGlvbihsaXN0KXtcbiAgICAgICAgdGhpcy5yZW5kZXJfbGlzdCA9IGxpc3Q7XG4gICAgICAgIGZvcih2YXIgaSBpbiB0aGlzLnJlbmRlcl9saXN0KXtcbiAgICAgICAgICAgIGdjb3JlLlRpbWVyLnNldChmdW5jdGlvbiAodikge1xuICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTGlzdCh2KTtcbiAgICAgICAgICAgIH0uYmluZCh0aGlzLHRoaXMucmVuZGVyX2xpc3RbaV0pLCBpIC8gNjAsIDEsXCJyZW5kZXJfbGlzdFwiK2kpO1xuICAgICAgICB9XG4gICAgfSxcblxuICAgIGNyZWF0ZUxpc3Q6ZnVuY3Rpb24oZGF0YSl7XG4gICAgICAgIHZhciBpbmZvID0gdGhpcy5jcmVhdGVUaXRsZUNvbnRlbnQoZGF0YSk7XG4gICAgICAgIHRoaXMuc2Nyb2xsX2NvbnRlbnQuYWRkQ2hpbGQoaW5mby5jb250YWluZXIpO1xuXG4gICAgICAgIHRoaXMuY2FjaGVfbGlzdC5wdXNoKGluZm8uY29udGFpbmVyKTtcbiAgICAgICAgdGhpcy5tYXhfaGVpZ2h0ID0gdGhpcy5tYXhfaGVpZ2h0ICsgaW5mby5oZWlnaHQgKyAzMDtcblxuICAgICAgICB2YXIgbWF4X2hlaWdodCA9IE1hdGgubWF4KHRoaXMubWF4X2hlaWdodCwgdGhpcy5zY3JvbGxfaGVpZ2h0KVxuICAgICAgICB0aGlzLnNjcm9sbF9jb250ZW50LnNldENvbnRlbnRTaXplKGNjLnNpemUodGhpcy5zY3JvbGxfd2lkdGgsIG1heF9oZWlnaHQpKTtcbiAgICAgICAgdmFyIG9mZl95ID0gMDtcbiAgICAgICAgZm9yKHZhciBpIGluIHRoaXMuY2FjaGVfbGlzdCl7XG4gICAgICAgICAgICB0aGlzLmNhY2hlX2xpc3RbaV0uc2V0UG9zaXRpb24oOCwgbWF4X2hlaWdodC1vZmZfeSk7XG4gICAgICAgICAgICBvZmZfeSA9IG9mZl95ICsgdGhpcy5jYWNoZV9saXN0W2ldLmdldENvbnRlbnRTaXplKCkuaGVpZ2h0ICsgMzBcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNjcm9sbF92aWV3X2NvbXBlbmQuc2Nyb2xsVG9Ub3AoMCk7XG4gICAgfSxcblxuICAgIGNyZWF0ZVRpdGxlQ29udGVudDpmdW5jdGlvbihkYXRhKXtcbiAgICAgICAgaWYoZGF0YSA9PSBudWxsKXJldHVybjtcbiAgICAgICAgdmFyIGNvbnRhaW5lciA9IG5ldyBjYy5Ob2RlKCk7XG4gICAgICAgIGNvbnRhaW5lci5zZXRBbmNob3JQb2ludChjYy52MigwLCAxKSk7XG5cbiAgICAgICAgdmFyIF9oZWlnaHQgPSAwO1xuICAgICAgICBpZihkYXRhLnRpdGxlID09IFwiIFwiIHx8IGRhdGEudGl0bGUgPT0gXCJcIil7XG4gICAgICAgICAgICB2YXIgY29udGVudCA9IFV0aWxzLmNyZWF0ZVJpY2hMYWJlbCgyNCwgdGhpcy5jb2xvcl8xLCBjYy52MigwLCAxKSwgY2MudjIoMCwgMCksMzAsNjA1KTtcbiAgICAgICAgICAgIGNvbnRlbnQuaG9yaXpvbnRhbEFsaWduID0gY2MubWFjcm8uVGV4dEFsaWdubWVudC5MRUZUO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBjb250ZW50LnN0cmluZyA9IFV0aWxzLnNwbGl0RGF0YVN0cihkYXRhLmRlc2MpO1xuICAgICAgICAgICAgY29udGFpbmVyLmFkZENoaWxkKGNvbnRlbnQubm9kZSk7XG4gICAgICAgICAgICB2YXIgX3dpZHRoID0gdGhpcy5zY3JvbGxfd2lkdGggLSA4O1xuICAgICAgICAgICAgX2hlaWdodCA9IGNvbnRlbnQubm9kZS5nZXRDb250ZW50U2l6ZSgpLmhlaWdodFxuICAgICAgICAgICAgY29udGFpbmVyLm5vZGUuc2V0Q29udGVudFNpemUoY2Muc2l6ZShfd2lkdGgsIF9oZWlnaHQpKVxuICAgICAgICAgICAgY29udGVudC5ub2RlLnkgPSBfaGVpZ2h0IC0gODtcbiAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICAvLyAg6YeN5paw55+r5q2j5LiA5LiL5L2N572u5Z2Q5qCHXG4gICAgICAgICAgICB2YXIgdGl0bGVfYmcgPSBVdGlscy5jcmVhdGVJbWFnZShjb250YWluZXIsIG51bGwsIDAsIDAsIGNjLnYyKDAsMSksIHRydWUsIDAsIHRydWUpO1xuICAgICAgICAgICAgdGl0bGVfYmcudHlwZSA9IGNjLlNwcml0ZS5UeXBlLlNMSUNFRDtcbiAgICAgICAgICAgIHRpdGxlX2JnLnNpemVNb2RlID0gY2MuU3ByaXRlLlNpemVNb2RlLkNVU1RPTTtcbiAgICAgICAgICAgIHRpdGxlX2JnLm5vZGUuc2V0Q29udGVudFNpemUoY2Muc2l6ZSg2MTcsIDQ0KSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHZhciB0aXRsZSA9IFV0aWxzLmNyZWF0ZUxhYmVsKDI2LHRoaXMuY29sb3JfMSxudWxsLDUsLXRpdGxlX2JnLm5vZGUuaGVpZ2h0ICogMC41LGRhdGEudGl0bGUsdGl0bGVfYmcubm9kZSwwLGNjLnYyKDAsMC41KSk7XG4gICAgICAgICAgICB0aGlzLmxvYWRSZXMoUGF0aFRvb2wuZ2V0Q29tbW9uSWNvbVBhdGgoXCJjb21tb25fOTAwMjVcIiksIChmdW5jdGlvbihyZXNPYmplY3Qpe1xuICAgICAgICAgICAgICAgIHRpdGxlX2JnLnNwcml0ZUZyYW1lID0gcmVzT2JqZWN0O1xuICAgICAgICAgICAgfSkuYmluZCh0aGlzKSk7XG5cbiAgICAgICAgICAgIHZhciBjb250ZW50ID0gVXRpbHMuY3JlYXRlUmljaExhYmVsKDI0LCB0aGlzLmNvbG9yXzEsIGNjLnYyKDAsIDEpLCBjYy52MigwLCAwKSwzMCw2MDUpO1xuICAgICAgICAgICAgY29udGVudC5ob3Jpem9udGFsQWxpZ24gPSBjYy5tYWNyby5UZXh0QWxpZ25tZW50LkxFRlQ7XG4gICAgICAgICAgICBjb250ZW50LnN0cmluZyA9IFV0aWxzLnNwbGl0RGF0YVN0cihkYXRhLmRlc2MpXG4gICAgICAgICAgICBjb250YWluZXIuYWRkQ2hpbGQoY29udGVudC5ub2RlKTtcblxuICAgICAgICAgICAgdmFyIF93aWR0aCA9IHRoaXMuc2Nyb2xsX3dpZHRoIC0gODtcbiAgICAgICAgICAgIF9oZWlnaHQgPSB0aXRsZV9iZy5ub2RlLmhlaWdodCArIGNvbnRlbnQubm9kZS5oZWlnaHQ7XG4gICAgICAgICAgICBjb250YWluZXIuc2V0Q29udGVudFNpemUoY2Muc2l6ZShfd2lkdGgsIF9oZWlnaHQpKVxuXG5cbiAgICAgICAgICAgIHRpdGxlX2JnLm5vZGUueSA9IDA7XG4gICAgICAgICAgICBjb250ZW50Lm5vZGUueSA9IHRpdGxlX2JnLm5vZGUueSAtIHRpdGxlX2JnLm5vZGUuaGVpZ2h0IC0gODtcblxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7Y29udGFpbmVyOmNvbnRhaW5lciwgaGVpZ2h0Ol9oZWlnaHR9O1xuICAgIH0sXG5cbiAgICBjbG9zZUNhbGxCYWNrOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmKHRoaXMucmVuZGVyX2xpc3Qpe1xuICAgICAgICAgICAgZm9yKHZhciBpIGluIHRoaXMucmVuZGVyX2xpc3Qpe1xuICAgICAgICAgICAgICAgIGdjb3JlLlRpbWVyLmRlbChcInJlbmRlcl9saXN0XCIraSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jYWNoZV9saXN0PSBudWxsO1xuICAgICAgICB0aGlzLnRpdGxlX3N0ciA9IG51bGw7XG4gICAgICAgIHRoaXMubWF4X2hlaWdodCA9IG51bGw7XG4gICAgICAgIHRoaXMuY3RybC5vcGVuQ29tbW9uRXhwbGFpblZpZXcoZmFsc2UpO1xuICAgIH0sXG59KTtcblxubW9kdWxlLmV4cG9ydHMgPSBDb21tb25FeHBsYWluV2luZG93O1xuIl19
|