/*! ThunderX BY LUOCHENZHIMU */
/*! Last updated on 2018/10/02 */
/*! For license information please see LICENSES */
webpackJsonp([0, 1, 2, 3, 4], {
	"+3xp": function (t, e, i) {
		"use strict";
		var n = i("M9xP"),
			o = i("jrzI"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlMessage.vue", e.a = a.exports
	},
	"+8Mh": function (t, e, i) {
		"use strict";
		var n = i("yDtN"),
			o = (i.n(n), i("/8Fg")),
			a = i("s+fl"),
			s = i("BrXJ");
		e.a = {
			props: {
				curTask: {
					type: Object,
					required: !0
				},
				operate: {
					type: Function,
					required: !0
				},
				setTask: {
					type: Function,
					required: !0
				}
			},
			filters: {
				duration: function () {
					var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0,
						e = Math.floor(t / 3600),
						i = Math.floor((t - 3600 * e) / 60),
						n = t - 3600 * e - 60 * i;
					return Object(a.a)(e, 2) + ":" + Object(a.a)(i, 2) + ":" + Object(a.a)(n, 2)
				}
			},
			data: function () {
				return {
					noteEditing: !1,
					noteDraft: "",
					copyTipText: "复制"
				}
			},
			computed: {
				fileSize: function () {
					return this.$sget(this.curTask, "size")
				},
				savePath: function () {
					return this.$sget(this.curTask, "savePath")
				},
				note: {
					set: function (t) {
						this.noteDraft = t
					},
					get: function () {
						return this.noteEditing ? this.noteDraft : this.$sget(this.curTask, "note")
					}
				},
				shouldShowMd5: function () {
					return ["8", "10"].includes(this.$sget(this.curTask, "status")) || "20" === this.$sget(this.curTask, "status") && 100 == this.$sget(this.curTask, "progress")
				}
			},
			watch: {
				"curTask.taskID": {
					handler: function (t) {
						this.getMd5(t)
					},
					immediate: !0
				},
				"curTask.status": {
					handler: function (t) {
						this.getMd5(this.$sget(this.curTask, "taskID"))
					},
					immediate: !0
				}
			},
			components: {
				XlPropertyItem: s.a
			},
			methods: {
				copyInfoId: function () {
					var t = this;
					this.copyToClipboard(this.$sget(this.curTask, "infoId")), this.copyTipText = "复制成功", setTimeout(function () {
						return t.copyTipText = "复制"
					}, 1e3)
				},
				openSavePath: function () {
					Object(o.a)("ShellOpen", this.savePath)
				},
				getMd5: function (t) {
					var e = this;
					this.shouldShowMd5 && !this.curTask.md5 && Object(o.a)("GetFileMd5", this.savePath + "\\" + this.$sget(this.curTask, "name")).then(function (i) {
						e.setTask({
							taskID: t,
							taskInfo: {
								md5: i
							}
						})
					})
				},
				copyToClipboard: function (t) {
					if (window.clipboardData && window.clipboardData.setData) return clipboardData.setData("Text", t);
					if (document.queryCommandSupported && document.queryCommandSupported("copy")) {
						var e = document.createElement("textarea");
						e.textContent = t, e.style.position = "fixed", document.body.appendChild(e), e.select();
						try {
							return document.execCommand("copy")
						} catch (t) {
							return !1
						} finally {
							document.body.removeChild(e)
						}
					}
				}
			}
		}
	},
	"+9BZ": function (t, e, i) {
		t.exports = i.p + "img/spr-emoji.9ac75cc.png"
	},
	"+lnq": function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".xlx-file-list .td-tree-node__image-icon{margin:0 auto}.xlx-file-list .td-table__header{padding-right:6px}.xlx-file-list .td-tree-node{max-width:calc(100% - 10px);margin-right:5px;box-sizing:border-box}.xlx-file-list .td-checkbox.is-disabled .td-checkbox__label{color:var(--color-default)}.xlx-file-list .td-tree-node__image-icon{background:transparent}.xlx-file-list .td-button{margin-right:5px}.xlx-file-list .td-table__body-wrapper{max-height:369px}.xlx-file-list .td-table-tree__row.is-deleted .td-tree-node__image-icon{opacity:.5}.xlx-file-list .td-table-tree__row.is-deleted .td-tree-node__label,.xlx-file-list .td-table-tree__row.is-deleted .xlx-file-list__size,.xlx-file-list .td-table-tree__row.is-deleted .xlx-file-list__status{color:var(--color-primary-gray-2)}.xlx-file-list__column-2{width:90px}.xlx-file-list__size,.xlx-file-list__status{margin:0 10px}.xlx-file-list .xlx-file-list__status .is-error{color:var(--color-danger-1)}.xlx-file-list a.xlx-file-list__status{color:var(--color-primary)}.xlx-file-list a.xlx-file-list__status:hover{color:var(--color-primary-hover)}", ""])
	},
	"+mx3": function (t, e, i) {
		"use strict";
		var n = i("d7EF"),
			o = i.n(n),
			a = i("fZjL"),
			s = i.n(a),
			r = i("gRE1"),
			c = i.n(r),
			l = i("u2KI"),
			p = i.n(l),
			d = i("fs20");
		e.a = {
			data: function () {
				return {
					width: 0,
					height: 0,
					drawFn: function () {}
				}
			},
			props: {
				options: {
					type: Array,
					default: function () {
						return []
					}
				},
				step: {
					default: 1,
					type: Number
				},
				paddingTopPercent: {
					default: 0,
					type: Number
				},
				paddingBottomPercent: {
					default: 0,
					type: Number
				},
				type: {
					default: "bSpline",
					type: String
				},
				scale: {
					default: Math.max(window.devicePixelRatio, 2),
					type: Number
				},
				domReady: {
					default: !1,
					type: Boolean
				}
			},
			watch: {
				options: {
					immediate: !0,
					handler: function () {
						var t = this;
						if (this.clearCanvas(), this.domReady) this.$nextTick(function () {
							return t.draw()
						});
						else var e = this.$watch("domReady", function (i) {
							i && (t.$nextTick(function () {
								return t.draw()
							}), e())
						})
					}
				}
			},
			computed: {
				filteredData: function () {
					return p()(this.filterData(this.options))
				},
				maxValue: function () {
					var t = Array.prototype.concat.apply([], this.filteredData.map(function (t) {
						return c()(t)
					}));
					return this.getMaxValue(t)
				},
				transformedData: function () {
					var t = this;
					return p()(this.filteredData.map(function (e) {
						return t.transformData(e)
					}))
				},
				labels: function () {
					var t = this;
					return p()(this.transformedData.map(function (e, i) {
						if (t.options[i].label && e.length) {
							var n = e[e.length - 1];
							return {
								x: n.x / t.scale,
								y: n.y / t.scale,
								value: n.yValue
							}
						}
						return null
					}))
				}
			},
			mounted: function () {
				var t = this;
				this.draw(), this.drawFn = function () {
					t.draw(), t.draw()
				}, window.addEventListener("resize", this.drawFn)
			},
			beforeDestroy: function () {
				window.removeEventListener("resize", this.drawFn)
			},
			methods: {
				draw: function () {
					var t = this,
						e = this.$refs.dataChart;
					this.width = parseInt(this.$refs.canvasBox.clientWidth) * this.scale, this.height = parseInt(this.$refs.canvasBox.clientHeight - 20) * this.scale, e.setAttribute("width", this.width), e.setAttribute("height", this.height);
					e.height;
					if (e.getContext) {
						var i = e.getContext("2d");
						this.options.forEach(function (e, n) {
							var o = void 0,
								a = t.transformedData[n];
							switch (t.type) {
								case "line":
									o = t.lineRender(a);
									break;
								case "bSpline":
									o = t.bSplineRender(a);
									break;
								default:
									o = t.bSplineRender(a)
							}
							e.lineColorStart && e.lineColorEnd && t.drawLine(i, a, e.lineColorStart, e.lineColorEnd, e.lineWidth || 1, o), e.gradientColorStart && e.gradientColorEnd && t.drawGradient(i, a, e.gradientColorStart, e.gradientColorEnd, o)
						})
					}
				},
				filterData: function (t) {
					var e = this;
					return t.map(function (t) {
						var i = {};
						return s()(t.data).forEach(function (n, o, a) {
							n % e.step != 0 && n !== a.length || (i[n] = t.data[n])
						}), i
					})
				},
				transformData: function () {
					var t = this,
						e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
					return s()(e).map(function (t) {
						return parseInt(t)
					}).sort(function (t, e) {
						return t - e
					}).map(function (i) {
						return {
							xValue: i,
							yValue: parseInt(e[i]),
							x: t.width * i / 100,
							y: t.height * t.paddingTopPercent / 100 + t.height * (100 - t.paddingTopPercent - t.paddingBottomPercent) / 100 * (1 - parseInt(e[i]) / (t.maxValue || 1))
						}
					})
				},
				getMaxValue: function () {
					var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [];
					return (t = t.map(function (t) {
						return parseInt(t)
					}).sort(function (t, e) {
						return t - e
					}))[t.length - 1]
				},
				drawLine: function (t, e, i, n, o, a) {
					if (e.length) {
						t.lineWidth = o * this.scale, t.beginPath(), t.moveTo(e[0].x, e[0].y), this.renderPath(t, a);
						var s = t.createLinearGradient(0, 0, e[e.length - 1].x, 0);
						s.addColorStop(0, i), s.addColorStop(1, n), t.strokeStyle = s, t.stroke()
					}
				},
				drawGradient: function (t, e, i, n, o) {
					if (e.length) {
						t.beginPath(), t.moveTo(e[0].x, e[0].y), this.renderPath(t, o);
						var a = e.length - 1;
						t.lineTo(e[a].x, this.height), t.lineTo(e[0].x, this.height), t.lineTo(e[0].x, e[0].y);
						var s = t.createLinearGradient(0, 0, 0, this.height);
						s.addColorStop(0, i), s.addColorStop(1, n), t.fillStyle = s, t.closePath(), t.fill()
					}
				},
				lineRender: function (t) {
					return t
				},
				bSplineRender: function (t) {
					return new d.a({
						degree: 3,
						points: t,
						tessellation: this.width
					}).curvePoints.map(function (t) {
						var e = o()(t, 2);
						return {
							x: e[0],
							y: e[1]
						}
					})
				},
				renderPath: function (t, e) {
					for (var i = 0; i < e.length; i++) 0 == i ? t.moveTo(e[i].x, e[i].y) : t.lineTo(e[i].x, e[i].y)
				},
				clearCanvas: function () {
					var t = this.$refs.dataChart;
					t && t.getContext && t.getContext("2d").clearRect(0, 0, this.width, this.height)
				}
			}
		}
	},
	"+yHD": function (t, e, i) {
		t.exports = i.p + "img/ani-per.15762a9.png"
	},
	"/TYz": function (t, e, i) {
		"use strict";
		Object.defineProperty(e, "__esModule", {
			value: !0
		});
		var n = i("vYBg"),
			o = i("iA8U"),
			a = !1;
		var s = function (t) {
				a || (i("BeZZ"), i("trdz"), i("jMFR"), i("2si4"))
			},
			r = i("VU/8")(n.a, o.a, !1, s, null, null);
		r.options.__file = "pages\\index.vue", e.default = r.exports
	},
	"/t4/": function (t, e, i) {
		t.exports = i.p + "img/spr-vip-icon-2x.5691a4a.png"
	},
	"01Sk": function (t, e, i) {
		t.exports = i.p + "img/spr-header.6405a43.png"
	},
	"0X07": function (t, e, i) {
		var n = i("OCsU");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("e93a999e", n, !1)
	},
	"15IW": function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	"1Z8a": function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return t.visible ? i("div", {
				staticClass: "pop-opt"
			}, [i("p", {
				staticClass: "txt-del"
			}, [i("span", {
				staticClass: "ico-s-note"
			}), t._t("default")], 2), i("div", {
				staticClass: "pop-opt-btn"
			}, [i("a", {
				attrs: {
					href: "javascript:;"
				},
				on: {
					click: function (e) {
						t.handleClick("ok")
					}
				}
			}, [t._v("确定")]), i("a", {
				attrs: {
					href: "javascript:;"
				},
				on: {
					click: function (e) {
						t.handleClick("cancel")
					}
				}
			}, [t._v("取消")])])]) : t._e()
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	"1wyJ": function (t, e, i) {
		t.exports = i.p + "img/spr-emoji-x2.758c511.png"
	},
	"2cjX": function (t, e, i) {
		"use strict";
		e.a = {
			inject: ["tabsVm"],
			props: {
				label: String,
				name: String
			}
		}
	},
	"2iyD": function (t, e, i) {
		t.exports = i.p + "img/icon-new.51d7f0a.png"
	},
	"2si4": function (t, e, i) {
		var n = i("HVv1");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("fd51d6b2", n, !1)
	},
	"2v4Z": function (t, e, i) {
		"use strict";
		var n = i("yxXY"),
			o = i("7udH"),
			a = i.n(o);
		e.a = n.a.connect({
			mapStateToProps: {
				recommendReviewList: function (t, e) {
					return a()(t.reviews, e.category, "list") || []
				}
			},
			mapDispatchToProps: {
				getReviewList: "reviews/getList",
				getDownloadRecommend: "reviews/getDownloadRecommend"
			},
			mapCommitToProps: {
				setSelectArg: "reviews/setSelectArg"
			}
		})
	},
	"2yaw": function (t, e, i) {
		var n = i("UFZ5");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("67b8d418", n, !1)
	},
	"37pH": function (t, e, i) {
		"use strict";
		var n = i("S9bK"),
			o = i("xPuQ"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\recommend\\XlRecommend.vue", e.a = a.exports
	},
	"3IkN": function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, "a[data-v-64c66bef]{transition:transform .2s linear}", ""])
	},
	"3kJ9": function (t, e, i) {
		var n = i("kxFB");
		(t.exports = i("FZ+f")(!1)).push([t.i, "@font-face{font-family:xlx-icon;-webkit-font-smoothing:antialiased;src:url(" + n(i("8Xly")) + ') format("truetype")}[class*=" xlx-icon-"],[class^=xlx-icon]{font-family:xlx-icon!important;font-size:16px;font-style:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.xlx-icon-download-play:before{content:"\\E627"}.xlx-icon-lock:before{content:"\\E628"}.xlx-icon-play:before{content:"\\E629"}.xlx-icon-clear:before{content:"\\E62A"}.xlx-icon-pause:before{content:"\\E62B"}.xlx-icon-delete:before{content:"\\E62C"}.xlx-icon-time:before{content:"\\E62D"}.xlx-icon-file:before{content:"\\E62E"}.xlx-icon-restore:before{content:"\\E62F"}.xlx-icon-download:before{content:"\\E630"}.xlx-icon-nav-new:before{content:"\\E64A"}.xlx-icon-nav-file:before{content:"\\E64B"}.xlx-icon-nav-clear:before{content:"\\E64C"}.xlx-icon-nav-rubbish:before{content:"\\E64D"}.xlx-icon-nav-vip:before{content:"\\E64E"}.xlx-icon-nav-lock:before{content:"\\E64F"}.xlx-icon-nav-folder:before{content:"\\E650"}.xlx-icon-nav-restore:before{content:"\\E651"}.xlx-icon-nav-home:before{content:"\\E652"}.xlx-icon-nav-more:before{content:"\\E653"}.xlx-icon-nav-delete:before{content:"\\E654"}.xlx-icon-nav-down:before{content:"\\E655"}.xlx-icon-nav-computer:before{content:"\\E656"}.xlx-icon-nav-pause:before{content:"\\E657"}.xlx-icon-menu:before{content:"\\E68B"}.xlx-icon-close:before{content:"\\E68C"}.xlx-icon-minimize:before{content:"\\E68D"}.xlx-icon-maximize:before{content:"\\E68E"}.xlx-icon-maximize.is-active:before{content:"\\E69C"}.xlx-icon-tips-download:before{content:"\\E616"}.xlx-icon-tips-upload:before{content:"\\E615"}.xlx-icon-crown:before{content:"\\E635"}.xlx-icon-file-hover:before{content:"\\E636"}.xlx-icon-delete-hover:before{content:"\\E637"}.xlx-icon-comment-hover:before{content:"\\E638"}.xlx-icon-message:before{content:"\\E63A"}.xlx-icon-quote{font-size:10px;vertical-align:6px}.xlx-icon-quote:before{content:"\\E63B"}.xlx-icon-file-comment:before{content:"\\E63C"}.xlx-icon-comment:before{content:"\\E63D"}.xlx-icon-send:before{content:"\\E63E"}.xlx-icon-praise:before{content:"\\E63F"}.xlx-icon-top:before{content:"\\E640"}.xlx-icon-praise-done:before{content:"\\E641"}.xlx-icon-face:before{content:"\\E642"}.xlx-icon-delete-comment:before{content:"\\E643"}.xlx-icon-success:before{content:"\\E644"}.xlx-icon-fail:before{content:"\\E645"}.xlx-icon-help:before{content:"\\E646"}.xlx-icon-note:before{content:"\\E647"}.xlx-icon-refresh:before{content:"\\E648"}.is-active .xlx-icon-praise{color:var(--color-primary)}.is-active .xlx-icon-praise:before{content:"\\E641"}.is-active .xlx-icon-comment,.is-active .xlx-icon-delete{color:var(--color-primary)}.is-active .xlx-icon-comment:before{content:"\\E638"}.is-hot .xlx-icon-praise{color:var(--color-danger-1)}.xlx-icon-girl{color:#ff7cb6}.xlx-icon-girl:before{content:"\\E626"}.xlx-icon-boy{color:#69f}.xlx-icon-boy:before{content:"\\E631"}.xlx-icon-dialog-play:before{content:"\\E69E"}.xlx-icon-dialog-open:before{content:"\\E69F"}.xlx-icon-message-bookmarks:before{content:"\\E692"}.xlx-icon-search-bookmarks:before{content:"\\E694"}.xlx-icon-more-bookmarks:before{content:"\\E695"}.xlx-icon-net:before{content:"\\E696"}.xlx-icon-file-bookmarks{color:#ffdf8b}.xlx-icon-file-bookmarks:before{content:"\\E697"}.xlx-icon-fav{color:#ff9c1a}.xlx-icon-fav:before{content:"\\E698"}.xlx-icon-fav.is-checked:before{content:"\\E699"}.xlx-icon-new:before{content:"\\E69A"}.xlx-icon-new-file{margin-right:5px}.xlx-icon-new-file:before{content:"\\E69B"}.xlx-icon-unfold:before{content:"\\E69D"}.xlx-icon-browser-chrome,.xlx-icon-browser-ie{display:block;width:35px;height:32px;margin:0 auto 10px;background:url(' + n(i("Xo+z")) + ') no-repeat;background-size:70px auto}.xlx-icon-browser-chrome{background-position:-35px 0}.xlx-icon-replace:before{color:#ff9c1a;content:"\\E6C3"}.xlx-icon-skip:before{color:#00b36a;content:"\\E6C4"}.xlx-icon-not-operate:before{color:gray;content:"\\E6C5"}.xlx-icon-type{display:block;width:32px;height:32px;background:url(' + n(i("RevU")) + ") -560px 0 no-repeat;background-size:1085px auto}.xlx-icon-type-apk{background-position:0 0}.xlx-icon-type-avi{background-position:-35px 0}.xlx-icon-type-bt-link{background-position:-70px 0}.xlx-icon-type-bt-file{background-position:-105px 0}.xlx-icon-type-chm{background-position:-140px 0}.xlx-icon-type-doc{background-position:-175px 0}.xlx-icon-type-exe{background-position:-210px 0}.xlx-icon-type-install{background-position:-245px 0}.xlx-icon-type-flv{background-position:-280px 0}.xlx-icon-type-ipa{background-position:-315px 0}.xlx-icon-type-ipsw{background-position:-350px 0}.xlx-icon-type-iso{background-position:-385px 0}.xlx-icon-type-mkv{background-position:-420px 0}.xlx-icon-type-mov{background-position:-455px 0}.xlx-icon-type-mp4{background-position:-490px 0}.xlx-icon-type-mpg{background-position:-525px 0}.xlx-icon-type-unknown{background-position:-560px 0}.xlx-icon-type-pdf{background-position:-595px 0}.xlx-icon-type-pic{background-position:-630px 0}.xlx-icon-type-ppt{background-position:-665px 0}.xlx-icon-type-rar{background-position:-700px 0}.xlx-icon-type-rm{background-position:-735px 0}.xlx-icon-type-rmvb{background-position:-770px 0}.xlx-icon-type-group{background-position:-805px 0}.xlx-icon-type-txt{background-position:-840px 0}.xlx-icon-type-video{background-position:-875px 0}.xlx-icon-type-link{background-position:-910px 0}.xlx-icon-type-wmv{background-position:-945px 0}.xlx-icon-type-word{background-position:-980px 0}.xlx-icon-type-xls{background-position:-1015px 0}.xlx-icon-type-music{background-position:-1050px 0}.td-tree-node__image-icon .xlx-icon-type{display:block;width:16px;height:16px;background:url(" + n(i("aRd0")) + ") -340px 0 no-repeat;background-image:-webkit-image-set(url(" + n(i("aRd0")) + ") 1x,url(" + n(i("bjtf")) + ") 2x);background-position:-340px 0}.td-tree-node__image-icon .xlx-icon-type-apk{background-position:0 0}.td-tree-node__image-icon .xlx-icon-type-avi{background-position:-20px 0}.td-tree-node__image-icon .xlx-icon-type-bt-file{background-position:-60px 0}.td-tree-node__image-icon .xlx-icon-type-bt-link{background-position:-40px 0}.td-tree-node__image-icon .xlx-icon-type-chm{background-position:-80px 0}.td-tree-node__image-icon .xlx-icon-type-doc{background-position:-100px 0}.td-tree-node__image-icon .xlx-icon-type-exe{background-position:-120px 0}.td-tree-node__image-icon .xlx-icon-type-install{background-position:-140px 0}.td-tree-node__image-icon .xlx-icon-type-flv{background-position:-160px 0}.td-tree-node__image-icon .xlx-icon-type-ipa{background-position:-180px 0}.td-tree-node__image-icon .xlx-icon-type-ipsw{background-position:-200px 0}.td-tree-node__image-icon .xlx-icon-type-iso{background-position:-220px 0}.td-tree-node__image-icon .xlx-icon-type-mkv{background-position:-240px 0}.td-tree-node__image-icon .xlx-icon-type-mov{background-position:-260px 0}.td-tree-node__image-icon .xlx-icon-type-mp4{background-position:-280px 0}.td-tree-node__image-icon .xlx-icon-type-mpg{background-position:-300px 0}.td-tree-node__image-icon .xlx-icon-type-music{background-position:-320px 0}.td-tree-node__image-icon .xlx-icon-type-unknown{background-position:-340px 0}.td-tree-node__image-icon .xlx-icon-type-pdf{background-position:-360px 0}.td-tree-node__image-icon .xlx-icon-type-pic{background-position:-380px 0}.td-tree-node__image-icon .xlx-icon-type-ppt{background-position:-400px 0}.td-tree-node__image-icon .xlx-icon-type-rar{background-position:-420px 0}.td-tree-node__image-icon .xlx-icon-type-rm{background-position:-440px 0}.td-tree-node__image-icon .xlx-icon-type-rmvb{background-position:-460px 0}.td-tree-node__image-icon .xlx-icon-type-group{background-position:-480px 0}.td-tree-node__image-icon .xlx-icon-type-txt{background-position:-500px 0}.td-tree-node__image-icon .xlx-icon-type-video{background-position:-520px 0}.td-tree-node__image-icon .xlx-icon-type-link{background-position:-540px 0}.td-tree-node__image-icon .xlx-icon-type-wmv{background-position:-560px 0}.td-tree-node__image-icon .xlx-icon-type-word{background-position:-580px 0}.td-tree-node__image-icon .xlx-icon-type-xls{background-position:-600px 0}.chart-box .xlx-icon-type,.xlx-suspension .xlx-icon-type{display:block;width:24px;height:24px;margin-right:10px;background:url(" + n(i("iARP")) + ") -780px 0 no-repeat;background-image:-webkit-image-set(url(" + n(i("iARP")) + ") 1x,url(" + n(i("N9/H")) + ") 2x);background-position:-780px 0}.chart-box .xlx-icon-type-apk,.xlx-suspension .xlx-icon-type-apk{background-position:0 0}.chart-box .xlx-icon-type-avi,.xlx-suspension .xlx-icon-type-avi{background-position:-30px 0}.chart-box .xlx-icon-type-bt-file,.xlx-suspension .xlx-icon-type-bt-file{background-position:-60px 0}.chart-box .xlx-icon-type-bt-link,.xlx-suspension .xlx-icon-type-bt-link{background-position:-90px 0}.chart-box .xlx-icon-type-chm,.xlx-suspension .xlx-icon-type-chm{background-position:-120px 0}.chart-box .xlx-icon-type-doc,.xlx-suspension .xlx-icon-type-doc{background-position:-150px 0}.chart-box .xlx-icon-type-exe,.xlx-suspension .xlx-icon-type-exe{background-position:-180px 0}.chart-box .xlx-icon-type-flv,.xlx-suspension .xlx-icon-type-flv{background-position:-210px 0}.chart-box .xlx-icon-type-group,.xlx-suspension .xlx-icon-type-group{background-position:-240px 0}.chart-box .xlx-icon-type-install,.xlx-suspension .xlx-icon-type-install{background-position:-270px 0}.chart-box .xlx-icon-type-ipa,.xlx-suspension .xlx-icon-type-ipa{background-position:-300px 0}.chart-box .xlx-icon-type-ipsw,.xlx-suspension .xlx-icon-type-ipsw{background-position:-330px 0}.chart-box .xlx-icon-type-iso,.xlx-suspension .xlx-icon-type-iso{background-position:-360px 0}.chart-box .xlx-icon-type-link,.xlx-suspension .xlx-icon-type-link{background-position:-390px 0}.chart-box .xlx-icon-type-mkv,.xlx-suspension .xlx-icon-type-mkv{background-position:-420px 0}.chart-box .xlx-icon-type-mov,.xlx-suspension .xlx-icon-type-mov{background-position:-450px 0}.chart-box .xlx-icon-type-mp4,.xlx-suspension .xlx-icon-type-mp4{background-position:-480px 0}.chart-box .xlx-icon-type-mpg,.xlx-suspension .xlx-icon-type-mpg{background-position:-510px 0}.chart-box .xlx-icon-type-music,.xlx-suspension .xlx-icon-type-music{background-position:-540px 0}.chart-box .xlx-icon-type-pdf,.xlx-suspension .xlx-icon-type-pdf{background-position:-570px 0}.chart-box .xlx-icon-type-pic,.xlx-suspension .xlx-icon-type-pic{background-position:-600px 0}.chart-box .xlx-icon-type-ppt,.xlx-suspension .xlx-icon-type-ppt{background-position:-630px 0}.chart-box .xlx-icon-type-rar,.xlx-suspension .xlx-icon-type-rar{background-position:-660px 0}.chart-box .xlx-icon-type-rm,.xlx-suspension .xlx-icon-type-rm{background-position:-690px 0}.chart-box .xlx-icon-type-rmvb,.xlx-suspension .xlx-icon-type-rmvb{background-position:-720px 0}.chart-box .xlx-icon-type-txt,.xlx-suspension .xlx-icon-type-txt{background-position:-750px 0}.chart-box .xlx-icon-type-unknown,.xlx-suspension .xlx-icon-type-unknown{background-position:-780px 0}.chart-box .xlx-icon-type-video,.xlx-suspension .xlx-icon-type-video{background-position:-810px 0}.chart-box .xlx-icon-type-wmv,.xlx-suspension .xlx-icon-type-wmv{background-position:-840px 0}.chart-box .xlx-icon-type-word,.xlx-suspension .xlx-icon-type-word{background-position:-870px 0}.chart-box .xlx-icon-type-xls,.xlx-suspension .xlx-icon-type-xls{background-position:-900px 0}@font-face{font-family:xlx-icon-vip;src:url(" + n(i("C95Q")) + ') format("truetype")}[class^=vip-icon-]{display:inline-block;width:19px;height:12px;line-height:12px;text-align:center;font-size:16px;font-family:xlx-icon-vip!important;font-style:normal;border-radius:2px}[class^=vip-icon-].is-disabled{background:#aaa;color:#e9e9e9}[class^=vip-icon-].is-large{width:42px;background-image:url(' + n(i("9GDT")) + ');background-size:400px auto}[class^=vip-icon-].is-large:before{display:none}[class^=vip-icon-vip]{color:#ffe3a1!important;background:#f15063}[class^=vip-icon-pvip]{color:#c17010!important;background:#fdca41}[class^=vip-icon-svip]{color:#ffe14e!important;background:#424242}.vip-icon-pvip0,.vip-icon-svip0,.vip-icon-vip0{width:15px}.vip-icon-vip6:before{content:"\\E672"}.vip-icon-vip4:before{content:"\\E670"}.vip-icon-vip0:before{content:"\\E66C"}.vip-icon-vip3:before{content:"\\E66F"}.vip-icon-vip5:before{content:"\\E671"}.vip-icon-vip7:before{content:"\\E673"}.vip-icon-vip2:before{content:"\\E66E"}.vip-icon-vip1:before{content:"\\E66D"}.vip-icon-svip1:before{content:"\\E674"}.vip-icon-svip0:before{content:"\\E675"}.vip-icon-svip5:before{content:"\\E676"}.vip-icon-svip6:before{content:"\\E677"}.vip-icon-svip4:before{content:"\\E678"}.vip-icon-svip7:before{content:"\\E679"}.vip-icon-svip3:before{content:"\\E67A"}.vip-icon-svip2:before{content:"\\E67B"}.vip-icon-pvip0:before{content:"\\E67C"}.vip-icon-pvip1:before{content:"\\E67D"}.vip-icon-pvip2:before{content:"\\E67E"}.vip-icon-pvip3:before{content:"\\E682"}.vip-icon-pvip4:before{content:"\\E683"}.vip-icon-pvip5:before{content:"\\E684"}.vip-icon-pvip6:before{content:"\\E685"}.vip-icon-pvip7:before{content:"\\E686"}.vip-icon-pvip0.is-large,.vip-icon-svip0.is-large,.vip-icon-vip0.is-large{width:35px}.vip-icon-nian.is-large{width:12px;background-position:0 -78px}.vip-icon-nian.is-large.is-disabled{background-position:-13px -78px}.vip-icon-vip0.is-large{background-position:0 0}.vip-icon-vip1.is-large{background-position:-36px 0}.vip-icon-vip2.is-large{background-position:-79px 0}.vip-icon-vip3.is-large{background-position:-122px 0}.vip-icon-vip4.is-large{background-position:-165px 0}.vip-icon-vip5.is-large{background-position:-208px 0}.vip-icon-vip6.is-large{background-position:-251px 0}.vip-icon-vip7.is-large{background-position:-294px 0}.vip-icon-vip0.is-large.is-disabled{background-position:0 -13px}.vip-icon-vip1.is-large.is-disabled{background-position:-36px -13px}.vip-icon-vip2.is-large.is-disabled{background-position:-79px -13px}.vip-icon-vip3.is-large.is-disabled{background-position:-122px -13px}.vip-icon-vip4.is-large.is-disabled{background-position:-165px -13px}.vip-icon-vip5.is-large.is-disabled{background-position:-208px -13px}.vip-icon-vip6.is-large.is-disabled{background-position:-251px -13px}.vip-icon-vip7.is-large.is-disabled{background-position:-294px -13px}.vip-icon-pvip0.is-large{background-position:0 -26px}.vip-icon-pvip1.is-large{background-position:-36px -26px}.vip-icon-pvip2.is-large{background-position:-79px -26px}.vip-icon-pvip3.is-large{background-position:-122px -26px}.vip-icon-pvip4.is-large{background-position:-165px -26px}.vip-icon-pvip5.is-large{background-position:-208px -26px}.vip-icon-pvip6.is-large{background-position:-251px -26px}.vip-icon-pvip7.is-large{background-position:-294px -26px}.vip-icon-pvip0.is-large.is-disabled{background-position:0 -39px}.vip-icon-pvip1.is-large.is-disabled{background-position:-36px -39px}.vip-icon-pvip2.is-large.is-disabled{background-position:-79px -39px}.vip-icon-pvip3.is-large.is-disabled{background-position:-122px -39px}.vip-icon-pvip4.is-large.is-disabled{background-position:-165px -39px}.vip-icon-pvip5.is-large.is-disabled{background-position:-208px -39px}.vip-icon-pvip6.is-large.is-disabled{background-position:-251px -39px}.vip-icon-pvip7.is-large.is-disabled{background-position:-294px -39px}.vip-icon-svip0.is-large{background-position:0 -52px}.vip-icon-svip1.is-large{background-position:-36px -52px}.vip-icon-svip2.is-large{background-position:-79px -52px}.vip-icon-svip3.is-large{background-position:-122px -52px}.vip-icon-svip4.is-large{background-position:-165px -52px}.vip-icon-svip5.is-large{background-position:-208px -52px}.vip-icon-svip6.is-large{background-position:-251px -52px}.vip-icon-svip7.is-large{background-position:-294px -52px}.vip-icon-svip0.is-large.is-disabled{background-position:0 -65px}.vip-icon-svip1.is-large.is-disabled{background-position:-36px -65px}.vip-icon-svip2.is-large.is-disabled{background-position:-79px -65px}.vip-icon-svip3.is-large.is-disabled{background-position:-122px -65px}.vip-icon-svip4.is-large.is-disabled{background-position:-165px -65px}.vip-icon-svip5.is-large.is-disabled{background-position:-208px -65px}.vip-icon-svip6.is-large.is-disabled{background-position:-251px -65px}.vip-icon-svip7.is-large.is-disabled{background-position:-294px -65px}', ""])
	},
	"482I": function (t, e, i) {
		"use strict";
		e.a = {
			data: function () {
				return {
					dotWidth: 7,
					speedPart: [0, 102400, 1048576, 4194304],
					bombType: "none",
					dataTypeClass: "",
					preSpeedPart: 0,
					hadSpeedKeep: !1,
					timer: null,
					pointDisplay: "",
					iconWidth: 23
				}
			},
			props: {
				labelData: {
					type: Object
				},
				labelWidth: Number,
				labelPadding: Number,
				taskId: [Number, String]
			},
			computed: {
				enableAnimation: function () {
					return "0" !== this.$sget(this.$store.state, "config", "GenericSettings", "AnimationLevel")
				},
				textDataClass: function () {
					var t = this.getDotLeft(this.labelData, this.dotWidth / 2),
						e = this.dotWidth + this.labelWidth + this.labelPadding;
					return t < this.$sget(this.labelData, "canvasWidth") - e ? this.currentSpeedPart > 0 ? "is-left-ani" : "is-left" : "is-right-ani"
				},
				LabelStyle: function () {
					var t = this.getDotLeft(this.labelData, this.dotWidth / 2),
						e = this.dotWidth + this.labelWidth + this.labelPadding;
					return {
						left: (t < this.$sget(this.labelData, "canvasWidth") - e ? this.dotWidth : -(this.labelPadding + this.labelWidth)) + "px"
					}
				},
				currentSpeedPart: function () {
					var t = parseInt(this.$sget(this.labelData, "value") || 0),
						e = this.getSpeedPart(t);
					return this.PointLeft < this.iconWidth / 2 ? this.setPointState() : e !== this.preSpeedPart && null === this.timer && this.getSpeedKeepTime(e), e
				},
				PointLeft: function () {
					return this.getDotLeft(this.labelData, this.dotWidth / 2)
				},
				textVal: function () {
					return this.$sget(this.labelData, "value") || ""
				}
			},
			methods: {
				getDotLeft: function (t, e) {
					return this.$sget(t, "x") > e ? this.$sget(t, "x") > this.$sget(t, "canvasWidth") - e ? this.$sget(t, "canvasWidth") - e - e : this.$sget(t, "x") - e : 0
				},
				getSpeedPart: function (t) {
					if (0 === t) return 0;
					if (t > this.speedPart[this.speedPart.length - 1]) return this.speedPart.length;
					for (var e = this.speedPart.length - 1; e > 0; e--)
						if (this.speedPart[e - 1] < t && t <= this.speedPart[e]) return e
				},
				getSpeedKeepTime: function (t) {
					var e = this;
					this.timer = setTimeout(function (t) {
						e.preSpeedPart = t, e.timer = null, e.currentSpeedPart === t && (e.hadSpeedKeep = !e.hadSpeedKeep)
					}, 2100, t)
				},
				updateSpeedPart: function (t) {
					var e = t.immediately,
						i = void 0 !== e && e;
					if (0 !== this.currentSpeedPart) {
						if (this.PointLeft > this.iconWidth / 2 && (this.dotWidth = 28), !(this.PointLeft < this.iconWidth / 2)) {
							switch (this.currentSpeedPart) {
								case 1:
									this.dataTypeClass = "is-speed1", this.pointDisplay = "none";
									break;
								case 2:
									this.dataTypeClass = "is-speed2", this.pointDisplay = "none";
									break;
								case 3:
									this.dataTypeClass = "is-speed3", this.pointDisplay = "none";
									break;
								case 4:
									this.dataTypeClass = "is-speed4", this.pointDisplay = "none"
							}
							i || this.animationShow()
						}
					} else this.setPointState()
				},
				setPointState: function () {
					this.dataTypeClass = "", this.pointDisplay = "block", this.preSpeedPart = 0, this.dotWidth = 7
				},
				animationShow: function () {
					var t = this;
					this.bombType = "block", this.dataTypeClass += "is-scale", setTimeout(function () {
						t.bombType = "none";
						var e = t.dataTypeClass.indexOf("is-scale"); - 1 !== e && (t.dataTypeClass = t.dataTypeClass.substring(0, e))
					}, 300)
				}
			},
			watch: {
				taskId: function (t) {
					this.updateSpeedPart({
						immediately: !0
					})
				},
				hadSpeedKeep: "updateSpeedPart"
			}
		}
	},
	"4gUg": function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".error-message{position:relative}.is-absolute{position:absolute}.is-absolute.td-cover{top:25px}", ""])
	},
	"4nU2": function (t, e, i) {
		"use strict";
		var n = i("yxXY"),
			o = i("7udH"),
			a = i.n(o);
		e.a = n.a.connect({
			mapStateToProps: {
				curUserNick: function (t, e) {
					return t.users.curUser.userNick
				},
				curUserId: function (t, e) {
					return t.users.curUser.userId
				},
				curTask: function (t, e) {
					return a()(t.tasks.all, t.tasks.curTaskID)
				}
			},
			mapDispatchToProps: {
				getComments: "comments/get",
				publishComments: "comments/publish"
			},
			mapCommitToProps: {
				setCurPage: "comments/setCurPage"
			}
		})
	},
	"5Hwc": function (t, e, i) {
		"use strict";
		var n = i("n5z5"),
			o = i("15IW"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\recommend\\XlRecommendReviewItem.vue", e.a = a.exports
	},
	"5X0l": function (t, e, i) {
		t.exports = i.p + "img/defaulticon.1baa329.png"
	},
	"5rP1": function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", [t.tid ? t.curPageComments.length ? [i("ul", t._l(t.curPageComments, function (e) {
				return e ? i("xl-comment-item", {
					key: (e.type || "new") + "|" + e.cid,
					attrs: {
						type: e.type,
						comment: e,
						entryPage: t.entryPage,
						entryHead: t.entryHead,
						entryName: t.entryName,
						resourceUser: t.resourceUser,
						timeFormat: t.timeFormat,
						tid: t.tid,
						maxLength: t.maxLength,
						commentLength: t.comments.length,
						showReply: t.showReply,
						removeCommentCallback: function () {
							return t.$emit("removeComment")
						}
					},
					on: {
						"update:showReply": function (e) {
							t.showReply = e
						},
						finish: function (e) {
							t.$emit("finish")
						},
						click: function (e, i) {
							t.$emit("click", e, i)
						},
						delete: function (e) {
							t.$emit("delete", arguments[0])
						},
						clickReply: function (e) {
							t.$emit("clickReply", arguments[0])
						},
						clickHeadVip: function (e) {
							t.$emit("clickHeadVip")
						},
						nameClick: function (e) {
							t.$emit("nameClick", arguments[0])
						},
						headClick: function (e) {
							t.$emit("headClick", arguments[0])
						},
						likecomment: function (e) {
							t.$emit("likecomment", arguments[0])
						},
						keyupctrlentry: function (e) {
							t.$emit("keyupctrlentry", arguments[0])
						},
						sendReply: function (e) {
							t.$emit("sendReply", arguments[0])
						}
					}
				}) : t._e()
			})), i("td-pagination", {
				attrs: {
					total: t.totalPage,
					beforeChange: t.fetchCommentsByPage
				},
				on: {
					"prev-click": function (e) {
						t.$emit("click", "last")
					},
					"next-click": function (e) {
						t.$emit("click", "next")
					}
				},
				model: {
					value: t.page,
					callback: function (e) {
						t.page = e
					},
					expression: "page"
				}
			})] : i("div", [t._t("default")], 2) : [t._t("default")]], 2)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	"6QQw": function (t, e, i) {
		"use strict";
		var n = i("//Fk"),
			o = i.n(n),
			a = i("Rhsk");
		e.a = {
			data: function () {
				return {
					comment: "",
					focus: !1,
					isSending: !1,
					keyBoardTimer: 0
				}
			},
			computed: {
				curUser: function () {
					return this.$store.state.users.curUser
				},
				isLogin: function () {
					return "0" !== this.curUser.userId
				}
			},
			methods: {
				getUserLink: a.c,
				getAvatar: a.a,
				handleAvatarClick: function () {
					this.isLogin || this.login(), this.$emit("headClick")
				},
				login: function () {
					return new o.a(function (t, e) {
						Object(a.g)(function (e, i) {
							t(!e)
						})
					})
				}
			}
		}
	},
	"6h/5": function (t, e, i) {
		"use strict";
		var n = i("2cjX"),
			o = i("QN32"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlTabPane.vue";
		a.exports
	},
	"6hi/": function (t, e, i) {
		var n = i("XsT4");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("6556cace", n, !1)
	},
	"6m29": function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".canvas-data{transform-origin:top left;position:absolute!important}", ""])
	},
	"6zp0": function (t, e, i) {
		"use strict";
		var n = i("Xxa5"),
			o = i.n(n),
			a = i("exGp"),
			s = i.n(a),
			r = i("Gu7T"),
			c = i.n(r),
			l = i("NQag"),
			p = i("eLLv"),
			d = i("OnMG");
		e.a = {
			components: {
				XlIcon: d.a
			},
			data: function () {
				return {
					show: !1,
					defaultIcon: i("5X0l")
				}
			},
			computed: {
				icons: function () {
					var t = [].concat(c()(this.$store.state.home.navConfig));
					Object(l.a)(new Date);
					return this.isBlock && t.forEach(function (e, i) {
						"movie_home" === e.buttonId && "feature" === e.class && t.splice(i, 1)
					}), t
				},
				isBlock: function () {
					return this.$store.state.isBlock
				}
			},
			methods: {
				imgError: function (t) {
					t.target.src = this.defaultIcon
				},
				clickNav: function () {
					var t = s()(o.a.mark(function t(e) {
						var i, n;
						return o.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									if (i = this.icons[e], n = i.shouldLogin, this.reportNavClick(e, i.buttonId), t.t0 = n, !t.t0) {
										t.next = 8;
										break
									}
									return t.next = 7, this.$account.isLogined();
								case 7:
									t.t0 = !t.sent;
								case 8:
									if (!t.t0) {
										t.next = 11;
										break
									}
									return t.next = 11, this.$account.login();
								case 11:
									Object(p.a)(i.url, i.buttonId);
								case 12:
								case "end":
									return t.stop()
							}
						}, t, this)
					}));
					return function (e) {
						return t.apply(this, arguments)
					}
				}(),
				reportNavClick: function (t, e) {
					this.$stat("download_detail", "dltab_startup_navigation_click", {
						buttonid: e,
						rn: t + 1
					})
				},
				linkReport: function () {
					var t = s()(o.a.mark(function t() {
						return o.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									return t.next = 2, this.$account.isLogined();
								case 2:
									if (t.sent) {
										t.next = 5;
										break
									}
									return t.next = 5, this.$account.login();
								case 5:
									Object(p.a)("http://pc.xunlei.com/pages/#/report", "report");
								case 6:
								case "end":
									return t.stop()
							}
						}, t, this)
					}));
					return function () {
						return t.apply(this, arguments)
					}
				}()
			}
		}
	},
	"7Jn1": function (t, e, i) {
		"use strict";
		var n = i("Ki11"),
			o = i("garV"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlBadge.vue", e.a = a.exports
	},
	"7uHT": function (t, e, i) {
		"use strict";
		var n = i("yxXY"),
			o = i("7udH");
		i.n(o);
		e.a = n.a.connect({
			mapStateToProps: {
				review: function (t, e) {
					return t.reviews.all[e.reviewId]
				}
			}
		})
	},
	"8Re5": function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "xlx-comment-fast"
			}, [i("div", {
				staticClass: "xlx-comment-fast__title"
			}, [i("p", {
				staticClass: "xlx-comment-fast__title-text"
			}, [t._v("快捷评论：\n      "), i("XlRefresh", {
				staticClass: "xlx-comment-fast__refresh",
				nativeOn: {
					click: function (e) {
						t.refresh(), t.$emit("quickrefresh")
					}
				}
			}, [i("i", {
				staticClass: "xlx-icon-refresh"
			})])], 1)]), i("div", {
				staticClass: "xlx-comment-fast__content"
			}, t._l(t.quickReviews, function (e) {
				return e ? i("a", {
					key: e,
					staticClass: "xlx-comment-fast__item",
					attrs: {
						href: "javascript:;"
					},
					on: {
						click: function (i) {
							t.clickQuickReview(e)
						}
					}
				}, [t._v("\n      " + t._s(e) + "\n    ")]) : t._e()
			}))])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	"8SKo": function (t, e, i) {
		var n = i("qXoI");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("1c5f6eba", n, !1)
	},
	"8Xly": function (t, e, i) {
		t.exports = i.p + "fonts/xlx-icon.8ca739e.woff"
	},
	"9GDT": function (t, e, i) {
		t.exports = i.p + "img/spr-vip-icon-x2.91384ce.png"
	},
	"9ry8": function (t, e, i) {
		"use strict";

		function n(t) {
			var e = [];
			for (var i in t) t.hasOwnProperty(i) && e.push(encodeURIComponent(i) + "=" + encodeURIComponent(t[i]));
			return t ? "?" + e.join("&") : ""
		}

		function o(t) {
			try {
				return null == document.cookie.match(new RegExp("(^" + t + "| " + t + ")=([^;]*)")) ? "" : RegExp.$2
			} catch (t) {
				throw new Error(t)
			}
		}

		function a(t, e) {
			var i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
				n = i.path,
				o = void 0 === n ? "/" : n,
				a = i.domain,
				s = void 0 === a ? "xunlei.com" : a,
				r = i.maxAge,
				c = void 0 === r ? 86400 : r,
				l = i.expires,
				p = i.secure,
				d = t + "=" + encodeURIComponent(e);
			o && (d += ";path=" + o), s && (d += ";domain=" + s), c && (d += ";max-age=" + c), l && (d += ";expires=" + l.toUTCString()), p && (d += ";secure=" + p), document.cookie = d
		}

		function s(t, e, i) {
			t.addEventListener ? t.addEventListener(e, i) : t.attachEvent("on" + e, function (e) {
				i.call(t, e)
			})
		}
		i.d(e, "a", function () {
			return l
		});
		var r = {
				getModulesConfig: function () {
					return function () {
						var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
						t.type = (t.type || "GET").toUpperCase(), t.dataType = t.dataType || "json";
						var e = n(t.data),
							i = new window.XMLHttpRequest;
						return new Promise(function (n, o) {
							i.onreadystatechange = function () {
								var e = i.status;
								if (4 === i.readyState) return e >= 200 && e < 300 ? (t.success && t.success(i.responseText), n(JSON.parse(i.responseText))) : (t.fail && t.fail(e), o(e))
							}, "GET" === t.type ? (i.open("GET", t.url + e, !0), i.send(null)) : "POST" === t.type && (i.open("POST", t.url, !0), i.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"), i.send(e))
						})
					}({
						url: "http://static-xl9-ssl.xunlei.com/json/modules.json",
						type: "get",
						dataType: "json"
					})
				},
				isAuth: function () {
					var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
						e = {};
					t.userid && (e = {
						"auth.deviceid": t.deviceid,
						"auth.sessionid": t.sessionid || o("sessionid"),
						"auth.userid": t.userid || o("userid"),
						"auth.usernewno": t.usernewno || o("usernewno"),
						"auth.usrname": t.username || o("usrname"),
						"auth.usernick": t.usernick || o("usernick"),
						"auth.appid": t.appid || "165",
						authType: "phone",
						"auth.clientVersion": t.clientVersion || o("XL_CLIENT_VERION")
					});
					var i = {
						authType: "phone",
						"auth.deviceid": o("deviceid") || window.localStorage.getItem("deviceid")
					};
					return function () {
						var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
						return new Promise(function (e, i) {
							if (t.callback = t.callback || "callback", !t.url) return i(new Error("url is necessary"));
							var o = "jsonp" + (new Date).getTime(),
								a = document.getElementsByTagName("head")[0];
							t.data[t.callback] = o;
							var s = n(t.data),
								r = document.createElement("script");
							a.appendChild(r), r.onerror = function (t) {
								return a.removeChild(r), delete window[o], i(new Error("创建script标签失败"))
							}, window[o] = function (i) {
								return a.removeChild(r), t.time && clearTimeout(r.timer), delete window[o], t.success && t.success(i), e(i)
							}, r.src = t.url + s, t.time && (r.timer = setTimeout(function () {
								delete window[o], i(new Error("timeout"))
							}, t.time))
						})
					}({
						url: "https://xluser-ssl.xunlei.com/certification/v1/isauth",
						dataType: "jsonp",
						time: 5e3,
						data: e = Object.assign({}, i, e)
					})
				}
			},
			c = 1;

		function l(t) {
			var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
				i = "https://pc.xunlei.com/auth";
			return t && (i += /\?/.test(i) ? "&entrypage=" + t : "?entrypage=" + t), new Promise(function (t, n) {
				(function () {
					var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
					return o("sessionid") || t.sessionid ? o("isNeedAuth") ? Promise.resolve("true" === o("isNeedAuth")) : r.getModulesConfig().then(function (e) {
						return e.real_name.enable ? r.isAuth(t) : (a("isNeedAuth", !1), !1)
					}).then(function (t) {
						if ("boolean" == typeof t) return !1;
						if ("ISAUTH" === t.result || "NOAUTH" === t.result) return a("isNeedAuth", "NOAUTH" === t.result), "NOAUTH" === t.result;
						throw new Error(JSON.stringify(t))
					}) : Promise.reject(new Error("not login"))
				})(e).then(function (o) {
					if (!o) return t();
					! function (t, e) {
						var i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};
						if ("function" == typeof t) try {
							var n = document.createElement("iframe");
							n.src = e || "https://pc.xunlei.com/auth", n.setAttribute("id", "authIframe"), n.setAttribute("frameborder", 0), n.style.cssText = "position: fixed; top: 0; left: 0; width: 100%; height: 100%; border: 0; z-index:999;", document.body.appendChild(n), s(n, "load", function (t) {
								n.contentWindow.postMessage(JSON.stringify(i), "https://pc.xunlei.com")
							}), s(window, "message", function (e) {
								var i = JSON.parse(e.data);
								"auth" === i.from && "close" === i.event && (n.style.display = "none", t(null, i.code))
							})
						} catch (e) {
							t(e)
						}
					}(function (e, i) {
						if (e) return n(new Error("version too low"));
						i === c ? (a("isNeedAuth", !1), t()) : n(new Error("auth error"))
					}, i, e)
				}).catch(n)
			})
		}! function (t) {
			if ("function" == typeof t) try {
				xlQuickLogin && xlQuickLogin.setLogoutExt(function () {
					t(null)
				}), xlm && xlm.api.attach("onLoginStatusChange", function (e) {
					e.userid || t(null)
				})
			} catch (e) {
				t(e)
			}
		}(function (t) {
			var e;
			t || (e = "isNeedAuth", document.cookie = e + "=; expires=" + new Date(-1).toUTCString() + "; domain=xunlei.com; path=/;")
		})
	},
	"9xYO": function (t, e, i) {
		"use strict";
		var n = i("fZjL"),
			o = i.n(n),
			a = i("bOdI"),
			s = i.n(a),
			r = i("woOf"),
			c = i.n(r),
			l = i("Dd8w"),
			p = i.n(l),
			d = i("Cb+C"),
			u = i("H2Fs"),
			x = i("/8Fg");
		e.a = {
			props: {
				domReady: {
					type: Boolean,
					default: !1
				}
			},
			created: function () {
				var t = this;
				Object(x.a)("GetCurTask").then(function (e) {
					var i = JSON.parse(e);
					t.lastTaskID = i.taskID, t.fetchCurTaskInfo(i.taskID, i.pannel)
				}), this.curTaskChangeHandler = function (e) {
					var i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "{}",
						n = arguments[2];
					t.lastTaskID = e, t.$raven.debug("OnCurTaskChange", e, i, n);
					var o = JSON.parse(i).pannel;
					t.fetchCurTaskInfo(e, o, n)
				}, this.attachEvent(), this.reportReady()
			},
			components: {
				XlTaskChart: u.a
			},
			data: function () {
				return {
					lastTaskID: null,
					curTaskID: null,
					eventIdOnCurTaskChange: null,
					eventIdOnTaskInfoChange: null
				}
			},
			computed: {
				curTask: function () {
					return this.$sget(this.$store.state.tasks.all, this.curTaskID)
				},
				pannel: function () {
					return this.$store.state.pannel
				},
				reportCommonData: function () {
					return {
						pannel: this.pannel,
						gcid: this.curTask.gcid,
						filename: this.curTask.name,
						taskid: this.curTask.taskID
					}
				}
			},
			methods: {
				fetch: function (t) {
					return this.$store.dispatch("tasks/getTaskInfo", {
						taskID: t
					})
				},
				reportReady: function () {
					return Object(x.a)("PageReady", "taskDetail")
				},
				reportClick: function (t, e) {
					this.$stat("download_detail", "dltab_detail_curve_click", p()({}, this.reportCommonData, {
						position: t,
						button: e
					}))
				},
				operate: function (t) {
					var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "right";
					return this.reportClick(e, t), Object(x.a)("OperateTask", this.curTaskID, t)
				},
				attachEvent: function () {
					var t = this;
					d.a.api.attach("OnSwitchDetail", function (e, i) {
						t.$emit("onSwitchDetail", {
							taskID: e,
							index: i
						})
					}), this.eventIdOnCurTaskChange = d.a.api.attach("OnCurTaskChange", this.curTaskChangeHandler), this.eventIdOnCurTaskChange = d.a.api.attach("OnSubFileInfoChange", this.subFileInfoChangeHandler), this.eventIdOnTaskInfoChange = d.a.api.attach("OnTaskInfoChange", function (e, i) {
						var n = void 0;
						try {
							n = JSON.parse(i)
						} catch (t) {}
						t.$store.commit("tasks/set", {
							taskID: e,
							taskInfo: c()({}, n, t.getHistorySpeedInfo(n, "historySpeed", e, n.speed), t.getHistorySpeedInfo(n, "historyIncreaseSpeed", e, n.increaseSpeed))
						})
					})
				},
				getHistorySpeedInfo: function (t, e, i, n) {
					var o = this.$sget(this.$store.state.tasks.all, i, e);
					if (t && !(100 == t.progress && "100" in o)) {
						var a = c()({}, this.deleteOldSpeedData(o, t.progress), s()({}, t.progress, n));
						return s()({}, e, a)
					}
				},
				deleteOldSpeedData: function (t, e) {
					if (t) return o()(t).filter(function (t) {
						return parseInt(t) < parseInt(e)
					}).reduce(function (e, i) {
						return e[i] = t[i], e
					}, {})
				},
				reportPageView: function () {
					this.$stat("download_detail", "dltab_detail_page_show", this.reportCommonData)
				},
				detachEvent: function () {
					d.a.dettach("OnCurTaskChange", this.eventIdOnCurTaskChange), d.a.dettach("OnTaskInfoChange", this.eventIdOnTaskInfoChange)
				},
				subFileInfoChangeHandler: function (t, e) {
					if (this.$sget(this.curTask, "subFilesCount")) {
						var i = [];
						try {
							i = JSON.parse(e)
						} catch (t) {
							this.$raven.debug(t)
						}
						this.$store.commit("tasks/setSubFiles", {
							taskId: t,
							subFiles: i
						})
					}
				},
				fetchCurTaskInfo: function (t, e, i) {
					var n = this;
					if (!t) return this.curTaskID = t, void this.$emit("curTaskChange", {
						taskID: t,
						index: i
					});
					this.fetch(t).then(function () {
						n.lastTaskID === t && (n.curTaskID = t, n.$emit("curTaskChange", {
							taskID: t,
							index: i
						}), n.reportPageView())
					}), this.$store.commit("setPannel", e)
				}
			}
		}
	},
	AtIQ: function (t, e, i) {
		"use strict";
		var n = i("/5sW"),
			o = function (t) {
				n.default.config.silent || console.warn(t)
			};
		e.a = {
			name: "intersect",
			abstract: !0,
			props: {
				threshold: {
					type: Array,
					required: !1,
					default: function () {
						return [.2]
					}
				},
				root: {
					type: HTMLElement,
					required: !1,
					default: function () {
						return null
					}
				},
				rootMargin: {
					type: String,
					required: !1,
					default: function () {
						return "0px 0px 0px 0px"
					}
				}
			},
			created: function () {
				var t = this;
				this.observer = new IntersectionObserver(function (e) {
					e[0].isIntersecting ? t.$emit("enter", [e[0]]) : t.$emit("leave", [e[0]]), t.$emit("change", [e[0]])
				}, {
					threshold: this.threshold,
					root: this.root,
					rootMargin: this.rootMargin
				})
			},
			mounted: function () {
				var t = this;
				this.$nextTick(function () {
					if (t.$slots.default && t.$slots.default.length > 1) o("[VueIntersect] You may only wrap one element in a <intersect> component.");
					else if (!t.$slots.default || t.$slots.default.length < 1) return void o("[VueIntersect] You must have one child inside a <intersect> component.");
					t.observer.observe(t.$slots.default[0].elm)
				})
			},
			destroyed: function () {
				this.observer.disconnect()
			},
			render: function () {
				return this.$slots.default ? this.$slots.default[0] : null
			}
		}
	},
	BCKB: function (t, e, i) {
		var n = i("kxFB");
		(t.exports = i("FZ+f")(!1)).push([t.i, ':root{--background-comment:#f5f5f5;--color-face:#7698b7}.xlx-comment .xlx-comment-main{display:flex;margin-bottom:35px}.xlx-comment .xlx-comment__image{width:42px;height:42px;margin-right:22px}.xlx-comment .xlx-comment__image img{width:100%;border-radius:50%}.xlx-comment .xlx-comment__write{position:relative;display:flex;align-items:center;flex:1;background:#fff;border-radius:4px;border:solid 1px var(--color-detail-line);box-sizing:border-box}.xlx-comment .xlx-comment__write .td-textarea{width:calc(100% - 60px)}.xlx-comment .xlx-comment__write .td-textarea .td-textarea__inner{width:100%;height:30px;overflow:hidden;background:transparent;transition:.2s}.xlx-comment .xlx-comment__write.is-disabled{filter:grayscale(1) brightness(.95);user-select:none;pointer-events:none}.xlx-comment__oprate{height:30px;display:inline-flex;align-items:center;padding:0 10px}.xlx-comment__oprate .xlx-comment__line{width:1px;height:11px;margin:0 12px;background:var(--color-detail-line)}.xlx-comment__oprate .xlx-button-sumbit{color:var(--color-face)}.xlx-comment__oprate .xlx-button-sumbit:hover{color:var(--color-primary)}.xlx-comment__oprate .xlx-button-sumbit:active{color:var(--color-primary-hover)}.xlx-comment__oprate .xlx-button-sumbit.is-disabled{color:var(--color-primary-gray-2);cursor:default}.xlx-comment .xlx-comment__write.is-focus{display:block;text-align:right}.xlx-comment .xlx-comment__write.is-focus .td-textarea{width:100%;display:block}.xlx-comment .xlx-comment__write.is-focus .td-textarea__inner{width:100%;height:40px;overflow:auto}.xlx-comment .xlx-comment__write .td-textarea__inner{border:0}.xlx-comment-list__item{display:flex;margin-bottom:20px}.xlx-comment-list__item .xlx-comment-list__speed{margin-left:8px;color:var(--color-detail-primary)}.xlx-comment-list__item .xlx-comment-list__speed.is-fast{color:var(--color-warn-1)}.xlx-comment-list__item.is-hot .xlx-comment__content{border-color:#ffd4d4}.xlx-comment-list__item.is-hot .xlx-comment-list__praise{color:var(--color-danger-1)}.xlx-comment-list__content{padding-bottom:20px;flex:1;width:calc(100% - 64px);border-bottom:solid 1px var(--color-detail-line)}.xlx-comment-list__content .xlx-comment-list__delete{display:none}.xlx-comment-list__content:hover .xlx-comment-list__delete{display:inline-block}.xlx-comment-list__header{display:flex;align-items:center;margin-bottom:14px}.xlx-comment-list__header .xlx-comment-list__user-name{margin-right:5px;color:#667f97}.xlx-comment-list__header .xlx-comment-list__user-name.is-vip{color:var(--color-danger-1)}.xlx-comment-list__body{margin-bottom:14px;line-height:16px}.xlx-comment-list__body .xlx-comment-list__text{word-wrap:break-word;white-space:pre-wrap}.xlx-comment-list__body .xlx-comment-list__quote{position:relative;padding:10px;margin-top:14px;background:#f5f5f5;border-radius:5px;color:var(--color-detail-primary)}.xlx-comment-list__body .xlx-comment-list__quote-text{word-wrap:break-word;white-space:pre-wrap}.xlx-comment-list__wrapper{display:flex;justify-content:space-between;margin-top:14px}.xlx-comment-list__information{color:var(--color-detail-primary)}.xlx-comment-list__operate a{margin-left:20px;transition:.2s}.xlx-comment-list__operate a:hover{color:var(--color-primary)}.xlx-comment-list__operate>a{color:var(--color-face)}.xlx-comment-list__operate .xlx-comment-list__praise.is-animation{position:relative}.xlx-comment-list__operate .xlx-comment-list__praise.is-animation:before{position:absolute;top:-13px;right:0;content:"+1";animation:praise-add .8s both}@keyframes praise-add{0%{transform:translateZ(0);opacity:0}40%,60%{transform:translate3d(0,-5px,0);opacity:1}to{transform:translate3d(0,-10px,0);opacity:0}}.is-active.xlx-comment-list__comment,.is-active.xlx-comment-list__praise{color:var(--color-primary)}.is-hot .is-active.xlx-comment-list__praise{color:var(--color-danger-1)}.xlx-comment-list__footer .xlx-comment__write{margin-top:14px}.xlx-comment-fast{padding-left:64px}.xlx-comment-fast .xlx-comment-fast__title-text{display:flex;align-items:center;color:var(--color-detail-primary)}.xlx-comment-fast .xlx-comment-fast__refresh{color:var(--color-primary)}.xlx-comment-fast .xlx-comment-fast__content{display:flex;flex-wrap:wrap;margin:10px 0 0 -10px}.xlx-comment-fast .xlx-comment-fast__item{display:inline-block;margin:0 0 10px 10px;padding:0 10px;line-height:30px;border:solid 1px var(--color-detail-line);border-radius:4px;transition:.2s}.xlx-comment-fast .xlx-comment-fast__item:hover{border-color:var(--color-primary)}.td-pagination{margin-left:64px}.xlx-face{position:relative}.xlx-face .xlx-face__icon{color:var(--color-face)}.xlx-face .xlx-face__icon:hover{color:var(--color-primary)}.xlx-face .xlx-face__icon:active{color:var(--color-primary-hover)}.xlx-face-emoji{position:absolute;z-index:99;width:200px;padding:10px 6px;background:#fff;box-shadow:0 0 20px rgba(0,0,0,.1)}.xlx-comment-tips{padding:27px 0 50px;text-align:center}.xlx-comment-tips h2{margin-bottom:8px;font-size:16px;color:#7b7b7b}.xlx-comment-tips p{margin-bottom:10px;color:#bfbfbf}.xlx-comment-tips .xlx-icon-blank-comment{display:block;margin:0 auto;width:280px;height:55px;background:url(' + n(i("Kc4X")) + ") no-repeat;background-size:280px auto}", ""])
	},
	BQ5y: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("li", {
				staticClass: "xlx-comment-list__item",
				class: {
					"is-hot": "hot" === t.type
				}
			}, [i("a", {
				staticClass: "xlx-comment__image",
				attrs: {
					href: t.getUserLink(t.comment.uid, t.entryPage, t.entryHead),
					target: "_blank"
				},
				on: {
					click: function (e) {
						t.$emit("headClick", {
							cid: t.comment.cid
						})
					}
				}
			}, [i("img", {
				directives: [{
					name: "lazy",
					rawName: "v-lazy",
					value: t.user.portrait_url,
					expression: "user.portrait_url"
				}],
				key: t.user.portrait_url,
				attrs: {
					alt: "头像"
				}
			})]), i("div", {
				staticClass: "xlx-comment-list__content"
			}, [i("div", {
				staticClass: "xlx-comment-list__header"
			}, [i("xl-vip", {
				attrs: {
					userid: t.comment.uid
				},
				nativeOn: {
					click: function (e) {
						t.$emit("clickHeadVip")
					}
				},
				scopedSlots: t._u([{
					key: "default",
					fn: function (e) {
						return [i("a", {
							staticClass: "xlx-comment-list__user-name",
							class: {
								"is-vip": e.isVip
							},
							attrs: {
								href: t.getUserLink(t.comment.uid, t.entryPage, t.entryName),
								target: "_blank"
							},
							on: {
								click: function (e) {
									t.$emit("nameClick", {
										cid: t.comment.cid
									})
								}
							}
						}, [t._v("\n            " + t._s(t.$sget(t.user, "nick_name")) + "\n          ")])]
					}
				}])
			}), t.speed > 1048576 ? i("span", {
				staticClass: "xlx-comment-list__speed",
				class: {
					"is-fast": t.speed > 4194304
				},
				attrs: {
					title: "平均速度"
				}
			}, [t._v("\n          " + t._s(t.comment.downLoadSpeed) + "\n        ")]) : t._e()], 1), i("div", {
				staticClass: "xlx-comment-list__body"
			}, [i("p", {
				staticClass: "xlx-comment-list__text",
				domProps: {
					innerHTML: t._s(t.replaceEmoji(t.comment.comment))
				},
				on: {
					click: t.triggerReply
				}
			}), t.comment.replys && t.comment.replys.length ? i("div", {
				staticClass: "xlx-comment-list__quote"
			}, [t.isReplyDeleted ? [i("span", {
				staticClass: "xlx-comment-list__quote-text"
			}, [t._v("评论已删除")])] : [i("i", {
				staticClass: "xlx-icon-quote"
			}), i("span", {
				staticClass: "xlx-comment-list__quote-name"
			}, [t._v(t._s(t.replyUser.nick_name || t.replyUser.user))]), i("span", [t._v("：")]), i("span", {
				staticClass: "xlx-comment-list__quote-text",
				domProps: {
					innerHTML: t._s(t.replaceEmoji(t.comment.replys[0].content))
				}
			})]], 2) : t._e()]), i("div", {
				staticClass: "xlx-comment-list__footer"
			}, [i("div", {
				staticClass: "xlx-comment-list__wrapper"
			}, [i("div", {
				staticClass: "xlx-comment-list__information"
			}, [i("span", {
				staticClass: "xlx-comment-list__time"
			}, [t._v(t._s(t.getTime(t.comment.time)))])]), i("div", {
				staticClass: "xlx-comment-list__operate"
			}, [String(t.comment.uid) === String(t.curUser.userId) ? i("a", {
				staticClass: "xlx-comment-list__delete",
				attrs: {
					href: "javascript:;",
					title: "删除"
				},
				on: {
					click: t.handleDeleteClick
				}
			}, [i("i", {
				staticClass: "xlx-icon-delete-comment"
			})]) : t._e(), t._e(), i("a", {
				staticClass: "xlx-comment-list__comment",
				class: t.showReply === t.comment.cid ? "is-active" : "",
				attrs: {
					href: "javascript:;",
					title: "评论"
				},
				on: {
					click: function (e) {
						t.clickReply(t.comment.cid)
					}
				}
			}, [i("i", {
				staticClass: "xlx-icon-comment"
			})]), i("xl-praise", {
				staticClass: "xlx-comment-list__praise",
				attrs: {
					cid: t.comment.cid,
					id: t.tid,
					praisedClass: "is-active",
					animationClass: "is-animation"
				},
				on: {
					praise: function (e) {
						t.$emit("likecomment", {
							cid: t.comment.cid
						})
					}
				},
				scopedSlots: t._u([{
					key: "default",
					fn: function (e) {
						return [i("i", {
							staticClass: "xlx-icon-praise"
						}), i("span", {
							staticClass: "xlx-comment-list__num"
						}, [t._v("\n                " + t._s(e.praiseNum) + "\n              ")])]
					}
				}])
			})], 1)]), i("XlCommentInput", {
				class: t.showReply === t.comment.cid ? "open" : "",
				attrs: {
					show: t.showReply === t.comment.cid,
					comment: t.comment,
					userNick: t.$sget(t.getUser(t.comment.uid), "nick_name"),
					tid: t.tid,
					maxLength: t.maxLength,
					focus: t.focus
				},
				on: {
					keyupctrlentry: function (e) {
						t.$emit("keyupctrlentry", arguments[0])
					},
					sendReply: function (e) {
						t.sendReply(t.comment)
					},
					finish: function (e) {
						t.$emit("update:showReply", 0), t.$emit("finish")
					},
					"update:focus": function (e) {
						t.focus = e
					}
				}
			})], 1)])])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	BS7F: function (t, e, i) {
		var n = i("kxFB");
		(t.exports = i("FZ+f")(!1)).push([t.i, ".xlx-face-emoji ul{display:flex;flex-wrap:wrap;height:140px;overflow-y:auto;margin:0 auto}.xlx-face-emoji ul::-webkit-scrollbar{width:4px}.xlx-face-emoji ul::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.xlx-face-emoji ul li{cursor:pointer;width:24px;height:24px;padding:2px}.xlx-face-emoji ul li:hover{background-color:#ececec}.face-icon-emoji{vertical-align:-6px}.face-icon-emoji,.ico-face{width:24px;height:24px;background:url(" + n(i("+9BZ")) + ") -999em no-repeat;display:inline-block;background-image:-webkit-image-set(url(" + n(i("+9BZ")) + ") 1x,url(" + n(i("1wyJ")) + ") 2x)}.emoji-1F604{background-position:-72px -72px}.emoji-1F60A{background-position:-120px -72px}.emoji-1F603{background-position:-168px -72px}.emoji-263A{background-position:-216px -72px}.emoji-1F609{background-position:-264px -72px}.emoji-1F60D{background-position:-312px -72px}.emoji-1F618{background-position:-360px -72px}.emoji-1F61A{background-position:-408px -72px}.emoji-1F633{background-position:-456px -72px}.emoji-1F60C{background-position:-504px -72px}.emoji-1F601{background-position:-72px -120px}.emoji-1F61C{background-position:-120px -120px}.emoji-1F61D{background-position:-168px -120px}.emoji-1F612{background-position:-216px -120px}.emoji-1F60F{background-position:-264px -120px}.emoji-1F613{background-position:-312px -120px}.emoji-1F614{background-position:-360px -120px}.emoji-1F61E{background-position:-408px -120px}.emoji-1F616{background-position:-456px -120px}.emoji-1F622{background-position:-504px -120px}.emoji-1F630{background-position:-72px -168px}.emoji-1F628{background-position:-120px -168px}.emoji-1F623{background-position:-168px -168px}.emoji-1F625{background-position:-216px -168px}.emoji-1F62D{background-position:-264px -168px}.emoji-1F602{background-position:-312px -168px}.emoji-1F632{background-position:-360px -168px}.emoji-1F631{background-position:-408px -168px}.emoji-1F620{background-position:-456px -168px}.emoji-1F621{background-position:-504px -168px}.emoji-1F62A{background-position:-72px -216px}.emoji-1F637{background-position:-120px -216px}.emoji-ue11a{background-position:-168px -216px}.emoji-ue541{background-position:-72px -264px}.emoji-ue738{background-position:-120px -264px}.emoji-ue332{background-position:-168px -264px}.emoji-ue333{background-position:-216px -264px}.emoji-ue30f{background-position:-264px -264px}.emoji-jinggao{background-position:-312px -264px}.emoji-ue252{background-position:-360px -264px}.emoji-hongdeng{background-position:-408px -264px}.emoji-landeng{background-position:-456px -264px}.emoji-ue432{background-position:-504px -264px}.emoji-jgz{background-position:-72px -312px}.emoji-ppx{background-position:-120px -312px}.emoji-lsj{background-position:-168px -312px}.emoji-yyz{background-position:-216px -312px}.emoji-666{background-position:-264px -312px}.emoji-ok{background-position:-312px -312px}.emoji-muzhi{background-position:-360px -312px}.emoji-meitui{background-position:-408px -312px}.emoji-huanggua{background-position:-456px -312px}.emoji-gouyin{background-position:-504px -312px}", ""])
	},
	BeZZ: function (t, e, i) {
		var n = i("XJZK");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("448f2ca7", n, !1)
	},
	Bhgp: function (t, e, i) {
		"use strict";
		var n = i("Dd8w"),
			o = i.n(n),
			a = i("woOf"),
			s = i.n(a),
			r = i("Gu7T"),
			c = i.n(r),
			l = i("WFD5"),
			p = (i.n(l), i("Zew7")),
			d = (i.n(p), i("0X07")),
			u = (i.n(d), i("sqP0")),
			x = (i.n(u), i("gL2E")),
			m = (i.n(x), i("hlD9")),
			f = i("4nU2"),
			h = i("Z1db"),
			g = i("oTk5"),
			v = i("M+3x"),
			b = i("vqIZ"),
			_ = i("NbXr"),
			k = i("s0dP"),
			y = i("e1OG");
		e.a = {
			props: {
				gcid: String,
				curTask: Object
			},
			components: {
				XlCommentList: Object(v.a)(m.a),
				XlCommentInput: Object(f.a)(h.a),
				XlCommentAvartar: g.a,
				XlCommentRank: Object(_.a)(b.a),
				XlQuickReview: Object(y.a)(k.a)
			},
			watch: {
				"curTask.taskID": function () {
					this.isInputFocused = !1
				}
			},
			computed: {
				commentPageIndex: function () {
					return this.$store.state.comments.curPage
				},
				reportCommonData: function () {
					return {
						gcid: this.gcid,
						taskid: this.curTask.taskID,
						filename: this.curTask.name,
						pannel: this.pannel
					}
				},
				pannel: function () {
					return this.$store.state.pannel
				},
				comments: function () {
					if (this.gcid) {
						var t = this.$store.state,
							e = t.comments.resources[this.gcid],
							i = [].concat(c()((this.$sget(e, "hot") || []).map(function (e) {
								return s()({}, t.comments.all[e], {
									type: "hot"
								})
							})), c()((this.$sget(e, "new") || []).map(function (e) {
								return t.comments.all[e]
							})));
						return i
					}
				}
			},
			data: function () {
				return {
					maxLength: 100,
					isInputFocused: !1,
					autoSendCommentText: "",
					lastCommentTime: (new Date).getTime()
				}
			},
			methods: {
				report: function (t) {
					var e = (arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}).cid;
					this.$stat("download_detail", "dltab_detail_comment_click", o()({}, this.reportCommonData, {
						button: t,
						cid: e
					}))
				},
				setCurPage: function (t) {
					this.$store.commit("comments/setCurPage", t)
				},
				startComment: function () {
					this.isInputFocused = (new Date).getTime()
				},
				sendQuickReview: function (t) {
					this.autoSendCommentText = t, this.$stat("download_detail", "dltab_detail_quickcomment_click", o()({}, this.reportCommonData, {
						comments: t
					}))
				},
				updateComment: function () {
					var t = this;
					this.$raven.debug("updateComment"), setTimeout(function () {
						t.lastCommentTime = (new Date).getTime()
					}, 2e3)
				},
				handleQuickCommentShow: function (t) {
					this.$stat("download_detail", "dltab_detail_quickcomment_show", o()({}, this.reportCommonData, {
						comments: t.join("|")
					}))
				}
			}
		}
	},
	BrXJ: function (t, e, i) {
		"use strict";
		var n = i("PW15"),
			o = i("VzI3"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\task\\XlPropertyItem.vue", e.a = a.exports
	},
	C95Q: function (t, e, i) {
		t.exports = i.p + "fonts/xlx-icon-vip.4bdedce.ttf"
	},
	DUGm: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this.$createElement;
			return (this._self._c || t)("XlTaskChart", {
				attrs: {
					domReady: this.domReady,
					curTask: this.curTask,
					operate: this.operate
				}
			})
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	DdQc: function (t, e) {
		t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAABdCAYAAACM9XtrAAABLUlEQVR4nO3TQQ3AMBDAsK78sR6FDcVUqbER5JNnZt4FXG2fDgD+Z3QIMDoEGB0CjA4BRocAo0OA0SHA6BBgdAgwOgQYHQKMDgFGhwCjQ4DRIcDoEGB0CDA6BBgdAowOAUaHAKNDgNEhwOgQYHQIMDoEGB0CjA4BRocAo0OA0SHA6BBgdAgwOgQYHQKMDgFGhwCjQ4DRIcDoEGB0CDA6BBgdAowOAUaHAKNDgNEhwOgQYHQIMDoEGB0CjA4BRocAo0OA0SHA6BBgdAgwOgQYHQKMDgFGhwCjQ4DRIcDoEGB0CDA6BBgdAowOAUaHAKNDgNEhwOgQYHQIMDoEGB0CjA4BRocAo0OA0SHA6BBgdAgwOgQYHQKMDgFGhwCjQ4DRIcDoEGB0CDA6BBgdAj5JDQSD3OyyZAAAAABJRU5ErkJggg=="
	},
	EQpe: function (t, e, i) {
		"use strict";
		var n = i("o2eW"),
			o = i("1Z8a"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlConfirm.vue", e.a = a.exports
	},
	EXOm: function (t, e, i) {
		"use strict";
		var n = i("gKGV"),
			o = (i.n(n), i("Rhsk"));
		e.a = {
			props: {
				curUserId: String,
				tid: String,
				speedRank: {
					type: Object,
					default: function () {
						return {}
					}
				},
				getSpeedRank: {
					type: Function,
					default: function () {}
				},
				lastCommentTime: {
					type: Number
				},
				taskID: {
					type: [Number, String]
				}
			},
			watch: {
				curUserId: {
					handler: function () {
						this.getSpeedRank(this.tid)
					}
				},
				tid: {
					handler: function (t) {
						t && this.getSpeedRank(t)
					},
					immediate: !0
				},
				lastCommentTime: {
					handler: function (t) {
						t && this.getSpeedRank(this.tid)
					},
					immediate: !0
				}
			},
			data: function () {
				return {
					topLength: 3,
					entryPage: "",
					entryHead: ""
				}
			},
			computed: {
				isInRank: function () {
					var t = this;
					return this.speedRank.CommentSpeedRanks && -1 !== this.speedRank.CommentSpeedRanks.findIndex(function (e) {
						return t.curUserId === String(e.userId)
					})
				},
				rankLength: function () {
					return this.$sget(this.speedRank.CommentSpeedRanks, "length") || 0
				}
			},
			methods: {
				getUserLink: o.c,
				getAvatar: o.a
			}
		}
	},
	FKCV: function (t, e, i) {
		"use strict";
		var n = i("6zp0"),
			o = i("lfQx"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlHeader.vue", e.a = a.exports
	},
	FjP8: function (t, e, i) {
		"use strict";
		Object.defineProperty(e, "__esModule", {
			value: !0
		});
		var n = i("Bhgp"),
			o = i("lOZi"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "pages\\comment.vue", e.default = a.exports
	},
	FlE6: function (t, e, i) {
		var n = i("BS7F");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("7cd0ef52", n, !1)
	},
	GAsr: function (t, e, i) {
		"use strict";
		var n = i("+mx3"),
			o = i("Npk4"),
			a = !1;
		var s = function (t) {
				a || (i("afZU"), i("hX0O"))
			},
			r = i("VU/8")(n.a, o.a, !1, s, null, null);
		r.options.__file = "components\\TaskChart.vue", e.a = r.exports
	},
	GwHj: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ":root{--color-detail-primary:#a5b4c3;--color-detail-line:#d7e7f1;--color-danger:#ff4848;--side-width:354px}.is-vip{color:var(--color-danger)!important}", ""])
	},
	GzfO: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "xlx-speed-list"
			}, [t._m(0), i("div", {
				staticClass: "xlx-speed-list__content"
			}, [i("ul", [t._l(t.speedRank.CommentSpeedRanks, function (e, n) {
				return t.speedRank.CommentSpeedRanks ? i("li", {
					key: e.cid,
					staticClass: "xlx-speed-list__item",
					class: {
						"is-first": n < t.topLength, "is-myself": t.curUserId === String(e.userId), "is-last": 9 === n && !t.isInRank
					}
				}, [i("a", {
					staticClass: "xlx-speed-list__image",
					class: {
						"is-first": 0 === n, "is-second": 1 === n, "is-third": 2 === n
					},
					attrs: {
						href: t.getUserLink(e.userId, t.entryPage, t.entryHead),
						target: "_blank"
					},
					on: {
						click: function (i) {
							t.$emit("headClick", {
								cid: e.cid
							})
						}
					}
				}, [i("img", {
					directives: [{
						name: "lazy",
						rawName: "v-lazy",
						value: e.portrait,
						expression: "rank.portrait"
					}],
					key: e.portrait,
					attrs: {
						alt: "头像"
					}
				}), n < 3 ? i("span", {
					staticClass: "xlx-speed-list__rank"
				}, [i("i", {
					staticClass: "xlx-icon-crown"
				}), i("i", {
					staticClass: "xlx-speed-list__rank-num"
				}, [t._v(t._s(e.rankValue))])]) : t._e()]), i("p", {
					staticClass: "xlx-speed-list__user-name"
				}, [t._v("\n          " + t._s(t.curUserId === String(e.userId) ? "我" : e.nikeName) + "\n        ")]), i("div", {
					staticClass: "xlx-speed-list__infomation"
				}, [i("p", {
					staticClass: "xlx-speed-list__speed"
				}, [t._v("\n            " + t._s(e.speed) + "\n          ")])])]) : t._e()
			}), t.rankLength < t.topLength ? t._l(t.topLength - t.rankLength, function (e) {
				return i("li", {
					key: e,
					staticClass: "xlx-speed-list__item is-null"
				}, [i("a", {
					staticClass: "xlx-speed-list__image",
					class: {
						"is-first": 0 === e, "is-second": 1 === e, "is-third": 2 === e
					},
					attrs: {
						target: "_blank"
					}
				}, [i("span", {
					staticClass: "xlx-speed-list__rank"
				}, [i("i", {
					staticClass: "xlx-icon-crown"
				}), i("i", {
					staticClass: "xlx-speed-list__rank-num"
				}, [t._v(t._s(t.rankLength + e))])])]), i("p", {
					staticClass: "xlx-speed-list__user-name"
				}, [t._v("\n        虚位以待\n      ")]), t._m(1, !0)])
			}) : t._e(), !t.isInRank && t.tid ? i("li", {
				staticClass: "xlx-speed-list__item",
				class: {
					"is-myself": t.speedRank.commented
				}
			}, [t.speedRank.commented && "0" !== t.curUserId && t.curUserId == String(t.$sget(t.speedRank.userSpeedRank, "userId")) ? [i("a", {
				staticClass: "xlx-speed-list__image"
			}, [i("img", {
				directives: [{
					name: "lazy",
					rawName: "v-lazy",
					value: t.getAvatar(t.curUserId),
					expression: "getAvatar(curUserId)"
				}],
				key: t.curUserId,
				attrs: {
					alt: "头像"
				}
			})]), i("p", {
				staticClass: "xlx-speed-list__user-name"
			}, [t._v("\n        我\n      ")]), i("p", {
				staticClass: "xlx-speed-list__text"
			}, [t._v("第" + t._s(t.$sget(t.speedRank.userSpeedRank, "rankValue")) + "名")]), i("div", {
				staticClass: "xlx-speed-list__infomation"
			}, [i("p", {
				staticClass: "xlx-speed-list__speed"
			}, [t._v("\n          " + t._s(t.$sget(t.speedRank.userSpeedRank, "speed")) + "\n        ")])])] : [i("a", {
				staticClass: "xlx-speed-list__image",
				attrs: {
					href: "javascript:;"
				},
				on: {
					click: function (e) {
						e.stopPropagation(), t.$emit("comment")
					}
				}
			}, [i("img", {
				directives: [{
					name: "lazy",
					rawName: "v-lazy",
					value: t.getAvatar(t.curUserId),
					expression: "getAvatar(curUserId)"
				}],
				key: t.curUserId,
				attrs: {
					alt: "头像"
				}
			})]), i("a", {
				staticClass: "xlx-speed-list__link",
				attrs: {
					href: "javascript:;"
				},
				on: {
					click: function (e) {
						e.stopPropagation(), t.$emit("comment")
					}
				}
			}, [t._v("\n          评论参与排名\n        ")])]], 2) : t._e()], 2)])])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: [function () {
				var t = this.$createElement,
					e = this._self._c || t;
				return e("div", {
					staticClass: "xlx-speed-list__header"
				}, [e("h2", {
					staticClass: "xlx-speed-list__title"
				}, [this._v("速度榜")])])
			}, function () {
				var t = this.$createElement,
					e = this._self._c || t;
				return e("div", {
					staticClass: "xlx-speed-list__infomation"
				}, [e("p", {
					staticClass: "xlx-speed-list__speed"
				})])
			}]
		};
		e.a = o
	},
	H2Fs: function (t, e, i) {
		"use strict";
		var n = i("qfEp"),
			o = i("J80b"),
			a = !1;
		var s = function (t) {
				a || i("2yaw")
			},
			r = i("VU/8")(n.a, o.a, !1, s, null, null);
		r.options.__file = "components\\task\\XlTaskChart.vue", e.a = r.exports
	},
	HVv1: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".index-wrap{overflow:hidden}", ""])
	},
	HxDd: function (t, e, i) {
		"use strict";
		var n = i("fZjL"),
			o = i.n(n),
			a = i("mvHQ"),
			s = i.n(a),
			r = i("gRE1"),
			c = i.n(r),
			l = i("L0TC"),
			p = (i.n(l), i("/8Fg"), function (t, e) {
				return t < e ? -1 : t === e ? 0 : 1
			});
		e.a = {
			props: {
				curTask: {
					type: Object
				},
				subFiles: {
					type: Object,
					default: function () {}
				},
				operate: {
					type: Function,
					default: function () {}
				}
			},
			data: function () {
				var t = this;
				return {
					defaultCheckedKeys: [],
					defaultExpandedKeys: [],
					originCheckedKeys: [],
					checkedKeys: [],
					expandedKeys: [],
					disabledKeys: [],
					editingSelected: !1,
					tree: [],
					branchMap: {},
					leafMap: {},
					loading: !1,
					selectedFileIndex: "",
					columns: [{
						label: "文件名称",
						prop: "name",
						sortable: !0,
						sorter: function (t, e) {
							return p(t.data.fileName, e.data.fileName)
						}
					}, {
						label: "大小",
						prop: "fileSize",
						width: 100,
						sortable: !0,
						sorter: function (t, e) {
							return p(t.data.fileSize, e.data.fileSize)
						}
					}, {
						label: "状态",
						prop: "progress",
						width: 100,
						sortable: !0,
						sorter: function (e, i) {
							return p(t.getProgress(e), t.getProgress(i))
						}
					}]
				}
			},
			computed: {
				checkedKeysCache: function () {
					return this.checkedKeys.reduce(function (t, e) {
						return t[e] = !0, t
					}, {})
				},
				pannel: function () {
					return this.$store.state.pannel
				}
			},
			watch: {
				subFiles: [{
					immediate: !0,
					handler: function (t) {
						this.parseFileList(t || {})
					}
				}, {
					deep: !0,
					handler: "updateTree"
				}],
				"curTask.taskID": {
					immediate: !0,
					handler: function (t) {
						t && (this.editingExpanded = !1)
					}
				}
			},
			methods: {
				parseFileList: function (t) {
					var e = this,
						i = {};
					this.branchMap = {}, this.leafMap = {}, this.setBranch("", ""), c()(t).forEach(function (t) {
						var n = t.filePath;
						t.fileName;
						if (!i[n]) {
							i[n] = !0;
							var o = "";
							n.split("\\").forEach(function (t) {
								"" !== t && (e.setBranch(o, t), o = o ? o + "\\" + t : t)
							})
						}
						e.setLeaf(n.slice(0, -1), t)
					}), this.updateTree(), this.tree = this.branchMap[""].children
				},
				setBranch: function (t, e) {
					var i = this.branchMap[t],
						n = t ? t + "\\" + e : e,
						o = this.branchMap[n];
					return o || (o = this.branchMap[n] = {
						type: "branch",
						name: e,
						children: [],
						key: n,
						parent: i,
						data: {
							fileName: e
						}
					}, i && i.children.push(o)), o
				},
				getProgress: function (t) {
					return "branch" === t.type ? t.data.downloadSize / t.data.fileSize : this.subFiles[t.data.index].downloadSize / this.subFiles[t.data.index].fileSize
				},
				getFileInfo: function (t, e) {
					return "branch" === t.type ? this.branchMap[t.key][e] : this.$sget(this.subFiles, e)
				},
				setLeaf: function (t, e) {
					var i = t ? t + "\\" + e.fileName : e.fileName,
						n = this.branchMap[t],
						o = this.leafMap[i];
					return o || (o = this.leafMap[i] = {
						type: "leaf",
						fullPath: i,
						name: e.fileName,
						key: i,
						parent: n,
						data: e
					}, n.children.push(o)), o
				},
				onCheckedChange: function (t) {
					var e = this;
					this.$raven.debug("onCheckedChange", t);
					var i = t.filter(function (t) {
						return t in e.leafMap
					}).map(function (t) {
						return e.leafMap[t].data.index
					});
					this.$raven.debug("selectedLeaves", i), this.$raven.debug("this.originCheckedKeys", this.originCheckedKeys), i.length === this.originCheckedKeys.length && this.originCheckedKeys.every(function (t) {
						return i.includes(e.$sget(e.leafMap[t], "data", "index"))
					}) ? this.editingSelected = !1 : this.editingSelected = !0, this.$raven.debug("editingSelected", this.editingSelected), this.checkedKeys = t, this.caculateBranch()
				},
				onExpandedChange: function (t) {
					this.$raven.debug("onExpandedChange", t), this.editingExpanded = !0, this.expandedKeys = t
				},
				caculateBranch: function () {
					this.caculateBranchProp(this.branchMap[""], "fileSize"), this.caculateBranchProp(this.branchMap[""], "downloadSize")
				},
				caculateBranchProp: function (t, e, i) {
					var n = this;
					return t.data[e] = t.children.reduce(function (t, o) {
						return "branch" === o.type && n.caculateBranchProp(o, e, i), "function" == typeof i ? i(t, o) : t + ("branch" === o.type || n.checkedKeysCache[o.key] ? o.data[e] : 0)
					}, 0), t[e]
				},
				forEachBranch: function (t, e) {
					var i = this;
					"function" == typeof e && e(t), t.children.forEach(function (t) {
						"branch" === t.type && i.forEachBranch(t, e)
					})
				},
				downloadSelected: function () {
					var t = this;
					if (this.editingSelected) {
						this.loading = !0;
						var e = this.checkedKeys.filter(function (e) {
								return e in t.leafMap
							}).map(function (e) {
								return t.leafMap[e].data.index
							}),
							i = e.join("");
						this.selectedFileIndex !== i && (this.selectedFileIndex = i, this.operate("downloadSelectFiles", null, s()(e)).then(function () {
							t.loading = !1, t.editingSelected = !1, t.updateTree()
						}), this.report("download"))
					}
				},
				getSuffix: function (t) {
					var e = t.match(/\.([^.]+)$/i);
					return e ? e[1].toLowerCase() : ""
				},
				openFile: function (t) {
					this.operate("open", null, t.data.index)
				},
				report: function (t) {
					this.$stat("download_detail", "dltab_detail_filelist_click", {
						pannel: this.pannel,
						taskid: this.curTask.taskID,
						gcid: this.curTask.gcid,
						filename: this.curTask.name,
						button: t
					})
				},
				updateTree: function () {
					var t = this;
					this.disabledKeys = c()(this.leafMap).filter(function (t) {
						return t.data.downloadSize && t.data.downloadSize === t.data.fileSize && t.data.isNeedDownload
					}).map(function (t) {
						return t.key
					}), this.editingSelected ? this.defaultCheckedKeys = this.checkedKeys : this.checkedKeys = this.defaultCheckedKeys = this.originCheckedKeys = o()(this.leafMap).filter(function (e) {
						return t.leafMap[e].data.isNeedDownload
					}), this.editingExpanded ? this.defaultExpandedKeys = this.expandedKeys : this.expandedKeys = this.defaultExpandedKeys = [], this.caculateBranch()
				}
			}
		}
	},
	IbR3: function (t, e, i) {
		var n = i("kxFB");
		(t.exports = i("FZ+f")(!1)).push([t.i, "@font-face{font-family:xlx-icon-vip;src:url(" + n(i("Z33O")) + ') format("truetype")}[class^=vip-icon-]{display:inline-block;width:42px;height:12px;overflow:hidden;line-height:12px;text-align:center;background-image:url(' + n(i("/t4/")) + ');background-size:470px auto;border-radius:2px}[class^=vip-icon-].is-disabled:after{display:none}[class^=vip-icon-].is-small{width:19px;font-size:16px;font-family:xlx-icon-vip!important;font-style:normal;background-image:none}[class^=vip-icon-].is-small:before{display:block}[class^=vip-icon-].is-small:after{display:none}[class^=vip-icon-].is-small.is-disabled{color:#e9e9e9!important;background-color:#aaa}[class^=vip-icon-vip].is-small{color:#ffe3a1!important;background-color:#f15063}[class^=vip-icon-pvip].is-small{color:#c17010!important;background-color:#fdca41}[class^=vip-icon-svip].is-small{color:#ffe14e!important;background-color:#424242}.vip-icon-pvip0,.vip-icon-svip0,.vip-icon-vip0{width:15px}.vip-icon-vip0.is-small:before{content:"\\E66C"}.vip-icon-vip1.is-small:before{content:"\\E66D"}.vip-icon-vip2.is-small:before{content:"\\E66E"}.vip-icon-vip3.is-small:before{content:"\\E66F"}.vip-icon-vip4.is-small:before{content:"\\E670"}.vip-icon-vip5.is-small:before{content:"\\E671"}.vip-icon-vip6.is-small:before{content:"\\E672"}.vip-icon-vip7.is-small:before{content:"\\E673"}.vip-icon-pvip0.is-small:before{content:"\\E67C"}.vip-icon-pvip1.is-small:before{content:"\\E67D"}.vip-icon-pvip2.is-small:before{content:"\\E67E"}.vip-icon-pvip3.is-small:before{content:"\\E682"}.vip-icon-pvip4.is-small:before{content:"\\E683"}.vip-icon-pvip5.is-small:before{content:"\\E684"}.vip-icon-pvip6.is-small:before{content:"\\E685"}.vip-icon-pvip7.is-small:before{content:"\\E686"}.vip-icon-pvip8.is-small:before{content:"\\E69E"}.vip-icon-pvip9.is-small:before{content:"\\E69C"}.vip-icon-pvip10.is-small:before{content:"\\E69D"}.vip-icon-svip0.is-small:before{content:"\\E675"}.vip-icon-svip1.is-small:before{content:"\\E674"}.vip-icon-svip2.is-small:before{content:"\\E67B"}.vip-icon-svip3.is-small:before{content:"\\E67A"}.vip-icon-svip4.is-small:before{content:"\\E678"}.vip-icon-svip5.is-small:before{content:"\\E676"}.vip-icon-svip6.is-small:before{content:"\\E677"}.vip-icon-svip7.is-small:before{content:"\\E679"}.vip-icon-svip8.is-small:before{content:"\\E6A0"}.vip-icon-svip9.is-small:before{content:"\\E69F"}.vip-icon-svip10.is-small:before{content:"\\E6A1"}.vip-icon-pvip0,.vip-icon-svip0,.vip-icon-vip0{width:35px}.vip-icon-pvip10,.vip-icon-svip10{width:46px}.vip-icon-nian{width:12px;background-position:0 -78px}.vip-icon-nian.is-disabled{background-position:-13px -78px}.vip-icon-vip0{background-position:0 0}.vip-icon-vip1{background-position:-36px 0}.vip-icon-vip2{background-position:-79px 0}.vip-icon-vip3{background-position:-122px 0}.vip-icon-vip4{background-position:-165px 0}.vip-icon-vip5{background-position:-208px 0}.vip-icon-vip6{background-position:-251px 0}.vip-icon-vip7{background-position:-294px 0}.vip-icon-vip0.is-disabled{background-position:0 -13px}.vip-icon-vip1.is-disabled{background-position:-36px -13px}.vip-icon-vip2.is-disabled{background-position:-79px -13px}.vip-icon-vip3.is-disabled{background-position:-122px -13px}.vip-icon-vip4.is-disabled{background-position:-165px -13px}.vip-icon-vip5.is-disabled{background-position:-208px -13px}.vip-icon-vip6.is-disabled{background-position:-251px -13px}.vip-icon-vip7.is-disabled{background-position:-294px -13px}.vip-icon-pvip0{background-position:0 -26px}.vip-icon-pvip1{background-position:-36px -26px}.vip-icon-pvip2{background-position:-79px -26px}.vip-icon-pvip3{background-position:-122px -26px}.vip-icon-pvip4{background-position:-165px -26px}.vip-icon-pvip5{background-position:-208px -26px}.vip-icon-pvip6{background-position:-251px -26px}.vip-icon-pvip7{background-position:-294px -26px}.vip-icon-pvip8{background-position:-337px -26px}.vip-icon-pvip9{background-position:-380px -26px}.vip-icon-pvip10{background-position:-423px -26px}.vip-icon-pvip0.is-disabled{background-position:0 -39px}.vip-icon-pvip1.is-disabled{background-position:-36px -39px}.vip-icon-pvip2.is-disabled{background-position:-79px -39px}.vip-icon-pvip3.is-disabled{background-position:-122px -39px}.vip-icon-pvip4.is-disabled{background-position:-165px -39px}.vip-icon-pvip5.is-disabled{background-position:-208px -39px}.vip-icon-pvip6.is-disabled{background-position:-251px -39px}.vip-icon-pvip7.is-disabled{background-position:-294px -39px}.vip-icon-pvip8.is-disabled{background-position:-337px -39px}.vip-icon-pvip9.is-disabled{background-position:-380px -39px}.vip-icon-pvip10.is-disabled{background-position:-423px -39px}.vip-icon-svip0{background-position:0 -52px}.vip-icon-svip1{background-position:-36px -52px}.vip-icon-svip2{background-position:-79px -52px}.vip-icon-svip3{background-position:-122px -52px}.vip-icon-svip4{background-position:-165px -52px}.vip-icon-svip5{background-position:-208px -52px}.vip-icon-svip6{background-position:-251px -52px}.vip-icon-svip7{background-position:-294px -52px}.vip-icon-svip8{background-position:-337px -52px}.vip-icon-svip9{background-position:-380px -52px}.vip-icon-svip10{background-position:-423px -52px}.vip-icon-svip0.is-disabled{background-position:0 -65px}.vip-icon-svip1.is-disabled{background-position:-36px -65px}.vip-icon-svip2.is-disabled{background-position:-79px -65px}.vip-icon-svip3.is-disabled{background-position:-122px -65px}.vip-icon-svip4.is-disabled{background-position:-165px -65px}.vip-icon-svip5.is-disabled{background-position:-208px -65px}.vip-icon-svip6.is-disabled{background-position:-251px -65px}.vip-icon-svip7.is-disabled{background-position:-294px -65px}.vip-icon-svip8.is-disabled{background-position:-337px -65px}.vip-icon-svip9.is-disabled{background-position:-380px -65px}.vip-icon-svip10.is-disabled{background-position:-423px -65px}.vip-icon-pvip8:after,.vip-icon-pvip9:after,.vip-icon-pvip10:after,.vip-icon-svip8:after,.vip-icon-svip9:after,.vip-icon-svip10:after{display:block;margin-left:8px;width:22px;height:12px;background-image:url(' + n(i("/t4/")) + ');background-size:470px auto;background-position:-36px -78px;background-repeat:no-repeat;content:"";animation:iconVip 2s both infinite}@keyframes iconVip{0%{transform:translateX(0)}50%,to{transform:translateX(30px)}}', ""])
	},
	Izpo: function (t, e, i) {
		"use strict";
		var n = i("Gu7T"),
			o = i.n(n),
			a = i("Dd8w"),
			s = i.n(a),
			r = i("8SKo"),
			c = (i.n(r), i("AtIQ")),
			l = (i("Cb+C"), i("FjP8")),
			p = i("/TYz"),
			d = i("e/Sy"),
			u = i("37pH"),
			x = i("2v4Z"),
			m = i("X4AI"),
			f = (i("is58"), i("6h/5"), i("P/2W")),
			h = i("/8Fg");
		e.a = {
			created: function () {
				var t = this;
				this.leaveTabSentry = function () {
					1 === t.cur && (t.tabFixed = !0)
				}
			},
			mounted: function () {
				this.eleHtml = document.querySelector("html"), this.pageHeight = window.innerHeight, this.attachResizeEvent()
			},
			components: {
				Intersect: c.a,
				CommentView: l.default,
				PropertyView: d.default,
				XlRecommend: Object(x.a)(u.a),
				HomePageView: p.default,
				XlFileList: f.a,
				SpeedChartView: m.default
			},
			data: function () {
				return {
					curTaskGcid: "",
					eventIdOnCurTaskChange: null,
					eventIdOnTaskInfoChange: null,
					pageHeight: 0,
					eleHtml: null,
					cur: 0,
					activeKey: "",
					rcount: 0,
					filesLengthData: 0,
					showBackToTop: !1,
					tabFixed: !1,
					detailReady: !1,
					transition: !0,
					leaveTabSentry: function () {},
					curTaskChange: function () {}
				}
			},
			computed: {
				pannel: function () {
					return this.$store.state.pannel
				},
				curTaskID: function () {
					return this.$store.state.tasks.curTaskID
				},
				curTask: function () {
					return this.$sget(this.$store.state.tasks.all, this.curTaskID) || {}
				},
				tabs: function () {
					var t = this,
						e = [{
							title: "评论(" + this.filterRcount(this.rcount) + ")",
							key: "comments",
							reportName: "comment_tab"
						}, {
							title: "文件列表(" + this.filterFilelistLength(this.filesLengthData) + ")",
							key: "files",
							reportName: "filelist_tab"
						}, {
							title: "属性详情",
							key: "detail",
							reportName: "attribute_tab"
						}];
					return this.filesLength || e.splice(1, 1), e.filter(function (e) {
						return e.key === t.activeKey
					}).length || (this.activeKey = e[0].key), e
				},
				filesLength: function () {
					return this.$sget(this.curTask, "subFilesCount")
				},
				reportCommonData: function () {
					return {
						pannel: this.pannel,
						gcid: this.curTask.gcid,
						filename: this.curTask.name,
						taskid: this.curTaskID
					}
				}
			},
			watch: {
				filesLength: function (t) {
					this.filesLengthData = t
				},
				"curTask.gcid": {
					handler: function (t) {
						this.curTaskGcid = t
					},
					immediate: !0
				},
				curTaskID: function (t) {
					t ? (this.initDetail(), this.showDetail()) : this.showHomePage()
				},
				activeKey: function (t) {
					var e = this.tabs.find(function (e) {
						return e.key === t
					});
					e && this.reportTab(e.reportName, "show")
				}
			},
			methods: {
				handleUpdateActiveKey: function (t) {
					var e = this.tabs.find(function (e) {
						return e.key === t
					});
					e && this.reportTab(e.reportName, "click")
				},
				reportTab: function (t) {
					var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "click";
					this.$stat("download_detail", "dltab_detail_tab_" + e, s()({}, this.reportCommonData, {
						tab: t
					}))
				},
				rcountChange: function (t) {
					this.rcount !== t && (this.rcount = t)
				},
				filterRcount: function (t) {
					return t > 999 ? "999+" : t || "0"
				},
				filterFilelistLength: function (t) {
					return t > 99 ? "99+" : t || "0"
				},
				reportReady: function () {
					return Object(h.a)("PageReady", "taskDetail")
				},
				setTask: function () {
					for (var t, e = arguments.length, i = Array(e), n = 0; n < e; n++) i[n] = arguments[n];
					return (t = this.$store).commit.apply(t, ["tasks/set"].concat(o()(i)))
				},
				reportClick: function (t, e) {
					this.$stat("download_detail", "dltab_detail_curve_click", s()({}, this.reportCommonData, {
						position: t,
						button: e
					}))
				},
				reportRecommendClick: function (t, e) {
					var i = this.$store.state.reviews.all[t];
					this.$stat("download_detail", "dltab_detail_recommend_click", s()({}, this.reportCommonData, {
						rn: e + 1,
						iteminfo: i.title
					}))
				},
				operate: function (t) {
					var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "right";
					this.reportClick(e, t);
					for (var i = arguments.length, n = Array(i > 2 ? i - 2 : 0), a = 2; a < i; a++) n[a - 2] = arguments[a];
					return h.a.apply(void 0, ["OperateTask", this.curTaskID, t].concat(o()(n)))
				},
				attachResizeEvent: function () {
					var t = this;
					window.addEventListener("resize", function () {
						t.transition = !1, t.pageHeight = window.innerHeight
					})
				},
				showHomePage: function () {
					this.eleHtml.classList.remove("is-scroll"), this.transition = !0, this.cur = 0, this.$stat("download_detail", "dltab_detail_backstart_click", this.reportCommonData)
				},
				showDetail: function () {
					var t = this;
					this.detailReady = !1, setTimeout(function () {
						t.transition = !0, t.cur = 1, t.eleHtml.classList.add("is-scroll"), setTimeout(function () {
							t.detailReady = !0
						}, 500)
					}, 200)
				},
				initDetail: function () {
					(document.scrollingElement || document.body).scrollTop = 0
				},
				backToTop: function () {
					(document.scrollingElement || document.body).scrollTop = 0, this.$stat("download_detail", "dltab_detail_backtop_click", this.reportCommonData)
				}
			}
		}
	},
	J80b: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return t.curTask ? i("div", {
				staticClass: "chart-box",
				style: {
					height: "/task-detail" === t.$route.path && "100vh"
				},
				on: {
					contextmenu: function (t) {
						t.preventDefault()
					}
				}
			}, [i("div", {
				staticClass: "data-chart"
			}, [i("div", {
				staticClass: "file-info"
			}, [i("div", {
				staticClass: "file-name"
			}, [i("span", {
				class: t._f("icon")([t.curTask.suffix && t.curTask.suffix.toLowerCase(), t.curTask.type])
			}), i("div", {
				staticClass: "text-name"
			}, [t._v("\n              " + t._s(t.curTask.name) + "\n            ")]), t.curTask.actions && t.curTask.actions.includes("subtitleDownload") ? i("a", {
				staticClass: "link",
				attrs: {
					href: "javascript:;",
					title: "字幕搜索"
				},
				on: {
					click: function (e) {
						t.operate("subtitleDownload")
					}
				}
			}, [t._v("字幕搜索")]) : t._e()]), t.curTask.actions && t.curTask.actions.length ? i("div", {
				staticClass: "file-opt"
			}, t._l(t.curTask.actions, function (e) {
				return ["subtitleDownload"].includes(e) ? t._e() : i("a", {
					key: e,
					class: t._f("action-klass")([e, "ico-o-"]),
					attrs: {
						href: "javascript:;",
						title: t._f("action-name")(e)
					},
					on: {
						click: function (i) {
							t.operate(e)
						}
					}
				})
			})) : t._e()]), i("TaskChart", {
				attrs: {
					options: t.data,
					step: 1,
					domReady: t.domReady
				},
				scopedSlots: t._u([{
					key: "label",
					fn: function (e) {
						return e.value > 0 && "5" === t.curTask.status && 100 != t.curTask.progress ? i("div", {
							staticClass: "data-show",
							style: t.getDotStyle(e, 7)
						}, [i("label-item", {
							attrs: {
								labelData: e,
								labelWidth: t.labelWidth,
								labelPadding: t.labelPadding,
								taskId: t.curTask.taskID
							}
						})], 1) : t._e()
					}
				}])
			})], 1), i("div", {
				staticClass: "data-info"
			}, [i("div", {
				staticClass: "data-info-main"
			}, ["8" !== t.curTask.status && "10" !== t.curTask.status || 0 !== t.$sget(this.curTask, "duration") ? [i("p", [t._v("下载进度 "), i("span", [t._v(t._s(t.curTask.progress) + "%")])]), i("i", {
				staticClass: "line"
			}), i("p", [t._v("平均速度 "), i("span", {
				staticClass: "data"
			}, [t._v(t._s(t._f("file-size")(t.curTask.averageSpeed)) + "/s")])]), i("i", {
				staticClass: "line"
			}), "8" === t.curTask.status || "10" === t.curTask.status && t.curTask.maxSpeed ? i("p", [t._v("峰值速度 "), i("span", {
				staticClass: "data"
			}, [t._v(t._s(t._f("file-size")(t.fixMaxSpeed(t.curTask.maxSpeed, t.curTask.averageSpeed))) + "/s")])]) : i("p", [t._v("资源数 "), i("span", [t._v(t._s(t.curTask.resourceCount || "-") + " / " + t._s(t.curTask.allResourceCount || "-"))])])] : [t._v("\n        恭喜你，解锁“秒下”成就\n      ")]], 2), t._m(0)]), t.curTask.errMessage ? i("div", {
				staticClass: "data-note"
			}, [i("p", [i("span", {
				staticClass: "ico-d-note"
			}), t._v(t._s(t.curTask.errMessage))])]) : "5" !== t.curTask.status && t.curTaskPrimaryAction ? i("div", {
				staticClass: "btn-data-wp"
			}, ["downloadSelected" !== t.curTask.stopReason || "7" !== t.curTask.status ? i("a", {
				staticClass: "btn-opt",
				attrs: {
					href: "javascript:;"
				},
				on: {
					click: function (e) {
						t.operate(t.curTaskPrimaryAction, "middle")
					}
				}
			}, [i("span", {
				class: t._f("action-klass")([t.curTaskPrimaryAction, "ico-d-"])
			}), t._v(" " + t._s(t._f("action-name")(t.curTaskPrimaryAction)) + "\n      ")]) : t._e(), "delete" === t.curTaskPrimaryAction ? i("p", {
				staticClass: "txt-tips"
			}, [t._v("本地文件已删除")]) : t._e()]) : t._e()]) : i("div", {
				staticClass: "chart-box"
			})
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: [function () {
				var t = this.$createElement,
					e = this._self._c || t;
				return e("div", {
					staticClass: "data-info-des"
				}, [e("p", [e("i", {
					staticClass: "label-color color-all"
				}), this._v("总速度")]), e("i", {
					staticClass: "line"
				}), e("p", [e("i", {
					staticClass: "label-color color-vip"
				}), this._v("会员加速")])])
			}]
		};
		e.a = o
	},
	Jbmy: function (t, e, i) {
		"use strict";
		var n = i("dHgb"),
			o = i("BQ5y"),
			a = !1;
		var s = function (t) {
				a || i("KCAd")
			},
			r = i("VU/8")(n.a, o.a, !1, s, "data-v-e742352e", null);
		r.options.__file = "components\\comment\\XlCommentItem.vue", e.a = r.exports
	},
	KCAd: function (t, e, i) {
		var n = i("KZy+");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("ebeb771c", n, !1)
	},
	"KZy+": function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".error-message[data-v-e742352e]{position:relative}.error-message .td-cover[data-v-e742352e]{top:25px}.is-absolute[data-v-e742352e]{position:absolute}", ""])
	},
	Kc4X: function (t, e, i) {
		t.exports = i.p + "img/spr-main.a047a1a.png"
	},
	Ki11: function (t, e, i) {
		"use strict";
		e.a = {
			props: {
				entryPage: String,
				entry: String,
				uid: [String, Number],
				size: {
					type: String,
					default: "sm"
				}
			},
			computed: {
				user: function () {
					return this.$store.state.users.all[this.uid] || {}
				},
				kinds: function () {
					return this.$sget(this.user, "kinds") || []
				},
				reviewNum: function () {
					return this.kinds.includes("review_num") && "lg" === this.size ? "影评号" : ""
				},
				signer: function () {
					return this.kinds.includes("signer") && "lg" === this.size ? "签约写手" : ""
				},
				reviewExpert: function () {
					return this.kinds.includes("review_expert") && "lg" === this.size ? "影评达人" : ""
				}
			},
			methods: {
				badgeClick: function (t) {
					this.$stat("authentic", "authentic_page_entry_click", {
						identity: t,
						entrypage: this.entryPage,
						entry: this.entry
					})
				}
			}
		}
	},
	Ki5d: function (t, e, i) {
		"use strict";
		var n = i("c831"),
			o = i("xJzN"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlVip.vue", e.a = a.exports
	},
	"L/YN": function (t, e, i) {
		"use strict";
		e.a = function (t) {
			var e = t.userInfo,
				i = t.appId,
				n = t.clientVersion;
			return o()({}, e, {
				appid: i,
				clientVersion: n
			})
		};
		var n = i("woOf"),
			o = i.n(n)
	},
	L0TC: function (t, e, i) {
		var n = i("+lnq");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("02ba5569", n, !1)
	},
	"LHx/": function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "xlx-face",
				on: {
					click: function (t) {
						t.stopPropagation()
					}
				}
			}, [i("a", {
				directives: [{
					name: "popup",
					rawName: "v-popup:emoji",
					arg: "emoji"
				}],
				staticClass: "xlx-face__icon",
				attrs: {
					href: "javascript:;",
					title: "表情"
				}
			}, [i("i", {
				staticClass: "xlx-icon-face"
			})]), i("popup", {
				ref: "emoji",
				staticClass: "xlx-face-emoji",
				staticStyle: {
					position: "fixed",
					outline: "none"
				},
				attrs: {
					trigger: "click",
					display: t.show && !t.isInputFocus,
					padding: 4,
					direction: "topEnd"
				},
				on: {
					"update:display": t.updateDisplay
				}
			}, [i("ul", {
				on: {
					click: function (e) {
						e.stopPropagation(), t.handleClick(e)
					},
					mouseleave: function (e) {
						t.show = !1
					}
				}
			}, [i("li", {
				attrs: {
					title: "开心"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F604"
			})]), i("li", {
				attrs: {
					title: "可爱"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F60A"
			})]), i("li", {
				attrs: {
					title: "大笑"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F603"
			})]), i("li", {
				attrs: {
					title: "憨笑"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-263A"
			})]), i("li", {
				attrs: {
					title: "眨眼"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F609"
			})]), i("li", {
				attrs: {
					title: "色"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F60D"
			})]), i("li", {
				attrs: {
					title: "爱你"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F618"
			})]), i("li", {
				attrs: {
					title: "亲亲"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F61A"
			})]), i("li", {
				attrs: {
					title: "脸红"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F633"
			})]), i("li", {
				attrs: {
					title: "满意"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F60C"
			})]), i("li", {
				attrs: {
					title: "傻笑"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F601"
			})]), i("li", {
				attrs: {
					title: "鬼脸"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F61C"
			})]), i("li", {
				attrs: {
					title: "吐舌"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F61D"
			})]), i("li", {
				attrs: {
					title: "无语"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F612"
			})]), i("li", {
				attrs: {
					title: "得意"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F60F"
			})]), i("li", {
				attrs: {
					title: "汗"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F613"
			})]), i("li", {
				attrs: {
					title: "失望"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F614"
			})]), i("li", {
				attrs: {
					title: "低落"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F61E"
			})]), i("li", {
				attrs: {
					title: "痛苦"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F616"
			})]), i("li", {
				attrs: {
					title: "焦虑"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F622"
			})]), i("li", {
				attrs: {
					title: "担心"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F630"
			})]), i("li", {
				attrs: {
					title: "震惊"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F628"
			})]), i("li", {
				attrs: {
					title: "悔恨"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F623"
			})]), i("li", {
				attrs: {
					title: "鼻涕"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F625"
			})]), i("li", {
				attrs: {
					title: "哭"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F62D"
			})]), i("li", {
				attrs: {
					title: "大哭"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F602"
			})]), i("li", {
				attrs: {
					title: "晕"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F632"
			})]), i("li", {
				attrs: {
					title: "惊恐"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F631"
			})]), i("li", {
				attrs: {
					title: "心烦"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F620"
			})]), i("li", {
				attrs: {
					title: "生气"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F621"
			})]), i("li", {
				attrs: {
					title: "睡觉"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F62A"
			})]), i("li", {
				attrs: {
					title: "口罩"
				}
			}, [i("span", {
				staticClass: "face-icon-emoji emoji-1F637"
			})])])])], 1)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	LstC: function (t, e, i) {
		"use strict";
		Object.defineProperty(e, "__esModule", {
			value: !0
		});
		var n = i("Izpo"),
			o = i("S2BL"),
			a = !1;
		var s = function (t) {
				a || i("6hi/")
			},
			r = i("VU/8")(n.a, o.a, !1, s, null, null);
		r.options.__file = "pages\\home.vue", e.default = r.exports
	},
	"M+3x": function (t, e, i) {
		"use strict";
		var n = i("woOf"),
			o = i.n(n),
			a = i("Gu7T"),
			s = i.n(a),
			r = i("yxXY"),
			c = i("7udH"),
			l = i.n(c);
		e.a = r.a.connect({
			mapStateToProps: {
				comments: function (t, e) {
					var i = t.comments.resources[e.tid],
						n = [].concat(s()((l()(i, "hot") || []).map(function (e) {
							return o()({}, t.comments.all[e], {
								type: "hot"
							})
						})), s()((l()(i, "new") || []).map(function (e) {
							return t.comments.all[e]
						})));
					return n
				},
				rcount: function (t, e) {
					var i = t.comments.resources[e.tid];
					return l()(i, "rcount") || 0
				},
				userId: function (t, e) {
					return t.users.curUser.userId
				}
			},
			mapDispatchToProps: {
				getComments: "comments/get"
			}
		})
	},
	M9xP: function (t, e, i) {
		"use strict";
		e.a = {
			props: {
				config: {
					type: Object,
					validator: function (t) {
						return ["success", "error", "warning"].includes(t.type) && t.content && t.delay
					}
				}
			},
			data: function () {
				return {
					show: !1,
					timer: 0
				}
			},
			watch: {
				config: {
					immediate: !0,
					handler: function (t) {
						t && this.showMessage()
					}
				}
			},
			methods: {
				showMessage: function () {
					var t = this;
					clearTimeout(this.timer), this.show = !0, this.$emit("show"), this.timer = setTimeout(function () {
						t.show = !1, t.$emit("hide")
					}, this.config.delay)
				}
			}
		}
	},
	MOER: function (t, e, i) {
		"use strict";
		var n = i("Xxa5"),
			o = i.n(n),
			a = i("exGp"),
			s = i.n(a),
			r = i("//Fk"),
			c = i.n(r),
			l = i("fZjL"),
			p = i.n(l),
			d = i("woOf"),
			u = i.n(d),
			x = i("Rhsk"),
			m = i("L/YN"),
			f = i("oxQo"),
			h = i("/8Fg"),
			g = i("9ry8"),
			v = i("ZKSA"),
			b = i("+3xp"),
			_ = {};
		e.a = {
			components: {
				XlEmoji: v.a,
				XlMessage: b.a
			},
			props: {
				curTask: Object,
				show: {
					type: Boolean,
					default: !0
				},
				tid: String,
				curUserId: {
					type: String,
					default: "0"
				},
				curUserNick: {
					type: String
				},
				publishComments: {
					type: Function,
					default: function () {}
				},
				getComments: {
					type: Function,
					default: function () {}
				},
				setCurPage: {
					type: Function,
					default: function () {}
				},
				comment: {
					type: Object
				},
				maxLength: {
					type: Number,
					default: 100
				},
				userNick: {
					type: String
				},
				defaultPlaceholder: {
					type: String
				},
				focus: {
					type: [Boolean, Number],
					default: !1
				},
				autoSendCommentText: String
			},
			computed: {
				trimedText: function () {
					return this.text.trim()
				},
				textLen: function () {
					return this.trimedText.length
				},
				isLogin: function () {
					return "0" !== this.curUserId
				},
				disabled: function () {
					return !(this.textLen && !this.isSending && this.tid)
				},
				placeholder: function () {
					return this.userNick ? "回复 " + this.userNick + "：" : this.defaultPlaceholder
				},
				extra: function () {
					var t = {
						kuaiNiaoSpeedup: null,
						bandWidth: null,
						taskSize: this.$sget(this.curTask, "size"),
						taskSuffix: this.$sget(this.curTask, "suffix"),
						taskType: this.$sget(this.curTask, "type"),
						taskSpeed: this.$sget(this.curTask, "averageSpeed"),
						taskUrl: this.$sget(this.curTask, "url"),
						taskName: this.$sget(this.curTask, "name")
					};
					return u()({}, t, {
						extParams: p()(t).join(","),
						downloadspeed: Object(f.d)(this.$sget(this.curTask, "averageSpeed"))
					})
				},
				pannel: function () {
					this.$store.state.pannel
				}
			},
			data: function () {
				return {
					text: "",
					isSending: !1,
					messageConfig: null,
					onHideMessage: function () {},
					isInputFocus: !1
				}
			},
			mounted: function () {
				this.useDraftComment(), document.body.addEventListener("click", this.blurHandler)
			},
			beforeDestroy: function () {
				document.body.removeEventListener("click", this.blurHandler)
			},
			watch: {
				focus: function (t) {
					var e = this;
					t && this.$nextTick(function () {
						e.$refs.replyInput.focus()
					})
				},
				autoSendCommentText: function (t) {
					this.$raven.debug("autoSendCommentText", t), this.$emit("update:autoSendCommentText", ""), t && (this.text = t, this.sendComment())
				},
				text: function (t) {
					t.length > this.maxLength && (this.text = t.substr(0, this.maxLength)), _[this.tid + this.$sget(this.comment, "cid")] = t
				},
				tid: function () {
					this.useDraftComment()
				}
			},
			methods: {
				blurHandler: function () {
					this.$emit("update:focus", !1)
				},
				login: function () {
					var t = this;
					return this.$raven.debug("login"), new c.a(function (e, i) {
						Object(x.g)(function (t, n) {
							t ? i(new Error("login error")) : e()
						}), setTimeout(function () {
							t.isSending = !1
						}, 500)
					})
				},
				getAuthPlatformParamObj: function () {
					var t = s()(o.a.mark(function t() {
						var e, i, n;
						return o.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									return t.next = 2, Object(h.a)("GetUserInfo", 1);
								case 2:
									return e = t.sent, i = 165, t.next = 6, Object(h.a)("GetThunderVersion");
								case 6:
									return n = t.sent, t.abrupt("return", Object(m.a)({
										userInfo: JSON.parse(e),
										appId: i,
										clientVersion: n
									}));
								case 8:
								case "end":
									return t.stop()
							}
						}, t, this)
					}));
					return function () {
						return t.apply(this, arguments)
					}
				}(),
				auth: function () {
					var t = s()(o.a.mark(function t() {
						var e, i = this;
						return o.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									return t.next = 2, this.getAuthPlatformParamObj();
								case 2:
									return e = t.sent, t.abrupt("return", Object(g.a)("thunderx", e).catch(function (t) {
										return i.$raven.debug(t), "auth error" !== t.message && "not login" !== t.message && i.$raven.warn(t), c.a.reject(new Error("auth error"))
									}));
								case 4:
								case "end":
									return t.stop()
							}
						}, t, this)
					}));
					return function () {
						return t.apply(this, arguments)
					}
				}(),
				useDraftComment: function () {
					this.text = _[this.tid + this.$sget(this.comment, "cid")] || ""
				},
				beforeComment: function () {
					var t = s()(o.a.mark(function t() {
						return o.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									return t.next = 2, this.login();
								case 2:
									return t.next = 4, this.auth();
								case 4:
								case "end":
									return t.stop()
							}
						}, t, this)
					}));
					return function () {
						return t.apply(this, arguments)
					}
				}(),
				keyDownCtrlEnterHandler: function (t) {
					this.sendComment(t)
				},
				sendCommentHandler: function (t) {
					this.sendComment(t)
				},
				sendComment: function () {
					var t = s()(o.a.mark(function t(e) {
						return o.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									if (!this.disabled) {
										t.next = 2;
										break
									}
									return t.abrupt("return");
								case 2:
									return this.isSending = !0, t.prev = 3, t.next = 6, this.beforeComment();
								case 6:
									return t.next = 8, this.sendCommentRequest(e);
								case 8:
									this.$sget(this, "comment", "cid") ? this.$emit("sendReply", {
										cid: this.comment.cid
									}) : this.$emit("sendComment"), t.next = 14;
									break;
								case 11:
									t.prev = 11, t.t0 = t.catch(3), "login error" !== t.t0.message && "auth error" !== t.t0.message && (this.$raven.warn(t.t0), this.showFailure("评论失败"));
								case 14:
									return t.prev = 14, this.isSending = !1, t.finish(14);
								case 17:
								case "end":
									return t.stop()
							}
						}, t, this, [
							[3, 11, 14, 17]
						])
					}));
					return function (e) {
						return t.apply(this, arguments)
					}
				}(),
				sendCommentRequest: function () {
					var t = s()(o.a.mark(function t(e) {
						var i, n, a, s = this;
						return o.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									return i = "", t.next = 3, this.publishComments({
										tid: this.tid,
										sourceId: this.tid,
										comment: this.trimedText,
										cid: this.$sget(this, "comment", "cid"),
										username: this.curUserNick,
										extra: this.extra
									});
								case 3:
									0 === (n = t.sent).code || 0 === n.result ? (this.text = "", this.showSuccess("评论成功"), this.$raven.debug("finish comment"), this.$emit("finish"), this.$emit("update:focus", !1), setTimeout(function () {
										s.$store.dispatch("comments/getSingleComment", {
											tid: s.tid,
											sourceId: s.tid,
											cid: n.cid_str,
											userId: s.$store.state.users.curUser.userId
										}).then(function () {
											s.setCurPage(1)
										}).catch(function (t) {
											s.$raven.warn(t)
										})
									}, 1e3)) : (7 === (a = n.result || n.code) ? i = "您可能已掉线，请重新登录后发表评论" : 4018 === a || 4012 === a || 4011 === a ? i = "您发表内容太频繁了，已被禁言" : 70012 === a && (i = "您因涉嫌发布广告，已经被禁言"), this.showFailure(i));
								case 5:
								case "end":
									return t.stop()
							}
						}, t, this)
					}));
					return function (e) {
						return t.apply(this, arguments)
					}
				}(),
				showSuccess: function (t) {
					var e = this;
					return new c.a(function (i, n) {
						e.messageConfig = {
							type: "success",
							content: t || "评论成功",
							delay: 1e3
						}
					})
				},
				showFailure: function (t) {
					var e = this;
					return new c.a(function (i, n) {
						e.messageConfig = {
							type: "warning",
							content: t || "评论失败",
							delay: 1e3
						}
					})
				},
				handlePickEmoji: function (t, e) {
					if (!(this.text.length + t.length > this.maxLength)) {
						var i = this.$refs.replyInput,
							n = this.text,
							o = t,
							a = i.selectionStart,
							s = i.selectionEnd,
							r = n.substring(0, a) + o + n.substring(s, n.length);
						this.text = r, this.$nextTick(function () {
							i.focus(), a += o.length, s += o.length, i.setSelectionRange(a, a)
						}), this.$stat("right_area", "filmlib_detailpage_emoji_click", {
							gcid: this.tid || "",
							emoji: e
						}), this.$stat("download_detail", "dltab_detail_comment_emoj_click", {
							pannel: this.pannel,
							filename: this.curTask.name,
							taskid: this.curTask.taskID,
							gcid: this.tid,
							emoji: e
						})
					}
				},
				handleEmojiOpen: function () {
					this.isInputFocus = !1, this.$stat("right_area", "filmlib_detailpage_emoji_show", {
						gcid: this.tid || ""
					})
				},
				handInputFocus: function () {
					this.$emit("update:focus", !0), this.isInputFocus = !0
				},
				handInputBlur: function () {
					this.isInputFocus = !1
				}
			}
		}
	},
	"N9/H": function (t, e, i) {
		t.exports = i.p + "img/xlx-icon-24x24-2x.9be1c37.png"
	},
	NQag: function (t, e, i) {
		"use strict";

		function n(t, e) {
			for (var i = t.toString().length; i < e;) t = "0" + t, i++;
			return t
		}
		e.a = function (t) {
			var e = new Date(t);
			return "Invalid Date" === e.toString() ? "" : e.getFullYear() + "-" + n(e.getMonth() + 1, 2) + "-" + n(e.getDate(), 2)
		}
	},
	NbXr: function (t, e, i) {
		"use strict";
		var n = i("yxXY"),
			o = i("7udH");
		i.n(o);
		e.a = n.a.connect({
			mapStateToProps: {
				speedRank: function (t, e) {
					return e.tid ? t.comments.speedRank[e.tid] : {}
				},
				curUserId: function (t, e) {
					return t.users.curUser.userId
				}
			},
			mapDispatchToProps: {
				getSpeedRank: "comments/getSpeedRank"
			}
		})
	},
	Npk4: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				ref: "canvasBox",
				staticClass: "canvas-box"
			}, [i("canvas", {
				ref: "dataChart",
				staticClass: "canvas-data",
				style: "transform: scale(" + 1 / t.scale + ");"
			}), t._l(t.labels, function (e) {
				return e ? t._t("label", null, {
					value: e.value,
					x: e.x,
					y: e.y,
					canvasWidth: t.width / t.scale,
					canvasHeight: t.height / t.scale
				}) : t._e()
			})], 2)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	OCsU: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".xlx-detail{display:flex;padding-bottom:50px}.xlx-detail .xlx-comment{flex:1;width:calc(100% - 212px)}.xlx-detail .xlx-speed-list{margin-left:20px}", ""])
	},
	OnMG: function (t, e, i) {
		"use strict";
		var n = i("bolP"),
			o = i("YnST"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlIcon.vue", e.a = a.exports
	},
	"P/2W": function (t, e, i) {
		"use strict";
		var n = i("HxDd"),
			o = i("haX0"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlFileList.vue", e.a = a.exports
	},
	PW15: function (t, e, i) {
		"use strict";
		e.a = {
			props: {
				downloadSize: Number,
				fileSize: [Number, String],
				label: String,
				description: String
			}
		}
	},
	PeDW: function (t, e, i) {
		"use strict";
		e.a = {
			video: "1",
			install: "6",
			music: "4",
			pic: "5",
			doc: "7",
			rar: "3",
			"bt-link": "2"
		}
	},
	QN32: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this.$createElement;
			return (this._self._c || t)("div", {
				directives: [{
					name: "show",
					rawName: "v-show",
					value: this.name === this.tabsVm.value,
					expression: "name === tabsVm.value"
				}],
				staticClass: "td-tabs__pane"
			}, [this._t("default")], 2)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	R7ut: function (t, e, i) {
		"use strict";
		e.a = {
			props: {
				text: {
					type: String,
					default: "加载中..."
				}
			}
		}
	},
	RevU: function (t, e, i) {
		t.exports = i.p + "img/xlx-icon-32x32.e90e93c.png"
	},
	RfRk: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ':root{--background-speed:#f0f3fa}.xlx-speed-list{width:192px}.xlx-speed-list__header{display:flex;justify-content:space-between;height:44px;line-height:44px}.xlx-speed-list__header .xlx-speed-list__title{color:#7698b7}.xlx-speed-list__content .xlx-speed-list__item{position:relative;display:flex;align-items:center;padding:0 6px;height:56px}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__image{position:relative;width:30px;height:30px;border:2px solid transparent;border-radius:50%;box-sizing:border-box}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__image img{position:relative;z-index:2;width:100%;border-radius:50%}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__image:after{position:absolute;left:1px;bottom:-1px;font-size:24px;font-family:xlx-icon!important;content:"\\E649"}.xlx-speed-list__rank{position:absolute;z-index:3;top:-15px;left:2px}.xlx-speed-list__rank .xlx-speed-list__rank-num{position:absolute;top:0;left:0;width:100%;text-align:center;color:#fff;font-size:10px;line-height:20px;font-style:normal}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__image.is-first{color:#ffc24c;border-color:currentColor}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__image.is-second{color:#99bade;border-color:currentColor}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__image.is-third{color:#ffaca1;border-color:currentColor}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__user-name{display:inline-block;max-width:6em;margin-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__infomation{position:absolute;top:0;right:6px;display:flex;align-items:center;height:100%}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__speed{color:var(--color-detail-primary)}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__message{position:absolute;top:50%;margin-top:-10px;right:20px;width:20px;height:20px;color:var(--color-primary);display:none}.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__link,.xlx-speed-list__content .xlx-speed-list__item .xlx-speed-list__text{margin-left:8px;color:var(--color-primary)}.xlx-speed-list__content .xlx-speed-list__item:hover{background:var(--background-speed)}.xlx-speed-list__content .xlx-speed-list__item.is-front .xlx-speed-list__speed{color:var(--color-danger)}.xlx-speed-list__content .xlx-speed-list__item.is-last{margin-bottom:30px}.xlx-speed-list__content .xlx-speed-list__item.is-last:before{position:absolute;bottom:-15px;left:13px;width:3px;height:3px;border-radius:50%;background:#7698b7;box-shadow:6px 0 0 #7698b7,12px 0 0 #7698b7;content:""}.xlx-speed-list__content .xlx-speed-list__item.is-myself .xlx-speed-list__user-name{color:var(--color-primary)}.xlx-speed-list__content .xlx-speed-list__item.is-null .xlx-speed-list__image{color:#d3e3f0;border-color:var(--color-detail-line)}.xlx-speed-list__content .xlx-speed-list__item.is-null .xlx-speed-list__user-name{color:var(--color-detail-primary)}', ""])
	},
	S2BL: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "xlx-home"
			}, [i("HomePageView", {
				ref: "homepage",
				style: {
					marginTop: 0 === t.cur ? 0 : -t.pageHeight + "px",
					transitionProperty: t.transition ? "margin" : "none"
				}
			}), i("div", {
				directives: [{
					name: "show",
					rawName: "v-show",
					value: 1 === t.cur,
					expression: "cur === 1"
				}],
				staticClass: "xlx-home__content"
			}, [i("intersect", {
				on: {
					enter: function (e) {
						t.showBackToTop = !1
					},
					leave: function (e) {
						t.showBackToTop = !0
					}
				}
			}, [i("div", {
				staticStyle: {
					position: "absolute",
					top: "0",
					right: "0"
				}
			})]), i("div", {
				staticClass: "xlx-home__operate",
				on: {
					click: function (e) {
						t.showHomePage(), t.operate("showHomePage")
					}
				}
			}, [i("i", {
				staticClass: "xlx-home__operate-arrow"
			})]), i("SpeedChartView", {
				attrs: {
					domReady: t.detailReady
				},
				on: {
					onSwitchDetail: function (e) {
						var i = e.index;
						t.activeKey = i
					},
					curTaskChange: function (e) {
						var i = e.taskID,
							n = e.index;
						t.$store.commit("tasks/setCurTaskID", i), t.activeKey = n || "comments"
					}
				}
			}), i("XlRecommend", {
				attrs: {
					category: "download",
					taskID: t.curTaskID,
					taskName: t.$sget(t.curTask, "name")
				},
				on: {
					recommendItemClick: t.reportRecommendClick
				}
			}), i("div", {
				staticClass: "xlx-file-detail"
			}, [i("intersect", {
				on: {
					enter: function (e) {
						t.tabFixed = !1
					},
					leave: t.leaveTabSentry
				}
			}, [i("div", {
				style: {
					height: "78px",
					position: "absolute",
					width: "100%",
					pointerEvents: "none"
				}
			})]), i("td-tabs", {
				attrs: {
					tabs: t.tabs,
					"active-key": t.activeKey,
					customTitleClass: t.tabFixed ? "is-fixed" : ""
				},
				on: {
					"update:activeKey": [function (e) {
						t.activeKey = e
					}, t.handleUpdateActiveKey]
				},
				scopedSlots: t._u([{
					key: "default",
					fn: function (e) {
						var n = e.tab;
						return ["comments" === n.key ? i("CommentView", {
							attrs: {
								gcid: t.$sget(t.curTask, "gcid") || t.$sget(t.curTask, "infoId") || "",
								curTask: t.curTask
							},
							on: {
								rcountchange: t.rcountChange
							}
						}) : "files" === n.key ? i("XlFileList", {
							attrs: {
								operate: t.operate,
								curTask: t.curTask,
								subFiles: t.$sget(t.$store.state.tasks.subFiles, t.curTaskID),
								setTask: t.setTask
							}
						}) : "detail" === n.key ? i("PropertyView", {
							attrs: {
								operate: t.operate,
								curTask: t.curTask,
								setTask: t.setTask
							}
						}) : t._e()]
					}
				}])
			}), i("div", {
				staticClass: "xlx-home-tool"
			}, [i("a", {
				directives: [{
					name: "show",
					rawName: "v-show",
					value: t.showBackToTop,
					expression: "showBackToTop"
				}],
				staticClass: "xlx-home-top",
				attrs: {
					href: "javascript:;",
					title: "回到顶部"
				},
				on: {
					click: t.backToTop
				}
			}, [i("i", {
				staticClass: "xlx-icon-arrow-top"
			})])])], 1)], 1)], 1)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	S9bK: function (t, e, i) {
		"use strict";
		var n = i("s5fs"),
			o = (i.n(n), i("5Hwc")),
			a = i("7uHT");
		e.a = {
			props: {
				recommendReviewList: {
					type: Array,
					default: function () {
						return []
					}
				},
				getDownloadRecommend: {
					type: Function,
					required: !0
				},
				getReviewList: {
					type: Function,
					required: !0
				},
				setSelectArg: {
					type: Function,
					required: !0
				},
				category: {
					type: String
				},
				taskID: {
					type: [String, Number]
				},
				taskName: {
					type: String
				},
				size: {
					type: Number,
					default: 4
				}
			},
			components: {
				XlRecommendReviewItem: Object(a.a)(o.a)
			},
			created: function () {
				switch (this.category) {
					case "download":
						break;
					default:
						this.setSelectArg({
							sum: 0,
							pos: -1
						})
				}
			},
			methods: {
				fetch: function () {
					switch (this.category) {
						case "download":
							this.fetchDownloadRecommend();
							break;
						default:
							this.fetchReview()
					}
				},
				fetchDownloadRecommend: function () {
					this.getDownloadRecommend({
						size: this.size,
						taskName: this.taskName
					})
				},
				fetchReview: function () {
					this.getReviewList({
						cursor: 0,
						size: this.size,
						category: this.category,
						refresh: !0
					})
				},
				handleItemClick: function (t, e) {
					this.$emit("recommendItemClick", t, e)
				}
			},
			watch: {
				taskID: {
					immdiate: !0,
					handler: function () {
						this.fetch()
					}
				}
			}
		}
	},
	TeGd: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, '.xlx-promote__item{position:relative;width:30%;max-width:250px;min-width:183px;line-height:1}.xlx-promote__content{position:relative;display:block;width:100%;padding-top:38%;border-radius:4px;overflow:hidden}.xlx-promote__content:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 62%,rgba(0,0,0,.8));opacity:.6;transition:.3s}.xlx-promote__content:hover .xlx-promote__detail{height:100%}.xlx-promote__content:hover .xlx-promote__text{display:-webkit-box}.xlx-promote__content:hover:after{background:linear-gradient(180deg,rgba(0,0,0,.6),rgba(0,0,0,.8));opacity:.8}.xlx-promote__picture{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.xlx-promote__detail{position:absolute;left:0;bottom:0;z-index:1;display:flex;flex-direction:column;justify-content:center;width:100%;height:30px;overflow:hidden;transition:.2s}.xlx-promote__detail-user{display:flex;align-items:center;height:20px;line-height:20px;padding:0 12px;margin-bottom:10px;color:#fff}.xlx-promote__name{max-width:calc(100% - 65px);white-space:nowrap}.xlx-promote__name,.xlx-promote__text{overflow:hidden;text-overflow:ellipsis;word-break:break-all}.xlx-promote__text{padding:0 10px 0 37px;height:32px;font-size:11px;line-height:16px;color:#ccc;pointer-events:none;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;display:none}.xlx-promote__avatar{width:20px;height:20px;margin-right:5px}.xlx-promote__avatar img{width:100%;height:100%;border-radius:50%;border:1px solid #fff;box-sizing:border-box}.xlx-promote-list{display:flex;justify-content:space-between}@media screen and (max-width:1005px){.xlx-promote__item:nth-child(4){display:none}}@media screen and (min-width:1005px){.xlx-promote__item{width:23%}}', ""])
	},
	TmV0: function (t, e, i) {
		i("fZOM"), t.exports = i("FeBl").Object.values
	},
	U3RP: function (t, e, i) {
		"use strict";
		var n = i("vbZl"),
			o = i("jFpK"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlPraise.vue", e.a = a.exports
	},
	UFZ5: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".chart-box{overflow:hidden;width:100%}", ""])
	},
	VzI3: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("li", {
				staticClass: "xlx-attribute-progress__item",
				attrs: {
					title: t.description
				}
			}, [i("span", {
				staticClass: "xlx-attribute-progress__title"
			}, [t._v(t._s(t.label))]), i("td-progress", {
				attrs: {
					value: t.fileSize ? ((t.downloadSize || 0) / t.fileSize * 100).toFixed(2) : "0.0",
					"text-visible": ""
				}
			}, [t._v("\n    " + t._s(t.fileSize ? t.downloadSize > t.fileSize ? ">100%" : ((t.downloadSize || 0) / t.fileSize * 100).toFixed(2) + "%" : "0.00%") + "\n  ")]), i("span", {
				staticClass: "xlx-attribute-progress__size"
			}, [t._v("\n    " + t._s(t._f("file-size")(t.downloadSize)) + "\n  ")])], 1)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	WGLF: function (t, e, i) {
		"use strict";
		var n = i("bOdI"),
			o = i.n(n),
			a = i("Xxa5"),
			s = i.n(a),
			r = i("exGp"),
			c = i.n(r),
			l = i("Jbmy"),
			p = i("h3mt");
		e.a = {
			components: {
				XlCommentItem: l.a,
				XlLoading: p.a
			},
			props: {
				tid: {
					type: String,
					required: !0
				},
				comments: {
					type: Array,
					default: function () {
						return []
					}
				},
				rcount: {
					type: Number,
					default: 0
				},
				userId: {
					type: [Number, String]
				},
				timeFormat: {
					type: String,
					default: "getPubTime"
				},
				maxLength: {
					type: Number,
					default: 100
				},
				showReport: {
					type: Boolean,
					default: !0
				},
				entryPage: String,
				entryHead: String,
				entryName: String,
				resourceUser: {
					type: [String, Number]
				},
				getComments: {
					type: Function,
					default: function () {}
				},
				pageSize: {
					type: Number,
					default: 10
				},
				taskID: {
					type: [Number, String]
				},
				pageIndex: {
					type: Number
				}
			},
			computed: {
				curPageComments: function () {
					return this.getCommentsByPage(this.page)
				},
				totalPage: function () {
					return Math.ceil((this.rcount + this.hotCount) / this.pageSize)
				}
			},
			watch: {
				pageIndex: function () {
					var t = c()(s.a.mark(function t(e) {
						return s.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									return t.next = 2, this.fetchCommentsByPage(e);
								case 2:
									this.page = e, 1 === e && this.showFirstCommentItem();
								case 4:
								case "end":
									return t.stop()
							}
						}, t, this)
					}));
					return function (e) {
						return t.apply(this, arguments)
					}
				}(),
				page: function (t) {
					this.$emit("updatePage", t)
				},
				rcount: {
					immediate: !0,
					handler: function (t) {
						this.$emit("rcountchange", t)
					}
				},
				tid: {
					handler: function () {
						var t = c()(s.a.mark(function t(e, i) {
							return s.a.wrap(function (t) {
								for (;;) switch (t.prev = t.next) {
									case 0:
										if (e && e !== i) {
											t.next = 2;
											break
										}
										return t.abrupt("return");
									case 2:
										return this.page = 1, t.next = 5, this.fetchCommentsByPage(this.page, !0);
									case 5:
									case "end":
										return t.stop()
								}
							}, t, this)
						}));
						return function (e, i) {
							return t.apply(this, arguments)
						}
					}()
				}
			},
			data: function () {
				return {
					page: 1,
					showReply: 0,
					hotCount: 0,
					loading: !1
				}
			},
			mounted: function () {
				this.page = this.pageIndex
			},
			methods: {
				fetchHotComments: function () {
					var t, e = this;
					return this.$raven.debug("fetchHotComments"), this.getComments((t = {
						tid: this.tid,
						sourceId: this.tid,
						lastId: 0,
						pageSize: this.length,
						category: "hot"
					}, o()(t, "pageSize", 2), o()(t, "userId", this.userId), t)).then(function (t) {
						e.hotCount = t.length
					})
				},
				fetchNewComments: function (t, e) {
					return this.$raven.debug("fetchNewComments"), this.getComments({
						tid: this.tid,
						sourceId: this.tid,
						lastId: e,
						pageSize: t,
						category: "new",
						userId: this.userId
					})
				},
				fetchCommentsByPage: function () {
					var t = c()(s.a.mark(function t(e, i) {
						var n, o, a;
						return s.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									if (t.prev = 0, n = this.getCommentsByPage(e), i && 1 === e || n.length !== this.pageSize) {
										t.next = 4;
										break
									}
									return t.abrupt("return", n);
								case 4:
									if (1 !== e) {
										t.next = 7;
										break
									}
									return t.next = 7, this.fetchHotComments();
								case 7:
									if (e !== this.totalPage || !n.length) {
										t.next = 9;
										break
									}
									return t.abrupt("return", n);
								case 9:
									return o = this.pageSize - this.comments.length % this.pageSize, a = this.comments[this.comments.length - 1], t.next = 13, this.fetchNewComments(o, 1 === e ? 0 : this.$sget(a, "cid") || 0);
								case 13:
									return t.abrupt("return", this.getCommentsByPage(e));
								case 16:
									t.prev = 16, t.t0 = t.catch(0), this.$raven.warn(t.t0);
								case 19:
								case "end":
									return t.stop()
							}
						}, t, this, [
							[0, 16]
						])
					}));
					return function (e, i) {
						return t.apply(this, arguments)
					}
				}(),
				getCommentsByPage: function (t) {
					return this.comments.slice(this.pageSize * (t - 1), this.pageSize * t)
				},
				showFirstCommentItem: function () {
					this.$nextTick(function () {
						var t = document.querySelector(".xlx-comment-list__item:not(.is-hot)");
						t && t.scrollIntoView(!1)
					})
				}
			}
		}
	},
	X4AI: function (t, e, i) {
		"use strict";
		Object.defineProperty(e, "__esModule", {
			value: !0
		});
		var n = i("9xYO"),
			o = i("DUGm"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "pages\\task-detail.vue", e.default = a.exports
	},
	XJZK: function (t, e, i) {
		var n = i("kxFB");
		(t.exports = i("FZ+f")(!1)).push([t.i, ".nav{justify-content:center;display:flex;height:115px;align-items:center}.nav a{display:block;text-align:center;color:#7f7f7f;padding:0 20px}.ico-nav{width:32px;height:32px;display:block;background:url(" + n(i("01Sk")) + ") 0 -999em no-repeat;opacity:.8;margin:0 auto;background-size:100% auto}.ico-nav img{width:100%}.nav a{font-size:14px;position:relative}.ico-movie{background-position:0 0}.ico-tv{background-position:-40px 0}.ico-game{background-position:-79px 0}.ico-show{background-position:-120px 0}.ico-vip{background-position:-160px 0}.ico-lx{background-position:-200px 0}.ico-sjxl{background-position:-240px 0}.ico-personal{width:30px;background:url(" + n(i("+yHD")) + ") no-repeat;animation:ani-home 3.1s steps(31) infinite}.ico-act{width:40px;overflow:hidden}.ico-act:after{display:block;width:1280px;height:100%;background:url(" + n(i("XbMm")) + ') no-repeat;background-size:1320px auto;content:"";pointer-events:none;animation:nav-act 3.5s both steps(31) infinite}a:hover .ico-act:after{animation:none;background-position:-1280px 0}@keyframes nav-act{0%{transform:translateZ(0)}70%,to{transform:translate3d(-1240px,0,0)}}.ico-feature{background-position:-400px 0}@keyframes ani-home{0%{background-position:0 0}to{background-position:-992px 0}}.ico-article{background-position:-360px 0}a:hover .ico-vip{background-position:-160px -30px}a:hover .ico-movie{background-position:0 -30px}a:hover .ico-tv{background-position:-40px -30px}a:hover .ico-game{background-position:-79px -30px}a:hover .ico-show{background-position:-120px -30px}a:hover .ico-lx{background-position:-200px -30px}a:hover .ico-sjxl{background-position:-240px -30px}.ico-home{background-position:-280px 0}a:hover .ico-home{background-position:-280px -30px}a:hover .ico-feature{background-position:-400px -30px}a:hover .ico-article{background-position:-360px -30px}.index-x .link-report-top{position:absolute;top:2px;right:-10px;width:60px;text-align:center;transform:rotate(45deg)}.link-report-top:hover .link-report-text1{background:#ff8080}.link-report-top:hover .link-report-text2{color:#ff8080}.link-report-text1{display:block;height:17px;line-height:17px;color:#fff;background:#ff4848;transition:.2s}.link-report-text2{color:#ff4848;transition:.2s}.tag-new{position:absolute;right:0;top:-2px;z-index:8;width:21px;height:13px;background:url(' + n(i("2iyD")) + ") no-repeat;background-size:21px auto}", ""])
	},
	XRcH: function (t, e, i) {
		t.exports = i.p + "img/spr-data-ani.b4bf914.png"
	},
	XbMm: function (t, e, i) {
		t.exports = i.p + "img/ani-activity.7e890c0.png"
	},
	"Xo+z": function (t, e, i) {
		t.exports = i.p + "img/xlx-bookmarks.4204739.png"
	},
	XsT4: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".xlx-home__content{display:block}", ""])
	},
	YnST: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return t.icon.iconDisplay ? i("a", {
				attrs: {
					href: t.icon.url,
					target: "_blank"
				}
			}, [i("span", {
				staticClass: "ico-nav",
				on: {
					mouseover: function (e) {
						t.show = !0
					},
					mouseleave: function (e) {
						t.show = !1
					}
				}
			}, [t.show ? i("img", {
				attrs: {
					src: t.$sget(t.icon, "coverHover") || t.defaultIcon,
					alt: t.icon.text
				},
				on: {
					errpr: t.imgError
				}
			}) : i("img", {
				attrs: {
					src: t.$sget(t.icon, "cover") || t.defaultIcon,
					alt: t.icon.text
				},
				on: {
					error: t.imgError
				}
			}), i("i", {
				directives: [{
					name: "show",
					rawName: "v-show",
					value: t.$sget(t.icon, "isShowNew"),
					expression: "$sget(icon, 'isShowNew')"
				}],
				staticClass: "tag-new"
			})]), i("span", {
				staticClass: "text"
			}, [t._v(t._s(t.icon.text))])]) : t._e()
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	Z1db: function (t, e, i) {
		"use strict";
		var n = i("MOER"),
			o = i("slrS"),
			a = !1;
		var s = function (t) {
				a || i("vxzU")
			},
			r = i("VU/8")(n.a, o.a, !1, s, null, null);
		r.options.__file = "components\\comment\\XlCommentInput.vue", e.a = r.exports
	},
	Z33O: function (t, e, i) {
		t.exports = i.p + "fonts/xlx-icon-vip.dc70f17.ttf"
	},
	ZKSA: function (t, e, i) {
		"use strict";
		var n = i("jOsh"),
			o = i("LHx/"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\comment\\XlEmoji.vue", e.a = a.exports
	},
	ZeZP: function (t, e, i) {
		var n = i("IbR3");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("5c6a383c", n, !1)
	},
	Zew7: function (t, e, i) {
		var n = i("GwHj");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("7406dbd1", n, !1)
	},
	Zrlr: function (t, e, i) {
		"use strict";
		e.__esModule = !0, e.default = function (t, e) {
			if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
		}
	},
	aRd0: function (t, e, i) {
		t.exports = i.p + "img/xlx-icon-16x16.f6c0850.png"
	},
	afZU: function (t, e, i) {
		var n = i("glKT");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("69d348a7", n, !1)
	},
	bjtf: function (t, e, i) {
		t.exports = i.p + "img/xlx-icon-16x16-2x.799b569.png"
	},
	bolP: function (t, e, i) {
		"use strict";
		e.a = {
			data: function () {
				return {
					show: !1,
					defaultIcon: i("5X0l")
				}
			},
			props: {
				icon: {
					type: Object
				}
			},
			methods: {
				imgError: function (t) {
					t.target.src = this.defaultIcon
				}
			}
		}
	},
	c0Vv: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement;
			return (t._self._c || e)("a", {
				style: t.rotateStyle,
				attrs: {
					href: "javascript:;",
					title: "换一换"
				},
				on: {
					click: function (e) {
						t.deg += 180
					}
				}
			}, [t._t("default")], 2)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	c831: function (t, e, i) {
		"use strict";
		var n = i("yr0C"),
			o = i.n(n),
			a = i("/5sW"),
			s = i("ZeZP");
		i.n(s);
		a.default.use(o.a), e.a = {
			props: {
				visible: {
					type: Boolean,
					default: !0
				},
				userid: {
					type: [String, Number],
					required: !0,
					default: ""
				}
			},
			data: function () {
				return {
					vipType: "novip"
				}
			},
			watch: {
				downloadVipInfo: {
					handler: function (t) {
						if (t) {
							this.vipType = {
								2: "normal",
								3: "baijin",
								5: "super"
							}[t.vasType] || "novip"
						}
					},
					immediate: !0
				}
			},
			computed: {
				loginUserid: function () {
					return this.$store.state.users.curUser.userId
				},
				vipData: function () {
					return this.$sget(this.$store.state.users.all[this.userid], "vip_extra") || []
				},
				downloadVipInfo: function () {
					var t = this.vipData.filter(function (t) {
						return 2 === (t.vasId || t.vasID)
					})[0];
					return t
				},
				isVip: function () {
					return "1" === this.$sget(this.downloadVipInfo, "isVIP")
				},
				isYear: function () {
					return "1" === this.$sget(this.downloadVipInfo, "isYear")
				},
				vipClass: function () {
					return this.downloadVipInfo && this.vasType ? "vip-icon-" + this.vasType + (this.downloadVipInfo.vIPLevel || this.downloadVipInfo.VIPLevel) : ""
				},
				vasType: function () {
					return {
						2: "vip",
						3: "pvip",
						5: "svip"
					}[this.downloadVipInfo && this.downloadVipInfo.vasType]
				},
				show: function () {
					return this.downloadVipInfo && "1" === this.downloadVipInfo.isVIP
				},
				vipLink: function () {
					return "https://vip.xunlei.com/vip_service/rule/?referfrom=v_pc_xlx_ggong_comment_vipicon"
				}
			}
		}
	},
	c8KX: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, '.css:after{content:"author:ningwenjing;  desgin:fengyanni;  update:2018-01-15"}body{color:#1a1a1a;--colorLight:#69f;--innerWidth:1250px}.index-wrap{height:100vh}.index-x{position:relative}.wrap-x{width:var(--innerWidth);margin:0 auto}.banner-x{height:450px;position:relative;transition:.3s;overflow:hidden;border-radius:10px}.banner-x h1{left:28px;bottom:20px;z-index:5;width:calc(100% - 150px);line-height:1.2;-webkit-line-clamp:2;display:-webkit-box;word-break:break-all;overflow:hidden;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:40px;color:#fff}.banner-x:before,.banner-x h1{position:absolute;pointer-events:none}.banner-x:before{height:80px;background:linear-gradient(0deg,transparent,rgba(0,0,0,.7))}.banner-x:after,.banner-x:before{width:100%;content:"";z-index:2;top:0;left:0}.banner-x:after{height:100%;position:absolute;background:linear-gradient(transparent 50%,rgba(0,0,0,.7));pointer-events:none}.banner-x .bg-pic{width:125%;height:125%;background-size:cover;background-position:50%;display:block;overflow:hidden;border-radius:10px;margin-left:-12.5%}.banner-x .banner-info{display:flex;flex-direction:column;justify-content:center;width:92px;height:55px;position:absolute;top:16px;left:28px;font-size:18px;line-height:1.2;text-align:center;color:#fff;border:1px solid hsla(0,0%,100%,.4);pointer-events:none;z-index:4}.banner-x .time{display:flex;justify-content:center;align-items:center;font-size:20px}.banner-x .day{font-size:78px;margin:0 25px 0 0}.banner-x .line{width:1px;height:16px;margin:0 5px;background:#ebf0f4;transform:rotate(20deg)}.banner-opt{position:absolute;width:90px;right:12px;bottom:25px;z-index:4}.banner-opt .banner-opt__list a{position:relative;display:block;height:54px;margin-bottom:4px;border:1px solid #a7a7a7;cursor:pointer}.banner-opt .banner-opt__list a img{width:100%;height:100%;object-fit:cover}.banner-opt .banner-opt__list a:after{position:absolute;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.6);transition:opacity .2s;content:""}.banner-opt .banner-opt__list a.cur{border-color:#fff}.banner-opt .banner-opt__list a.cur:after,.banner-opt .banner-opt__list a:hover:after{opacity:0}.banner-opt .banner-opt__link{display:block;height:28px;text-align:center;line-height:28px;background:rgba(0,0,0,.6);border:1px solid #a7a7a7;transition:.2s}.banner-opt .banner-opt__link:hover{color:#fff;border-color:#fff}.index-list{margin-top:40px}.index-list ul{display:flex;flex-wrap:wrap}.index-list__item{width:50%;margin-bottom:40px;font-size:16px;color:#a8a8a8}.index-list__item .title{display:block;margin-right:25px;font-size:26px;line-height:2;color:var(--color-default);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.index-list__item .index-list__info,.index-list__item .user-info{display:flex;align-items:center}.index-list__item .user-avatar{display:block;width:28px;height:28px}.index-list__item .user-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.index-list__item .user-name{max-width:10em;margin:0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.index-list__item .info-from{display:flex}.index-list__item .movie-name{max-width:13em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.index-list__item .movie-name.article-link-text{cursor:text;color:#a8a8a8}.index-list__item .movie-name.article-link-text:hover{color:currentColor}.index-list__item a{color:#a8a8a8;transition:color .2s}.index-list__item a:hover{color:var(--color-primary)}.index-list__more{display:flex;justify-content:flex-end}.index-list__more a{font-size:16px;color:var(--color-primary)}.index-list__more a:hover{color:var(--color-primary-hover)}@media only screen and (max-height:860px),only screen and (min-width:1101px) and (max-width:1400px){body{--innerWidth:1000px}.nav{height:95px}.banner-x{height:380px}.banner-x h1{font-size:35px}.banner-x .banner-info{font-size:16px}.banner-x .time{font-size:18px;line-height:1}.banner-opt{width:80px}.banner-opt .banner-opt__list a{height:45px}.index-article{margin:30px 0 0}.index-article h1{font-size:32px;line-height:3}.index-article P{font-size:16px;line-height:2;height:64px}.from-info{font-size:14px}.index-list{margin-top:30px}.index-list__item{margin-bottom:25px;font-size:15px}.index-list__item .title{margin-right:20px;font-size:22px}.index-list__item .user-name{max-width:8em}.index-list__item .movie-name{max-width:12em}}@media only screen and (max-height:770px),only screen and (min-width:800px) and (max-width:1100px){body{--innerWidth:740px}.nav{height:85px}.banner-x{height:310px}.banner-x h1{font-size:28px}.banner-x .banner-info{width:80px;height:48px;font-size:16px}.banner-x .time{font-size:16px}.banner-opt{width:75px}.banner-opt .banner-opt__list a{height:45px}.index-list{margin-top:30px}.index-list__item{margin-bottom:25px;font-size:14px}.index-list__item .title{margin-right:20px;font-size:20px}.index-list__item .user-name{max-width:7em}.index-list__item .movie-name{max-width:8em}.index-list__item .user-avatar{width:22px;height:22px}.index-list__more a{font-size:13px}}@media only screen and (max-height:650px),only screen and (max-width:860px){body{--innerWidth:596px}.nav{height:90px}.banner-x{height:260px}.banner-x h1{left:20px;bottom:16px;width:calc(100% - 120px);font-size:23px}.banner-x .banner-info{left:20px;width:60px;height:38px;font-size:12px}.banner-x .time{font-size:13px}.banner-x .line{margin:0 2px}.banner-x:before{height:60px}.banner-opt{width:70px;bottom:18px}.banner-opt .banner-opt__list a{height:40px}.banner-opt .banner-opt__link{height:22px;line-height:22px}.index-list{margin-top:30px}.index-list__item{margin-bottom:26px;font-size:12px}.index-list__item .title{margin-right:10px;font-size:15px}.index-list__item .user-name{max-width:6em}.index-list__item .movie-name{max-width:11em}.index-list__item .user-avatar{width:18px;height:18px}.index-list__more a{font-size:12px}}', ""])
	},
	cF3A: function (t, e, i) {
		"use strict";
		e.a = {
			data: function () {
				return {
					deg: 0
				}
			},
			computed: {
				rotateStyle: function () {
					return {
						transform: "rotate(" + this.deg + "deg)"
					}
				}
			}
		}
	},
	dHgb: function (t, e, i) {
		"use strict";
		var n = i("Xxa5"),
			o = i.n(n),
			a = i("exGp"),
			s = i.n(a),
			r = i("Dd8w"),
			c = i.n(r),
			l = i("NYxO"),
			p = i("Rhsk"),
			d = i("oxQo"),
			u = i("Ki5d"),
			x = i("U3RP"),
			m = i("Z1db"),
			f = i("4nU2"),
			h = i("EQpe");
		e.a = {
			components: {
				XlVip: u.a,
				XlPraise: x.a,
				XlCommentInput: Object(f.a)(m.a),
				XlConfirm: h.a
			},
			props: {
				type: String,
				comment: Object,
				entryPage: String,
				entryHead: String,
				entryName: String,
				resourceUser: [String, Number],
				timeFormat: String,
				tid: String,
				maxLength: Number,
				index: Number,
				commentLength: Number,
				showReply: [String, Number],
				removeCommentCallback: {
					type: Function,
					default: function () {}
				}
			},
			beforeDestroy: function () {
				this.$el && this.$el.parentElement && this.$el.parentElement.removeChild(this.$el)
			},
			data: function () {
				return {
					showPop: !1,
					showReplyReply: !1,
					popImg: "",
					focus: !1,
					confirmVisible: !1
				}
			},
			computed: c()({}, Object(l.mapState)({
				supportChat: "supportChat",
				curUser: function (t) {
					return t.users.curUser
				}
			}), {
				user: function () {
					return this.getUser(this.comment.uid) || {
						nick_name: "迅雷用户"
					}
				},
				replyUser: function () {
					return this.getUser(this.comment.replys[0].uid) || this.comment.replys[0]
				},
				isMobile: function () {
					return this.$store.state.isMobile
				},
				isReplyDeleted: function () {
					return "-1" === this.comment.replys[0].cid
				},
				speed: function () {
					return Object(p.b)(this.comment.downLoadSpeed)
				}
			}),
			methods: {
				getUserLink: p.c,
				replaceEmoji: p.f,
				getUser: function (t) {
					return this.$sget(this.$store.state.users.all, t)
				},
				getTime: function (t) {
					switch (this.timeFormat) {
						case "getPubTime":
							return Object(d.e)(t);
						case "createTimeFormat":
							return Object(d.a)(t)
					}
				},
				clickReply: function (t) {
					this.showReply === t ? this.$emit("update:showReply", 0) : (this.$emit("update:showReply", t), this.triggerReply()), this.$emit("clickReply", {
						cid: t
					})
				},
				sendReply: function (t) {
					this.$emit("sendReply", {
						cid: t.cid
					})
				},
				userCardShow: function () {
					this.$stat("right_area", "filmlib_usercard_show")
				},
				userCardClick: function (t) {
					this.$stat("right_area", "filmlib_usercard_click", {
						button: t
					})
				},
				triggerReply: function () {
					this.isMobile && this.$store.commit("setCurComment", this.comment)
				},
				handleDeleteClick: function () {
					this.$emit("click", "delete", {
						cid: this.comment.cid
					}), this.remove()
				},
				remove: function () {
					var t = s()(o.a.mark(function t() {
						return o.a.wrap(function (t) {
							for (;;) switch (t.prev = t.next) {
								case 0:
									return t.prev = 0, t.next = 3, this.$store.dispatch("comments/delete", {
										tid: this.tid,
										sourceId: this.tid,
										cid: this.comment.cid
									});
								case 3:
									this.removeCommentCallback(), t.next = 8;
									break;
								case 6:
									t.prev = 6, t.t0 = t.catch(0);
								case 8:
								case "end":
									return t.stop()
							}
						}, t, this, [
							[0, 6]
						])
					}));
					return function () {
						return t.apply(this, arguments)
					}
				}()
			}
		}
	},
	"e/Sy": function (t, e, i) {
		"use strict";
		Object.defineProperty(e, "__esModule", {
			value: !0
		});
		var n = i("+8Mh"),
			o = i("eFwr"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "pages\\property.vue", e.default = a.exports
	},
	e1OG: function (t, e, i) {
		"use strict";
		var n = i("yxXY"),
			o = i("7udH"),
			a = i.n(o),
			s = i("KkRX"),
			r = i("PeDW");
		e.a = n.a.connect({
			mapStateToProps: {
				quickReviewConfigs: function (t, e) {
					var i = s.a[e.suffix],
						n = r.a[i] || "5";
					return a()(t.comments.quickReview[n], "reviews")
				}
			},
			mapDispatchToProps: {
				getSpeedRank: "comments/getSpeedRank"
			}
		})
	},
	eFwr: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "xlx-attribute"
			}, [i("div", {
				staticClass: "xlx-attribute-progress"
			}, [i("ul", {
				staticClass: "xlx-attribute-progress__list"
			}, [i("XlPropertyItem", {
				staticClass: "xlx-attribute-progress__item--address",
				attrs: {
					label: "原始地址",
					description: "通过原始下载地址指向的服务器进行下载",
					fileSize: t.fileSize,
					downloadSize: t.$sget(t.curTask, "channelInfo", "originSize")
				}
			}), i("XlPropertyItem", {
				staticClass: "xlx-attribute-progress__item--mirror",
				attrs: {
					label: "镜像加速",
					description: "通过其它拥有相同资源的服务器进行下载",
					fileSize: t.fileSize,
					downloadSize: t.$sget(t.curTask, "channelInfo", "p2sSize")
				}
			}), i("XlPropertyItem", {
				staticClass: "xlx-attribute-progress__item--p2p",
				attrs: {
					label: "P2P加速",
					description: "通过其它拥有相同资源的用户进行下载",
					fileSize: t.fileSize,
					downloadSize: t.$sget(t.curTask, "channelInfo", "p2pSize")
				}
			}), i("XlPropertyItem", {
				staticClass: "xlx-attribute-progress__item--vip",
				attrs: {
					label: "会员加速",
					description: "通过迅雷会员专属加速通道进行下载",
					fileSize: t.fileSize,
					downloadSize: t.$sget(t.curTask, "channelInfo", "dcdnSize") + t.$sget(t.curTask, "channelInfo", "offlineSize")
				}
			})], 1), t._m(0)]), i("div", {
				staticClass: "xlx-attribute-info"
			}, [i("ul", {
				staticClass: "xlx-attribute-info__list"
			}, [i("li", {
				staticClass: "xlx-attribute-info__item"
			}, [i("span", {
				staticClass: "xlx-attribute-info__title"
			}, [t._v("存储目录：")]), i("a", {
				staticClass: "xlx-attribute-info__path",
				attrs: {
					href: "javascript:;"
				},
				on: {
					click: t.openSavePath
				}
			}, [t._v("\n          " + t._s(t.savePath) + "\n        ")])]), i("li", {
				staticClass: "xlx-attribute-info__item"
			}, [i("span", {
				staticClass: "xlx-attribute-info__title"
			}, [t._v("特征码：")]), i("p", {
				staticClass: "xlx-attribute-info__text"
			}, [t.$sget(t.curTask, "infoId") ? [t._v("\n            " + t._s(t.$sget(t.curTask, "infoId")) + "\n          ")] : [t._v("\n            该任务暂无特征码\n          ")]], 2), t.$sget(t.curTask, "infoId") ? i("a", {
				staticClass: "xlx-attribute-info__act",
				attrs: {
					href: "javascript:;"
				},
				on: {
					click: t.copyInfoId
				}
			}, [t._v("\n          " + t._s(t.copyTipText) + "\n        ")]) : t._e()]), i("li", {
				staticClass: "xlx-attribute-info__item"
			}, [i("span", {
				staticClass: "xlx-attribute-info__title"
			}, [t._v("下载历时：")]), i("p", {
				staticClass: "xlx-attribute-info__text"
			}, [t._v("\n          " + t._s(t._f("duration")(t.$sget(t.curTask, "duration") || 1)) + "\n        ")])]), i("li", {
				staticClass: "xlx-attribute-info__item"
			}, [i("span", {
				staticClass: "xlx-attribute-info__title"
			}, [t._v("创建时间：")]), i("p", {
				staticClass: "xlx-attribute-info__text"
			}, [t._v("\n          " + t._s(t._f("date-time")(t.$sget(t.curTask, "createTime"))) + "\n        ")])]), i("li", {
				staticClass: "xlx-attribute-info__item"
			}, [i("span", {
				staticClass: "xlx-attribute-info__title"
			}, [t._v("\n          完成时间：\n        ")]), i("p", {
				staticClass: "xlx-attribute-info__text"
			}, [t.$sget(t.curTask, "completeTime") ? [t._v("\n           " + t._s(t._f("date-time")(t.$sget(t.curTask, "completeTime"))) + "\n          ")] : [t._v("\n            该数据需等待任务下载完成\n          ")]], 2)]), i("li", {
				staticClass: "xlx-attribute-info__item"
			}, [i("span", {
				staticClass: "xlx-attribute-info__title"
			}, [t._v("md5：")]), i("p", {
				staticClass: "xlx-attribute-info__text"
			}, [t.$sget(t.curTask, "subFilesCount") ? [t._v("\n            文件夹不支持MD5值计算\n          ")] : t.shouldShowMd5 ? [t._v("\n            " + t._s(t.$sget(t.curTask, "md5") || "md5值获取中") + "\n          ")] : [t._v("\n            该数据需等待任务下载完成\n          ")]], 2)]), i("li", {
				staticClass: "xlx-attribute-info__item"
			}, [i("span", {
				staticClass: "xlx-attribute-info__title"
			}, [t._v("注释：")]), i("label", {
				staticClass: "td-input"
			}, [i("input", {
				directives: [{
					name: "model",
					rawName: "v-model",
					value: t.note,
					expression: "note"
				}],
				staticClass: "td-input__inner",
				attrs: {
					type: "text",
					maxlength: "450",
					placeholder: "未填写"
				},
				domProps: {
					value: t.note
				},
				on: {
					focus: function (e) {
						t.noteDraft = t.note, t.noteEditing = !0
					},
					blur: function (e) {
						t.operate("note", "", t.note), t.noteEditing = !1
					},
					input: function (e) {
						e.target.composing || (t.note = e.target.value)
					}
				}
			})])])])])])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: [function () {
				var t = this.$createElement,
					e = this._self._c || t;
				return e("div", {
					staticClass: "xlx-attribute-progress__detail"
				}, [e("i", {
					staticClass: "td-icon-info",
					attrs: {
						title: "以上数据表明，您在下载此任务过程中，分别利用哪些加速\n方式，总共下载过多少数据。由于迅雷下载过程中会对数据\n进行校验，因此可能会废弃部分错误的数据，然后重新下载\n正确数据。此时统计到的下载问题会超出文件自身大小，加\n速百分比之和也可能超出100%，这是正常现象。"
					}
				})])
			}]
		};
		e.a = o
	},
	eLLv: function (t, e, i) {
		"use strict";
		e.a = function (t, e) {
			r.a.promiseApi("getTabIdByContext", e).then(null, function () {
				return ""
			}).then(function (i) {
				i.length > 0 ? r.a.promiseApi("selectTab", i) : r.a.promiseApi("openNewTab", s()({}, {
					url: t,
					selected: !0,
					mainTab: !1
				}, e ? {
					context: e
				} : {})).then(function (t) {
					if (!t) return o.a.reject()
				}).then(null, function () {
					window.open(t, e)
				})
			})
		};
		var n = i("//Fk"),
			o = i.n(n),
			a = i("woOf"),
			s = i.n(a),
			r = i("Cb+C")
	},
	fZOM: function (t, e, i) {
		var n = i("kM2E"),
			o = i("mbce")(!1);
		n(n.S, "Object", {
			values: function (t) {
				return o(t)
			}
		})
	},
	fs20: function (t, e, i) {
		"use strict";
		var n = i("Gu7T"),
			o = i.n(n),
			a = i("Zrlr"),
			s = i.n(a),
			r = i("wxAW"),
			c = i.n(r),
			l = function () {
				function t(e) {
					var i = e.points,
						n = void 0 === i ? [] : i,
						a = e.degree,
						r = void 0 === a ? 4 : a,
						c = e.tessellation,
						l = void 0 === c ? 10 : c;
					s()(this, t), n.length >= 2 ? this.points = [this.getExtendPoint(n[0], n[1])].concat(o()(n), [this.getExtendPoint(n[n.length - 1], n[n.length - 2])]) : this.points = n, this.degree = r, this.tessellation = l, this.curvePoints = [], this.knotVector = [], this.uniformRender()
				}
				return c()(t, [{
					key: "getExtendPoint",
					value: function (t, e) {
						return {
							x: e.x - 2 * (e.x - t.x),
							y: e.y - 2 * (e.y - t.y)
						}
					}
				}, {
					key: "uniformRender",
					value: function () {
						if (this.createKnots(), !(this.points.length < 2)) {
							for (var t = 1 / this.tessellation, e = this.knotVector[this.degree]; e < this.knotVector[this.knotVector.length - this.degree - 1]; e += t) {
								var i = this.deBoor(e);
								this.curvePoints.push(i)
							}
							var n = this.deBoor(this.knotVector[this.knotVector.length - this.degree - 1]);
							this.curvePoints.push(n)
						}
					}
				}, {
					key: "createKnots",
					value: function () {
						if (this.knotVector = [], this.points.length >= 2)
							for (var t = this.degree + this.points.length + 1, e = 1 / (t - 1), i = 0; i < t; i++) this.knotVector.push(i * e)
					}
				}, {
					key: "deBoor",
					value: function (t) {
						for (var e = 0, i = 0, n = 0; n < this.points.length; n++) {
							var o = this.basisFunction(n, this.degree, t);
							o > 0 && (e += this.points[n].x * o, i += this.points[n].y * o)
						}
						return [e, i]
					}
				}, {
					key: "basisFunction",
					value: function (t, e, i) {
						if (0 == e) return this.knotVector[t] <= i && i < this.knotVector[t + 1] ? 1 : 0;
						var n = (i - this.knotVector[t]) / (this.knotVector[t + e] - this.knotVector[t]),
							o = (this.knotVector[t + e + 1] - i) / (this.knotVector[t + e + 1] - this.knotVector[t + 1]);
						return n * this.basisFunction(t, e - 1, i) + o * this.basisFunction(t + 1, e - 1, i)
					}
				}]), t
			}();
		e.a = l
	},
	gKGV: function (t, e, i) {
		var n = i("RfRk");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("75cf47f1", n, !1)
	},
	gL2E: function (t, e, i) {
		var n = i("BCKB");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("2e2d0a19", n, !1)
	},
	gRE1: function (t, e, i) {
		t.exports = {
			default: i("TmV0"),
			__esModule: !0
		}
	},
	garV: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return t.kinds.includes("review_num") ? i("a", {
				class: "sm" === t.size ? "ico-label label-media" : "label-media",
				attrs: {
					href: "http://movie.xunlei.com/auth/signMedia?type=0&entrypage=" + t.entryPage + "&entry=" + t.entry,
					target: "_blank",
					title: "sm" === t.size ? "影评号" : ""
				},
				on: {
					click: function (e) {
						t.badgeClick("critic")
					}
				}
			}, ["lg" === t.size ? i("i", {
				staticClass: "ico-media"
			}) : t._e(), t._v(t._s(t.reviewNum) + "\n")]) : t.kinds.includes("signer") ? i("a", {
				class: "sm" === t.size ? "ico-label label-sign" : "label-sign",
				attrs: {
					href: "http://movie.xunlei.com/auth/signWriter?type=2&entrypage=" + t.entryPage + "&entry=" + t.entry,
					target: "_blank",
					title: "sm" === t.size ? "签约写手" : ""
				},
				on: {
					click: function (e) {
						t.badgeClick("writer")
					}
				}
			}, ["lg" === t.size ? i("i", {
				staticClass: "ico-sign"
			}) : t._e(), t._v(t._s(t.signer) + "\n")]) : t.kinds.includes("review_expert") ? i("a", {
				class: "sm" === t.size ? "ico-label label-talent" : "label-talent",
				attrs: {
					href: "http://movie.xunlei.com/auth/signExpert?type=1&entrypage=" + t.entryPage + "&entry=" + t.entry,
					target: "_blank",
					title: "sm" === t.size ? "影评达人" : ""
				},
				on: {
					click: function (e) {
						t.badgeClick("expert")
					}
				}
			}, ["lg" === t.size ? i("i", {
				staticClass: "ico-talent"
			}) : t._e(), t._v(t._s(t.reviewExpert) + "\n")]) : "lg" === t.size && t.kinds.includes("film_review") ? i("span", {
				staticClass: "label-identity label-official"
			}, [i("i", {
				staticClass: "ico-official"
			}), t._v("官方号")]) : "sm" === t.size && t.kinds.includes("film_review") ? i("span", {
				staticClass: "ico-official",
				attrs: {
					title: "官方号"
				}
			}) : t._e()
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	glKT: function (t, e, i) {
		var n = i("kxFB");
		(t.exports = i("FZ+f")(!1)).push([t.i, ":root{--color-primary:#69f;--color-chart-line:hsla(0,0%,100%,.5)}.ico-d-delete,.ico-d-down,.ico-d-note,.ico-d-open,.ico-d-play,.ico-d-redo,.ico-o-delete,.ico-o-down,.ico-o-more,.ico-o-open,.ico-o-pause,.ico-o-play,.ico-o-playnow,.ico-o-redo,.ico-o-share{background:url(" + n(i("m+cC")) + ') no-repeat}.chart-box{height:100%;background:linear-gradient(90deg,#dff6fe,#e8e9fe);border-radius:5px;position:relative}.chart-box:hover .data-info-main{display:none}.chart-box:hover .data-info-des{display:flex}.data-chart{position:relative;z-index:1;height:100%}.file-info{margin:0 15px;position:relative}.file-info .file-name{display:flex;align-items:center;height:46px;flex:1;width:100%}.file-info .text-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:break-all;max-width:calc(100% - 180px);font-size:13px;color:#718bb1}.file-info .ico-file{margin:0 8px 0 0}.file-info .file-opt{position:absolute;right:0;top:0;display:flex;height:46px;align-items:center;justify-content:flex-end;z-index:2}.file-info .btn-delete{border:1px solid #69f;border-radius:12px;width:52px;height:22px;line-height:22px;text-align:center;color:#69f}.file-info .btn-delete:hover{background:#69f;color:#fff}.file-info .link{color:#69f;margin-left:3px}.ico-o-more,.ico-o-open{width:20px;height:20px;display:inline-block;margin:0 0 0 15px}.ico-o-open{background-position:0 -20px}.ico-o-open:hover{background-position:-20px -20px}.ico-o-more{background-position:-40px -20px}.ico-o-more:hover{background-position:-60px -20px}.ico-o-delete,.ico-o-down,.ico-o-pause,.ico-o-play,.ico-o-playnow,.ico-o-redo{width:22px;height:22px;display:inline-block;margin:0 0 0 12px}.ico-o-playnow{background-position:0 -40px}.ico-o-playnow:hover{background-position:-30px -40px}.ico-o-pause{background-position:-60px -40px}.ico-o-pause:hover{background-position:-90px -40px}.ico-o-play{background-position:-120px -40px}.ico-o-play:hover{background-position:-150px -40px}.ico-o-down{background-position:-180px -40px}.ico-o-down:hover{background-position:-210px -40px}.ico-o-delete{background-position:-240px -40px}.ico-o-delete:hover{background-position:-270px -40px}.ico-o-redo{background-position:-300px -40px}.ico-o-redo:hover{background-position:-330px -40px}.ico-o-share{width:20px;height:20px;display:inline-block;margin:0 0 0 12px;background-position:-80px -20px}.ico-o-share:hover{background-position:-100px -20px}.canvas-box{position:relative;z-index:1;height:calc(100% - 90px)}.canvas-box:after{top:0;left:0;width:100%;height:100%;position:absolute;content:"";background:repeating-linear-gradient(transparent,transparent 24px,var(--color-chart-line) 0,var(--color-chart-line) 25px)}.canvas-box .canvas-data{position:relative;z-index:2}.canvas-box.finish{opacity:.3}.data-show{position:absolute;color:var(--color-primary);z-index:3}.data-show .point{position:relative;z-index:6;width:7px;height:7px;margin:-4px 0 0 -5px;border-radius:50%;border:solid 1px var(--color-primary);background:#fff}.data-show .text-data{position:absolute;left:13px;bottom:-7px;width:72px;height:24px;line-height:24px;text-align:center;color:var(--color-primary);background:hsla(0,0%,100%,.7);border-radius:3px;font-size:12px;box-shadow:0 2px 5px rgba(0,0,0,.1)}.data-show .text-data.is-left{left:auto;right:13px}.data-show .text-data.is-left-ani{left:auto;right:35px}.data-show .text-data.is-right-ani{left:24px}.data-vip{color:#ff4848}.data-vip .point{border-color:#fe4e4f}.data-info{position:absolute;width:100%;bottom:0;line-height:40px;color:#718bb1;font-size:13px}.data-info .line{display:block;width:1px;height:11px;background:#c6d3ee;margin:0 12px}.data-info .data-info-des,.data-info .data-info-main{display:flex;justify-content:center;align-items:center}.data-info .data-info-des{display:none}.data-info .label-color{width:12px;height:12px;display:inline-block;margin:0 5px 0 0;vertical-align:-1px}.data-info .color-all{background-image:linear-gradient(45deg,#46adff,#a687ff)}.data-info .color-vip{background-image:linear-gradient(45deg,#bda3fe,#fc75db)}.data-tips{position:absolute;width:70px;height:24px;line-height:24px;border-radius:3px;text-align:center;color:#718bb1;background:hsla(0,0%,100%,.9);box-shadow:0 0 8px 0 rgba(147,151,178,.22);z-index:4}.data-tips:after{width:0;height:0;font-size:0;overflow:hidden;border-style:dashed;border-color:transparent;border-width:6px 5px;border-top-color:#fff;position:absolute;content:"";bottom:-12px;left:50%;margin-left:-4px}.data-note{position:absolute;z-index:3;left:0;top:50%;display:flex;justify-content:center;align-items:center;width:100%;height:40px;margin:-20px 0 0;line-height:40px;font-size:15px;color:#ff8a00;text-align:center}.data-note p{padding:0 20px;background-color:hsla(0,0%,100%,.8);border-radius:20px}.ico-d-note{width:20px;height:20px;background-position:0 -80px;display:inline-block;vertical-align:middle;margin:0 5px 2px 0}.ico-d-delete,.ico-d-down,.ico-d-open,.ico-d-play,.ico-d-redo{width:20px;height:20px;display:inline-block;margin:0 8px 0 0}.ico-d-open{background-position:0 0}.ico-d-play{background-position:-20px 0}.ico-d-delete{background-position:-40px 0}.ico-d-redo{background-position:-60px 0}.ico-d-down{background-position:-80px 0}.btn-data-wp{position:absolute;width:100%;height:calc(100% - 96px);top:48px}.btn-data-wp,.btn-data-wp .btn-opt{display:flex;justify-content:center;align-items:center}.btn-data-wp .btn-opt{height:34px;border-radius:16px;background-color:rgba(102,153,255,.8);box-shadow:0 2px 8px 0 rgba(41,159,255,.64);font-size:15px;color:#fff;z-index:3;padding:0 24px;transition:.2s}.btn-data-wp .btn-opt:hover{background:#69f}.btn-data-wp .txt-tips{top:50%;margin-top:25px;width:100%;text-align:center;color:#ff8a00;position:absolute;font-size:13px;z-index:3}.xlx-data-ani{position:absolute;margin:-34px 0 0 -34px;z-index:5;width:60px;height:60px;transform:scale(.7)}.xlx-data-ani .xlx-data-type{display:block;width:100%;height:100%;z-index:3;overflow:hidden}.xlx-data-ani .xlx-data-type:after{display:block;width:960px;height:100%;background:url(' + n(i("XRcH")) + ') -999em no-repeat;pointer-events:none;content:""}.xlx-data-ani .xlx-data-type.is-speed1:after{background-position:0 -180px;animation:speed 1s .3s steps(16) infinite}.xlx-data-ani .xlx-data-type.is-speed2:after{background-position:0 -120px;animation:speed 1s .3s steps(16) infinite}.xlx-data-ani .xlx-data-type.is-speed4:after{background-position:0 -60px;animation:speed 1s .3s steps(16) infinite}.xlx-data-ani .xlx-data-type.is-speed3:after{background-position:0 -240px;animation:speed 1s .3s steps(16) infinite}.xlx-data-ani .xlx-data-type.is-scale{animation:scale 1s both}.xlx-data-ani .xlx-data-type.is-stopped:after{animation:none!important}@keyframes speed{0%{transform:translateZ(0)}to{transform:translate3d(-960px,0,0)}}@keyframes scale{0%,to{transform:scale(1)}50%{transform:scale(0)}}.xlx-data-ani .xlx-data-bomb{position:absolute;left:0;top:0;display:none;width:100%;height:100%;background:url(' + n(i("XRcH")) + ") -999em no-repeat;animation:bomb 1s steps(25)}", ""])
	},
	gy8d: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".xmp{background:#202020;display:flex;align-items:center;justify-content:center;height:100vh}.xmp .header{display:none}.xmp .index-article h1 a{color:#fff}.xmp .index-article h1 a:hover{color:var(--colorLight)}.xmp .index-article p{display:none}.xmp .from-info .user-name{color:#afafaf}.xmp .from-info .user-name:hover{color:var(--colorLight)}@media only screen and (max-height:650px),only screen and (max-width:860px){.xmp .index-article{margin-top:3px}.xmp .index-article h1{line-height:46px}.xmp .from-info{margin:0}}", ""])
	},
	h3mt: function (t, e, i) {
		"use strict";
		var n = i("R7ut"),
			o = i("sQgx"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlLoading.vue", e.a = a.exports
	},
	hMyI: function (t, e, i) {
		"use strict";
		var n = i("482I"),
			o = i("k4zF"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\task\\XlLabelItem.vue", e.a = a.exports
	},
	hX0O: function (t, e, i) {
		var n = i("6m29");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("5ce0b79f", n, !1)
	},
	haX0: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "xlx-file-list"
			}, [i("td-table", {
				attrs: {
					columns: t.columns,
					data: t.tree,
					"default-checked-keys": t.defaultCheckedKeys,
					"default-expanded-keys": t.defaultExpandedKeys,
					"disabled-keys": t.disabledKeys,
					checkable: "",
					striped: "",
					"tree-enabled": "",
					"footer-enabled": ""
				},
				on: {
					"checked-change": t.onCheckedChange,
					"expanded-change": t.onExpandedChange,
					checkAll: function (e) {
						t.report(e ? "chooseall" : "cancelall")
					}
				},
				scopedSlots: t._u([{
					key: "default",
					fn: function (e) {
						var n = e.prop,
							o = e.value,
							a = e.row;
						return ["name" === n ? i("span", {
							attrs: {
								title: a.data.fileName
							}
						}, [t._v(t._s(a.data.fileName))]) : "fileSize" === n ? [t._v(t._s(t._f("file-size")(a.data.fileSize)))] : "progress" === n ? [a.data.errMessage ? [i("span", {
							staticClass: "is-error",
							attrs: {
								title: a.data.errMessage
							}
						}, [t._v("无法下载")])] : "branch" === a.type ? void 0 : (4 !== t.curTask.type ? a.data.downloadSize === a.data.fileSize && a.data.isNeedDownload && a.data.downloadSize : [8, 10].includes(a.data.status)) ? [i("a", {
							staticClass: "xlx-file-list__status",
							attrs: {
								href: "javascript:;"
							},
							on: {
								click: function (e) {
									t.openFile(a)
								}
							}
						}, [t._v("打开")])] : t.checkedKeys.includes(a.key) ? [t._v("\n          " + t._s((100 * t.getProgress(a) || 0).toFixed(2)) + "%\n        ")] : [t._v("\n          不下载\n        ")]] : [t._v(t._s(o))]]
					}
				}, {
					key: "icon",
					fn: function (e) {
						e.prop, e.value;
						var n = e.row;
						return [i("i", {
							class: t._f("icon")([t.getSuffix(n.name), "branch" === n.type ? 4 : 1])
						})]
					}
				}])
			}, [i("td-button", {
				attrs: {
					slot: "footer",
					size: "small",
					disabled: !t.checkedKeys.length || !t.editingSelected
				},
				on: {
					click: t.downloadSelected
				},
				slot: "footer"
			}, [t._v("\n      " + t._s(t.loading ? "添加下载..." : "下载选中文件") + "\n    ")])], 1)], 1)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	hfr0: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, ".xlx-attribute-progress{position:relative;width:100%;margin-bottom:25px}.xlx-attribute-progress__item{display:flex;align-items:center;margin-bottom:10px;white-space:nowrap;user-select:none}.xlx-attribute-progress__item--address .td-progress-bar__outer{background:rgba(140,168,207,.1)}.xlx-attribute-progress__item--address .td-progress-bar__inner{background:#d5dfed}.xlx-attribute-progress__item--mirror .td-progress-bar__outer{background:rgba(87,189,246,.1)}.xlx-attribute-progress__item--mirror .td-progress-bar__inner{background:#a7dfff}.xlx-attribute-progress__item--p2p .td-progress-bar__outer{background:rgba(88,158,246,.1)}.xlx-attribute-progress__item--p2p .td-progress-bar__inner{background:#8fc1ff}.xlx-attribute-progress__item--local .td-progress-bar__outer{background:rgba(143,140,255,.1)}.xlx-attribute-progress__item--local .td-progress-bar__inner{background:#b1afff}.xlx-attribute-progress__item--vip .td-progress-bar__outer{background:hsla(10,97%,70%,.1)}.xlx-attribute-progress__item--vip .td-progress-bar__inner{background:#ffb4a4}.xlx-attribute-progress__title{width:60px;margin-right:12px;font-size:12px;color:#333;cursor:default}.xlx-attribute-progress__size{width:57px;margin-left:14px;font-size:12px;color:#333;text-align:right;cursor:default}.xlx-attribute-progress__detail{display:flex;justify-content:flex-end;color:var(--color-primary)}.xlx-attribute-progress .td-progress,.xlx-attribute-progress .td-progress-bar{flex:1;height:12px}.xlx-attribute-progress .td-progress__text{width:35px;text-align:right;font-size:12px;color:#999;cursor:default}.xlx-attribute-info__item{display:flex;align-items:center;margin-bottom:10px}.xlx-attribute-info__item a{font-size:12px;color:var(--color-primary);white-space:nowrap}.xlx-attribute-info__item a:hover{color:var(--color-primary-hover)}.xlx-attribute-info__title{width:60px;margin-right:12px;font-size:12px;color:gray;user-select:none;cursor:default}.xlx-attribute-info__text{max-width:calc(100% - 114px);font-size:12px;color:#333;word-break:break-all}.xlx-attribute-info__path,.xlx-attribute-info__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xlx-attribute-info__path{flex:1}.xlx-attribute-info__act{width:24px;margin-left:10px}.xlx-attribute-info .td-input{flex:1}.xlx-attribute-info .td-input .td-input__inner{width:100%}", ""])
	},
	hlD9: function (t, e, i) {
		"use strict";
		var n = i("WGLF"),
			o = i("5rP1"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\comment\\XlCommentList.vue", e.a = a.exports
	},
	iA8U: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	iARP: function (t, e, i) {
		t.exports = i.p + "img/xlx-icon-24x24.8c8781a.png"
	},
	is58: function (t, e, i) {
		"use strict";
		var n = i("nVly"),
			o = i("wp7v"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\XlTabs.vue";
		a.exports
	},
	jFpK: function (t, e, i) {
		"use strict";
		var n = function () {
			var t, e = this,
				i = e.$createElement;
			return (e._self._c || i)("a", {
				class: (t = {}, t[e.praisedClass] = e.isPraise, t[e.animationClass] = e.isPraising, t),
				attrs: {
					href: "javascript:;",
					title: e.isPraise ? "您已点过赞" : "赞"
				},
				on: {
					click: e.praise
				}
			}, [e._t("default", null, {
				praiseNum: e.praiseNum
			})], 2)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	jMFR: function (t, e, i) {
		var n = i("gy8d");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("269276fb", n, !1)
	},
	jOsh: function (t, e, i) {
		"use strict";
		var n = i("FlE6");
		i.n(n);
		e.a = {
			props: {
				isInputFocus: {
					type: Boolean,
					default: !1
				}
			},
			data: function () {
				return {
					show: !1
				}
			},
			watch: {
				show: function (t) {
					t && this.$emit("open")
				}
			},
			methods: {
				updateDisplay: function (t) {
					this.show = t
				},
				handleClick: function (t) {
					if ("SPAN" === t.target.tagName) {
						var e = t.target,
							i = "[" + t.target.parentElement.getAttribute("title") + "]",
							n = e.className.split("-")[3];
						this.$emit("pick", i, n, e), this.show = !1
					}
				}
			}
		}
	},
	jRJX: function (t, e, i) {
		"use strict";
		var n = i("jmuf");
		e.a = {
			props: {
				quickReviewConfigs: {
					type: Array,
					default: function () {
						return []
					}
				},
				publishComments: {
					type: Function,
					default: function () {}
				},
				tid: String
			},
			mounted: function () {
				this.$emit("quickCommentShow", this.quickReviews)
			},
			data: function () {
				return {
					index: 0
				}
			},
			watch: {
				"quickReviewConfigs.length": {
					immediate: !0,
					handler: function () {
						this.refresh()
					}
				},
				tid: {
					immediate: !0,
					handler: function () {
						this.refresh()
					}
				}
			},
			components: {
				XlRefresh: n.a
			},
			computed: {
				quickReviews: function () {
					return this.quickReviewConfigs[this.index]
				}
			},
			methods: {
				refresh: function () {
					for (var t = this.index; this.index === t;) this.index = Math.floor(Math.random() * this.quickReviewConfigs.length)
				},
				clickQuickReview: function (t) {
					this.$raven.debug("clickQuickReview", t), this.$emit("sendQuickReview", t)
				}
			}
		}
	},
	jmuf: function (t, e, i) {
		"use strict";
		var n = i("cF3A"),
			o = i("c0Vv"),
			a = !1;
		var s = function (t) {
				a || i("onys")
			},
			r = i("VU/8")(n.a, o.a, !1, s, "data-v-64c66bef", null);
		r.options.__file = "components\\XlRefresh.vue", e.a = r.exports
	},
	jrzI: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				directives: [{
					name: "show",
					rawName: "v-show",
					value: t.show,
					expression: "show"
				}],
				staticClass: "td-cover"
			}, [t.config ? i("div", {
				class: "td-message td-message--" + t.config.type
			}, [i("i", {
				class: "td-icon-" + t.config.type
			}), i("span", {
				staticClass: "td-message__text"
			}, [t._v(t._s(t.config.content))])]) : t._e()])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	k4zF: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", [i("div", {
				staticClass: "point",
				style: {
					display: t.pointDisplay,
					margin: 0
				}
			}), i("div", {
				staticClass: "text-data",
				class: t.textDataClass,
				style: t.LabelStyle
			}, [t._v(t._s(t._f("file-size")(t.textVal)) + "/s\n  ")]), i("div", {
				staticClass: "xlx-data-ani"
			}, [i("span", {
				ref: "aniSpeed",
				staticClass: "xlx-data-type",
				class: [t.dataTypeClass, t.enableAnimation ? "" : "is-stopped"]
			}), i("span", {
				staticClass: "xlx-data-bomb",
				style: {
					display: t.bombType
				}
			})])])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	lOZi: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "xlx-detail"
			}, [i("div", {
				staticClass: "xlx-comment"
			}, [i("div", {
				staticClass: "xlx-comment-main"
			}, [i("XlCommentAvartar"), i("XlCommentInput", {
				staticStyle: {
					width: "calc(100% - 64px)"
				},
				attrs: {
					show: !0,
					tid: t.gcid,
					curTask: t.curTask,
					maxLength: t.maxLength,
					defaultPlaceholder: "评论参与竞榜",
					focus: t.isInputFocused
				},
				on: {
					finish: t.updateComment,
					keyupctrlentry: function (e) {
						t.$emit("keyupctrlentry", arguments[0])
					},
					"update:focus": function (e) {
						t.isInputFocused = e
					},
					sendComment: function (e) {
						t.report("sendcomment")
					},
					clickEmojiIco: function (e) {
						t.report("emoji")
					}
				}
			})], 1), i("XlCommentInput", {
				attrs: {
					show: !1,
					tid: t.gcid,
					curTask: t.curTask,
					maxLength: t.maxLength,
					defaultPlaceholder: "评论参与竞榜",
					autoSendCommentText: t.autoSendCommentText,
					focus: t.isInputFocused
				},
				on: {
					finish: t.updateComment,
					keyupctrlentry: function (e) {
						t.$emit("keyupctrlentry", arguments[0])
					},
					"update:autoSendCommentText": function (e) {
						t.autoSendCommentText = e
					},
					"update:focus": function (e) {
						t.isInputFocused = e
					}
				}
			}), i("XlCommentList", {
				attrs: {
					tid: t.gcid,
					taskID: t.$sget(t.curTask, "taskID"),
					maxLength: t.maxLength,
					pageIndex: t.commentPageIndex,
					entryPage: "filmlib_detailpage",
					entryHead: "filmlib_detailpage_head",
					entryName: "filmlib_detailpage_name"
				},
				on: {
					click: t.report,
					loadedPage: function (e) {
						t.$emit("loadedNewComments")
					},
					clickReply: function (e) {
						t.report("clickreply", arguments[0])
					},
					sendReply: function (e) {
						t.report("sendreply", arguments[0])
					},
					headClick: function (e) {
						t.report("head", arguments[0])
					},
					nameClick: function (e) {
						t.report("name", arguments[0])
					},
					likecomment: function (e) {
						t.report("like", arguments[0])
					},
					delte: function (e) {
						t.report("delete", arguments[0])
					},
					rcountchange: function (e) {
						t.$emit("rcountchange", e)
					},
					removeComment: t.updateComment,
					updatePage: t.setCurPage,
					finish: t.updateComment
				}
			}, [t.comments && t.comments.length || !t.gcid ? i("div", {
				staticClass: "xlx-comment-tips"
			}, [i("h2", [t._v("资源暂时无法评论")]), i("p", [t._v("\n          " + t._s("5" === t.$sget(t.curTask, "status") ? "连接中..." : "　") + "\n        ")]), i("span", {
				staticClass: "xlx-icon-blank-comment"
			})]) : i("XlQuickReview", {
				attrs: {
					suffix: t.$sget(t.curTask, "suffix"),
					curTask: t.curTask,
					tid: t.gcid
				},
				on: {
					sendQuickReview: t.sendQuickReview,
					quickrefresh: function (e) {
						t.report("quickrefresh")
					},
					quickCommentShow: t.handleQuickCommentShow
				}
			})], 1)], 1), i("XlCommentRank", {
				attrs: {
					lastCommentTime: t.lastCommentTime,
					tid: t.gcid,
					taskID: t.$sget(t.curTask, "taskID")
				},
				on: {
					comment: t.startComment,
					headClick: function (e) {
						t.report("head", arguments[0])
					}
				}
			})], 1)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	lfQx: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("header", {
				staticClass: "header"
			}, [i("nav", {
				staticClass: "nav"
			}, t._l(t.icons, function (e, n) {
				return i("xl-icon", {
					key: e.text,
					attrs: {
						icon: e
					},
					on: {
						click: function (e) {
							e.preventDefault(), t.clickNav(n)
						}
					}
				})
			})), i("a", {
				staticClass: "link-report-top",
				attrs: {
					href: "javascript:;"
				},
				on: {
					click: t.linkReport
				}
			}, [i("span", {
				staticClass: "link-report-text1"
			}, [t._v("举报")]), i("span", {
				staticClass: "link-report-text2"
			}, [t._v("有害信息")])])])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	"m+cC": function (t, e, i) {
		t.exports = i.p + "img/spr-data.bc5dafe.png"
	},
	mbce: function (t, e, i) {
		var n = i("lktj"),
			o = i("TcQ7"),
			a = i("NpIQ").f;
		t.exports = function (t) {
			return function (e) {
				for (var i, s = o(e), r = n(s), c = r.length, l = 0, p = []; c > l;) a.call(s, i = r[l++]) && p.push(t ? [i, s[i]] : s[i]);
				return p
			}
		}
	},
	n5z5: function (t, e, i) {
		"use strict";
		var n = i("Rhsk");
		e.a = {
			props: {
				reviewId: {
					type: Number
				},
				review: {
					type: Object,
					default: function () {
						return {}
					}
				}
			},
			computed: {
				cover: function () {
					return Object(n.e)(this.review.cover_url, 1, 250, 93) + "/format/jpg"
				},
				url: function () {
					return "http://movie.xunlei.com/reviews/" + this.reviewId
				},
				imgObj: function () {
					var t = i("DdQc");
					return {
						src: this.cover,
						loading: t,
						error: t
					}
				}
			},
			methods: {
				getAvatar: n.a
			}
		}
	},
	nVly: function (t, e, i) {
		"use strict";
		e.a = {
			props: {
				value: String
			},
			provide: function () {
				return {
					tabsVm: this
				}
			},
			data: function () {
				return {
					tabPanes: function () {
						return []
					}
				}
			},
			mounted: function () {
				this.tabPanes = this.$slots.default.map(function (t) {
					return t.componentInstance
				})
			},
			methods: {
				select: function (t) {
					this.$emit("input", t)
				}
			}
		}
	},
	o2eW: function (t, e, i) {
		"use strict";
		e.a = {
			props: {
				text: String,
				visible: Boolean
			},
			methods: {
				handleClick: function (t) {
					this.$emit("update:visible", !1), this.$emit(t)
				}
			}
		}
	},
	oTk5: function (t, e, i) {
		"use strict";
		var n = i("6QQw"),
			o = i("qHIs"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\comment\\XlCommentAvartar.vue", e.a = a.exports
	},
	onys: function (t, e, i) {
		var n = i("3IkN");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("1bbaa6c7", n, !1)
	},
	qHIs: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this.$createElement,
				e = this._self._c || t;
			return e("a", {
				staticClass: "xlx-comment__image",
				attrs: {
					target: "_blank",
					href: this.isLogin ? this.getUserLink(this.curUser.userId) : "javascript:;"
				},
				on: {
					click: this.handleAvatarClick
				}
			}, [e("img", {
				directives: [{
					name: "lazy",
					rawName: "v-lazy",
					value: this.getAvatar(this.curUser.userId),
					expression: "getAvatar(curUser.userId)"
				}],
				key: this.curUser.userId,
				attrs: {
					alt: "头像"
				}
			})])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	qXoI: function (t, e, i) {
		(t.exports = i("FZ+f")(!1)).push([t.i, 'body,html{width:100vw;overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{width:8px;background:rgba(0,0,0,.15);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}.is-scroll{overflow-y:scroll;height:100vh}.xlx-home{min-width:596px}.xlx-home .td-tabs__title{justify-content:center;margin:30px 0 20px;border-bottom:0}.xlx-home .td-tabs__title .td-tabs__item{width:auto;margin:0 15px}.xlx-home .td-tabs__title.is-fixed{position:fixed;top:0;left:0;z-index:99;width:100%;padding:5px 0;margin:0;background:hsla(0,0%,100%,.9)}.xlx-home .chart-box{height:35vh;min-height:200px}.xlx-home .xlx-file-list .td-tree-node{width:calc(100vw - 310px)}.xlx-home .td-tabs__content{overflow:visible}.index-wrap{transition:.3s}.xlx-home__content{display:none;margin:0 50px}.xlx-promote{margin-top:20px}.xlx-home__operate{display:flex;justify-content:center;align-items:center;height:40px;cursor:pointer}.xlx-home__operate .xlx-home__operate-arrow{display:flex;position:relative;width:100px;height:2px}.xlx-home__operate .xlx-home__operate-arrow:after,.xlx-home__operate .xlx-home__operate-arrow:before{display:block;width:50px;height:2px;background-color:#8ec5ee;content:"";transition:.2s}.xlx-home__operate .xlx-home__operate-arrow:before{transform-origin:right center}.xlx-home__operate .xlx-home__operate-arrow:after{transform-origin:left center}.xlx-home__operate:hover .xlx-home__operate-arrow:before{transform:rotate(-15deg)}.xlx-home__operate:hover .xlx-home__operate-arrow:after{transform:rotate(15deg)}.xlx-home-tool{position:fixed;right:0;bottom:20px}.xlx-home-tool .xlx-home-top{display:block;position:relative;width:30px;height:30px;border-radius:4px;background-color:#b0d2f0;transition:.2s}.xlx-home-tool .xlx-home-top:after{position:absolute;top:12px;left:9px;width:10px;height:10px;border:2px solid #fff;border-bottom:0;border-right:0;transform:rotate(45deg);content:""}.xlx-home-tool .xlx-home-top:hover{background-color:#a1c5e5}', ""])
	},
	qfEp: function (t, e, i) {
		"use strict";
		var n = i("fZjL"),
			o = i.n(n),
			a = i("woOf"),
			s = i.n(a),
			r = i("u2KI"),
			c = i.n(r),
			l = i("gKGV"),
			p = (i.n(l), i("sqP0")),
			d = (i.n(p), i("GAsr")),
			u = i("hMyI");
		e.a = {
			data: function () {
				return {
					labelWidth: 72,
					labelPadding: 21
				}
			},
			props: {
				curTask: {
					type: Object
				},
				operate: {
					type: Function,
					required: !0
				},
				domReady: {
					type: Boolean,
					default: !1
				}
			},
			components: {
				TaskChart: d.a,
				LabelItem: u.a
			},
			computed: {
				curTaskPrimaryAction: function () {
					var t = this.$sget(this.curTask, "status"),
						e = this.$sget(this.curTask, "actions") || [];
					if ("8" === t || "10" === t) {
						if (e.includes("play") || e.includes("playAndDown")) return "play";
						if (e.includes("openFolder")) return "openFolder"
					} else {
						if ("7" === t) return "continue";
						if ("20" === t) return "restore";
						if ("22" === t) return "delete"
					}
				},
				data: function () {
					return this.curTask ? [{
						data: c()(s()({
							0: 0
						}, this.$sget(this.curTask, "historySpeed") || {})),
						lineColorStart: "#0f9cff",
						lineColorEnd: "#9f85ff",
						gradientColorStart: "rgba(166,134,255,.4)",
						gradientColorEnd: "rgba(166,134,255,0)",
						label: !0
					}, {
						data: c()(s()({
							0: 0
						}, this.fixHistoryIncreaseSpeed(this.$sget(this.curTask, "historyIncreaseSpeed") || {}, this.$sget(this.curTask, "historySpeed") || {}))),
						lineColorStart: "rgba(180,76,219,.5)",
						lineColorEnd: "rgba(255,116,217,.5)",
						gradientColorStart: "rgba(255,147,171,.4)",
						gradientColorEnd: "rgba(255,147,171,0)"
					}] : []
				}
			},
			methods: {
				fixMaxSpeed: function (t, e) {
					var i = t;
					return t < e && (i = 1.62 * e), i
				},
				fixHistoryIncreaseSpeed: function (t, e) {
					var i = {};
					return o()(e).forEach(function (n) {
						var o = e[n],
							a = t[n];
						i[n] = Number(a) > Number(o) ? o : a
					}), i
				},
				deleteOldSpeedData: function (t, e) {
					if (t) return o()(t).filter(function (t) {
						return parseInt(t) < parseInt(e)
					}).reduce(function (e, i) {
						return e[i] = t[i], e
					}, {})
				},
				getDotLeft: function (t, e) {
					return t.x > e ? t.x > t.canvasWidth - e ? t.canvasWidth - e - e : t.x - e : 0
				},
				getDotStyle: function (t, e) {
					var i = e / 2;
					return {
						left: this.getDotLeft(t, i) + "px",
						top: t.y - i + "px"
					}
				},
				getLabelStyle: function (t, e, i, n) {
					var o = i + e + n;
					return {
						left: (this.getDotLeft(t, i / 2) < t.canvasWidth - o ? i : -(n + e)) + "px"
					}
				}
			}
		}
	},
	s0dP: function (t, e, i) {
		"use strict";
		var n = i("jRJX"),
			o = i("8Re5"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\comment\\XlQuickReview.vue", e.a = a.exports
	},
	s5fs: function (t, e, i) {
		var n = i("TeGd");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("6c0bdd58", n, !1)
	},
	sQgx: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this.$createElement,
				e = this._self._c || t;
			return e("p", {
				staticClass: "text-load"
			}, [e("span", {
				staticClass: "ico-article-load"
			}), this._v(this._s(this.text))])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	slrS: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticStyle: {
					width: "100%",
					display: "flex",
					"flex-direction": "column"
				},
				on: {
					click: function (t) {
						t.stopPropagation()
					}
				}
			}, [i("div", {
				directives: [{
					name: "show",
					rawName: "v-show",
					value: t.show,
					expression: "show"
				}],
				staticClass: "xlx-comment__write",
				class: {
					"is-focus": t.focus, "is-disabled": !t.tid
				}
			}, [i("label", {
				staticClass: "td-textarea"
			}, [i("textarea", {
				directives: [{
					name: "model",
					rawName: "v-model",
					value: t.text,
					expression: "text"
				}],
				ref: "replyInput",
				staticClass: "td-textarea__inner",
				attrs: {
					placeholder: t.placeholder,
					maxlength: t.maxLength
				},
				domProps: {
					value: t.text
				},
				on: {
					focus: t.handInputFocus,
					blur: t.handInputBlur,
					keydown: function (e) {
						return ("button" in e || !t._k(e.keyCode, "enter", 13, e.key)) && e.ctrlKey ? void t.sendCommentHandler(e) : null
					},
					input: function (e) {
						e.target.composing || (t.text = e.target.value)
					}
				}
			})]), i("div", {
				staticClass: "xlx-comment__oprate"
			}, [i("xl-emoji", {
				attrs: {
					isInputFocus: t.isInputFocus
				},
				on: {
					pick: t.handlePickEmoji,
					open: t.handleEmojiOpen
				},
				nativeOn: {
					click: function (e) {
						t.$emit("clickEmojiIcon")
					}
				}
			}), i("span", {
				staticClass: "xlx-comment__line"
			}), i("a", {
				staticClass: "xlx-button-sumbit",
				class: {
					"is-focus": !t.disabled && t.focus, "is-disabled": t.disabled
				},
				attrs: {
					title: "发送",
					href: "javascript:;"
				},
				on: {
					click: t.sendCommentHandler
				}
			}, [i("i", {
				staticClass: "xlx-icon-send"
			})])], 1)]), i("div", {
				staticClass: "error-message"
			}, [i("XlMessage", {
				staticClass: "is-absolute",
				attrs: {
					config: t.messageConfig
				},
				on: {
					hide: t.onHideMessage
				}
			})], 1)])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	sqP0: function (t, e, i) {
		var n = i("3kJ9");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("20aeb149", n, !1)
	},
	trdz: function (t, e, i) {
		var n = i("c8KX");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("1da00dee", n, !1)
	},
	vYBg: function (t, e, i) {
		"use strict";
		var n = i("7Jn1"),
			o = i("FKCV"),
			a = i("NQag"),
			s = i("Nwvo"),
			r = i.n(s);
		e.a = {
			components: {
				XlBadge: n.a,
				XlHeader: o.a
			},
			data: function () {
				return {
					current: 0,
					praising: !1
				}
			},
			computed: {
				banners: function () {
					return this.$store.state.reviews.banners
				},
				act: function () {
					return this.$store.state.home.configModules.reviewAct || {}
				},
				list: function () {
					var t = this,
						e = Object(a.a)(new Date),
						i = this.banners.slice(0, 4);
					if (this.act.startDate <= e && this.act.endDate >= e) {
						var n = i.findIndex(function (e) {
							return e.online_time === t.act.startDate
						});
						i[n = n >= 0 ? n : i.length > 0 ? i.length - 1 : 0] = this.act
					}
					return i
				},
				banner: function () {
					return this.list[this.current] || {}
				},
				review: function () {
					return this.$store.state.reviews.all[this.banner.review_id] || {}
				},
				time: function () {
					return this.$sget(this.banner, "online_time") ? this.$sget(this.banner, "online_time") : this.$sget(this.banner, "startDate") || ""
				},
				year: function () {
					return this.time.split("-")[0]
				},
				month: function () {
					var t = +this.time.split("-")[1] - 1;
					return ["JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC"][t]
				},
				day: function () {
					return this.time.split("-")[2]
				},
				recommends: function () {
					return this.$store.state.reviews.recommends || []
				}
			},
			methods: {
				praise: function () {
					var t = this;
					this.review.have_fav || this.praising || (this.praising = !0, this.$store.dispatch("reviews/praise", this.review.id).then(function () {
						t.praising = !1
					}), this.reportBannerClick(this.current, this.banner.review_id, "like"))
				},
				reportBannerClick: function (t, e, i) {
					this.$stat("download_detail", "dltab_startup_filmlib_click", {
						rn: t + 1,
						gcid: e,
						button: i
					})
				},
				bannerHover: function (t, e) {
					this.$stat("download_detail", "dltab_startup_filmlib_hover", {
						rn: t + 1,
						gcid: e
					})
				},
				filmClick: function () {
					var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "",
						e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "",
						i = arguments[2];
					this.$stat("download_detail", "dltab_startup_filmlib_pic_click", {
						rn: t + 1,
						gcid: e,
						button: i
					})
				},
				recommendHover: function (t, e) {
					this.$stat("download_detail", "dltab_startup_filmlib_recommend_hover", {
						rn: t + 1,
						gcid: e
					})
				},
				recommendClick: function (t, e, i) {
					this.$stat("download_detail", "dltab_startup_filmlib_pic_recommend_click", {
						rn: e + 1,
						gcid: i,
						button: t
					})
				}
			},
			created: function () {
				this.$store.dispatch("home/getNavConfig"), this.$store.dispatch("reviews/getBanners"), this.$store.dispatch("reviews/getReviewSelection"), this.$store.dispatch("getIPBlockInfo"), this.$stat("download_detail", "dltab_startup_page_show"), this.$stat("download_detail", "dltab_startup_filmlib_recommend_show")
			},
			mounted: function () {
				var t = this;
				r.a.api.attach("OnTabVisibleChange", function (e, i) {
					e && i && (t.current >= 3 ? t.current = 0 : t.current += 1, t.$stat("download_detail", "dltab_startup_filmlib_show", {
						gcid: t.list[t.current].review_id
					}))
				})
			}
		}
	},
	vbZl: function (t, e, i) {
		"use strict";
		e.a = {
			props: {
				id: {
					type: [String, Number],
					required: !0
				},
				cid: [String, Number],
				praisedClass: String,
				animationClass: String
			},
			computed: {
				praiseInfo: function () {
					return this.$store.state.praise.praise[this.cid ? this.cid : this.id] || {}
				},
				praiseNum: function () {
					return this.praiseInfo.praiseNum
				},
				isPraise: function () {
					return this.praiseInfo.praised
				}
			},
			data: function () {
				return {
					disabled: !1,
					isPraising: !1
				}
			},
			methods: {
				praise: function () {
					var t = this;
					this.isPraise || this.disabled || (this.disabled = !0, this.isPraising = !0, setTimeout(function () {
						t.isPraising = !1
					}, 800), this.$store.commit("praise/set", {
						praiseNum: 1 * this.praiseNum + 1,
						isPraise: !0,
						id: this.id,
						cid: this.cid
					}), this.cid ? this.$store.dispatch("praise/praiseComment", {
						tid: this.id,
						cid: this.cid
					}).then(function () {
						t.$emit("praise")
					}).catch(function (e) {
						var i = e instanceof Error ? e : new Error(e);
						t.$raven.warn(i)
					}).then(function () {
						t.disabled = !1
					}) : this.$store.dispatch("praise/praise", {
						id: this.id
					}).then(function () {
						t.$emit("praise")
					}).catch(function (e) {
						var i = e instanceof Error ? e : new Error(e);
						t.$raven.warn(i)
					}).then(function () {
						t.disabled = !1
					}))
				}
			}
		}
	},
	vqIZ: function (t, e, i) {
		"use strict";
		var n = i("EXOm"),
			o = i("GzfO"),
			a = i("VU/8")(n.a, o.a, !1, null, null, null);
		a.options.__file = "components\\comment\\XlCommentRank.vue", e.a = a.exports
	},
	vxzU: function (t, e, i) {
		var n = i("4gUg");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("33384fb7", n, !1)
	},
	wp7v: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "td-tabs"
			}, [i("div", {
				staticClass: "td-tabs__title"
			}, t._l(t.tabPanes, function (e) {
				return e ? i("div", {
					key: e.name,
					staticClass: "td-tabs__item",
					class: {
						"is-active": e.name === t.value
					},
					on: {
						click: function (i) {
							t.select(e.name)
						}
					}
				}, [t._v("\n      " + t._s(e.label) + "\n    ")]) : t._e()
			})), i("div", {
				staticClass: "td-tabs__content"
			}, [t._t("default")], 2)])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	wxAW: function (t, e, i) {
		"use strict";
		e.__esModule = !0;
		var n, o = i("C4MV"),
			a = (n = o) && n.__esModule ? n : {
				default: n
			};
		e.default = function () {
			function t(t, e) {
				for (var i = 0; i < e.length; i++) {
					var n = e[i];
					n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), (0, a.default)(t, n.key, n)
				}
			}
			return function (e, i, n) {
				return i && t(e.prototype, i), n && t(e, n), e
			}
		}()
	},
	xJzN: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("span", [t._t("default", null, {
				isVip: t.isVip,
				isYear: t.isYear,
				vipType: t.vipType
			}), i("a", {
				directives: [{
					name: "show",
					rawName: "v-show",
					value: t.visible && t.show,
					expression: "visible && show"
				}],
				attrs: {
					target: "_blank",
					href: t.vipLink
				},
				nativeOn: {
					click: function (e) {
						t.$emit("clickVip")
					}
				}
			}, [i("vip-icon", {
				attrs: {
					size: "small",
					vipData: t.vipData
				}
			})], 1)], 2)
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	xPuQ: function (t, e, i) {
		"use strict";
		var n = function () {
			var t = this,
				e = t.$createElement,
				i = t._self._c || e;
			return i("div", {
				staticClass: "xlx-promote"
			}, [i("ul", {
				staticClass: "xlx-promote-list"
			}, t._l(t.recommendReviewList, function (e, n) {
				return i("XlRecommendReviewItem", {
					key: e,
					attrs: {
						reviewId: e
					},
					nativeOn: {
						click: function (i) {
							t.handleItemClick(e, n)
						}
					}
				})
			}))])
		};
		n._withStripped = !0;
		var o = {
			render: n,
			staticRenderFns: []
		};
		e.a = o
	},
	yDtN: function (t, e, i) {
		var n = i("hfr0");
		"string" == typeof n && (n = [
			[t.i, n, ""]
		]), n.locals && (t.exports = n.locals);
		i("rjj0")("1696bd3c", n, !1)
	},
	yr0C: function (t, e, i) {
		var n;
		n = function () {
			return function (t) {
				var e = {};

				function i(n) {
					if (e[n]) return e[n].exports;
					var o = e[n] = {
						i: n,
						l: !1,
						exports: {}
					};
					return t[n].call(o.exports, o, o.exports, i), o.l = !0, o.exports
				}
				return i.m = t, i.c = e, i.i = function (t) {
					return t
				}, i.d = function (t, e, n) {
					i.o(t, e) || Object.defineProperty(t, e, {
						configurable: !1,
						enumerable: !0,
						get: n
					})
				}, i.n = function (t) {
					var e = t && t.__esModule ? function () {
						return t.default
					} : function () {
						return t
					};
					return i.d(e, "a", e), e
				}, i.o = function (t, e) {
					return Object.prototype.hasOwnProperty.call(t, e)
				}, i.p = "", i(i.s = 3)
			}([function (t, e, i) {
				"use strict";
				e.a = function () {
					var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [],
						e = "",
						i = "";
					if (!t || 0 === t.length) return {
						isVip: !1
					};
					var n = t.filter(function (t) {
						return t && 2 === (t.vasId || t.vasID)
					})[0];
					if (i = n.vIPLevel || n.VIPLevel || 0, n) {
						var o = {
							2: "",
							3: "p",
							5: "s"
						}[n.vasType] || "";
						return e = "vip-icon-" + o + "vip" + i, {
							isVip: "1" === n.isVIP,
							isStop: "2" === n.isVIP,
							isYear: "1" === n.isYear,
							type: n.vasType,
							level: i,
							vipClass: e
						}
					}
					return {
						isVip: !1
					}
				}
			}, function (t, e, i) {
				"use strict";
				var n = i(4),
					o = i.n(n);
				o.a.install = function (t) {
					t.component(o.a.name, o.a)
				}, e.a = o.a
			}, function (t, e, i) {
				"use strict";
				Object.defineProperty(e, "__esModule", {
					value: !0
				});
				var n = i(0);
				e.default = {
					name: "vip-icon",
					props: {
						vipData: {
							type: Array,
							required: !0
						},
						size: {
							type: String,
							default: "normal"
						},
						disabled: {
							type: Boolean,
							default: !1
						}
					},
					computed: {
						vipInfo: function () {
							return i.i(n.a)(this.vipData)
						},
						vipClass: function () {
							var t = this.vipInfo.vipClass;
							return "small" === this.size && (t += " is-small"), (this.vipInfo.isStop || "0" === this.vipInfo.level || this.disabled) && (t += " is-disabled"), t
						}
					}
				}
			}, function (t, e, i) {
				"use strict";
				Object.defineProperty(e, "__esModule", {
					value: !0
				});
				var n = i(1),
					o = i(0);
				i.d(e, "vipInfo", function () {
					return o.a
				});
				var a = {
					install: function (t, e) {
						t.use(n.a), t.prototype.$vipInfo = function (t) {
							return i.i(o.a)(t)
						}
					}
				};
				e.default = a
			}, function (t, e, i) {
				var n = i(5)(i(2), i(6), null, null, null);
				n.options.__file = "/Users/nancy/Desktop/work/@xunlei/vip/src/vip-icon/VipIcon.vue", n.esModule && Object.keys(n.esModule).some(function (t) {
					return "default" !== t && "__" !== t.substr(0, 2)
				}) && console.error("named exports are not supported in *.vue files."), n.options.functional && console.error("[vue-loader] VipIcon.vue: functional components are not supported with templates, they should use render functions."), t.exports = n.exports
			}, function (t, e) {
				t.exports = function (t, e, i, n, o) {
					var a, s = t = t || {},
						r = typeof t.default;
					"object" !== r && "function" !== r || (a = t, s = t.default);
					var c, l = "function" == typeof s ? s.options : s;
					if (e && (l.render = e.render, l.staticRenderFns = e.staticRenderFns), n && (l._scopeId = n), o ? (c = function (t) {
							(t = t || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) || "undefined" == typeof __VUE_SSR_CONTEXT__ || (t = __VUE_SSR_CONTEXT__), i && i.call(this, t), t && t._registeredComponents && t._registeredComponents.add(o)
						}, l._ssrRegister = c) : i && (c = i), c) {
						var p = l.functional,
							d = p ? l.render : l.beforeCreate;
						p ? l.render = function (t, e) {
							return c.call(e), d(t, e)
						} : l.beforeCreate = d ? [].concat(d, c) : [c]
					}
					return {
						esModule: a,
						exports: s,
						options: l
					}
				}
			}, function (t, e, i) {
				t.exports = {
					render: function () {
						var t = this.$createElement;
						return (this._self._c || t)("i", {
							class: this.vipClass
						})
					},
					staticRenderFns: []
				}, t.exports.render._withStripped = !0
			}])
		}, t.exports = n()
	}
});
/*! ThunderX BY LUOCHENZHIMU */
/*! Last updated on 2018/10/02 */