/*! Thunder 11 BY LUOCHENZHIMU */
/*! Last updated on 2020/12/27 */
/*! https://www.luochenzhimu.com */
module.exports = function (e) {
    var t = {};

    function i(n) {
        if (t[n]) return t[n].exports;
        var o = t[n] = {i: n, l: !1, exports: {}};
        return e[n].call(o.exports, o, o.exports, i), o.l = !0, o.exports
    }

    return i.m = e, i.c = t, i.d = function (e, t, n) {
        i.o(e, t) || Object.defineProperty(e, t, {enumerable: !0, get: n})
    }, i.r = function (e) {
        "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {value: "Module"}), Object.defineProperty(e, "__esModule", {value: !0})
    }, i.t = function (e, t) {
        if (1 & t && (e = i(e)), 8 & t) return e;
        if (4 & t && "object" == typeof e && e && e.__esModule) return e;
        var n = Object.create(null);
        if (i.r(n), Object.defineProperty(n, "default", {
            enumerable: !0,
            value: e
        }), 2 & t && "string" != typeof e) for (var o in e) i.d(n, o, function (t) {
            return e[t]
        }.bind(null, o));
        return n
    }, i.n = function (e) {
        var t = e && e.__esModule ? function () {
            return e.default
        } : function () {
            return e
        };
        return i.d(t, "a", t), t
    }, i.o = function (e, t) {
        return Object.prototype.hasOwnProperty.call(e, t)
    }, i.p = "", i(i.s = 736)
}([function (e, t, i) {
    "use strict";

    function n(e, t, i, n, o, r, s, a) {
        var l, c = "function" == typeof e ? e.options : e;
        if (t && (c.render = t, c.staticRenderFns = i, c._compiled = !0), n && (c.functional = !0), r && (c._scopeId = "data-v-" + r), s ? (l = function (e) {
            (e = e || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) || "undefined" == typeof __VUE_SSR_CONTEXT__ || (e = __VUE_SSR_CONTEXT__), o && o.call(this, e), e && e._registeredComponents && e._registeredComponents.add(s)
        }, c._ssrRegister = l) : o && (l = a ? function () {
            o.call(this, this.$root.$options.shadowRoot)
        } : o), l) if (c.functional) {
            c._injectStyles = l;
            var u = c.render;
            c.render = function (e, t) {
                return l.call(t), u(e, t)
            }
        } else {
            var d = c.beforeCreate;
            c.beforeCreate = d ? [].concat(d, l) : [l]
        }
        return {exports: e, options: c}
    }

    i.d(t, "a", function () {
        return n
    })
}, function (e, t, i) {
    e.exports = i(8)(134)
}, function (e, t) {
    e.exports = require("path")
}, function (e, t) {
    e.exports = require("electron")
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(14), r = i(46), s = i(24), a = i(26);

    function l(e) {
        a.information("on object freeer"), global.__xdasIPCClienInstance.notifyFreer(e.remoteId, e.callbackId)
    }

    let c = void 0;
    global.__xdasIPCClienInstance || (global.__xdasIPCClienInstance = new class extends o.EventEmitter {
        constructor() {
            super(), this.rid = 0, this.apis = {}, this.singletonMap = {}, this.connectedMap = {}, this.retCallbackMap = {}, this.eventCallbackMaps = {}, this.contextCallbackMap = {}
        }

        start(e, t, i, n) {
            do {
                if (t || (t = s.getDefaultPrex()), this.singletonMap.hasOwnProperty(t.toLowerCase())) {
                    if (n) if (this.connectedMap.hasOwnProperty(t.toLowerCase())) n("connect"); else {
                        let e = this.singletonMap[t.toLowerCase()];
                        e.on("error", e => {
                            n("error", e)
                        }), e.on("connect", () => {
                            n("connect")
                        }), e.on("end", () => {
                            let t = e.isInprocess();
                            n("end", e.getContext(), i, t)
                        })
                    }
                    break
                }
                if (global.__xdasPluginConfig && global.__xdasPluginConfig.name ? e = {
                    name: global.__xdasPluginConfig.name,
                    version: global.__xdasPluginConfig.version
                } : void 0 !== e && null !== e || (e = this.parseContext()), !e) {
                    if (!this.client || !this.client.getContext()) throw new Error("no suitable context for client, please specify context with start function");
                    e = {name: this.client.getContext().name, version: this.client.getContext().version}
                }
                if (e.name === s.serverContextName) throw new Error("client context must difference from server");
                if (i && !this.client) throw new Error("connect to other product must start self firstly");
                global.__xdasPluginConfig || (global.__xdasPluginConfig = e);
                let o = new r.Client({context: e, socketPrex: t});
                this.singletonMap[t.toLowerCase()] = o, i || (this.client = o), o.on("message", e => {
                    if ("fire_event" === e.action) this.fireServerEvent(o, e.name, [e.__context].concat(e.args)); else if ("client_context_freer" === e.action) do {
                        let t = e.rid;
                        if (t) {
                            if (!this.contextCallbackMap[t]) break;
                            delete this.contextCallbackMap[t]
                        }
                    } while (0); else if ("call_client_by_id" === e.action) this.callFunctionById(o, e.rid, e.s_rid, e.args); else if ("call_client_api" === e.action) this.callRegisterFunction(o, e); else if ("check_client_function" === e.action) {
                        let t = e.method, i = !0;
                        t && this.apis && this.apis[t] || (i = !1), this.sendAdapter(o, {
                            s_rid: e.s_rid,
                            action: "check_client_function_callback",
                            success: !0,
                            data: i
                        })
                    } else if (void 0 !== e.success && null !== e.success) {
                        let t = e;
                        this.client === o && this.emit("stat_call_function_back", o.getContext(), e);
                        const i = this.retCallbackMap[t.rid].callback;
                        if (i) if (t.success) do {
                            if ("remote_client_callback" === e.action && e.__context && e.__context.name && e.__context.productId) {
                                let n = `${e.__context.productId}-${e.__context.name}`.toLowerCase();
                                i(null, this.decodeParameter(t.data, n));
                                break
                            }
                            i(null, t.data)
                        } while (0); else i(t.error, t.data);
                        delete this.retCallbackMap[t.rid]
                    }
                }), o.on("error", e => {
                    n && n("error", e), this.emit("socket-error", e, o.getContext(), i, o.isInprocess()), delete this.singletonMap[t.toLowerCase()], delete this.connectedMap[t.toLowerCase()], i || (this.client = null)
                }), o.isInprocess() ? (this.connectedMap[t.toLowerCase()] = o, n && n("connect"), this.emit("connect", o.getContext(), i, !0)) : o.on("connect", () => {
                    this.connectedMap[t.toLowerCase()] = o, n && n("connect"), this.emit("connect", o.getContext(), i, !1)
                }), o.on("end", () => {
                    let e = o.isInprocess();
                    a.information("server is ended, and this client emit end", t, i, e), n && n("end", o.getContext(), i, e), this.emit("end", o.getContext(), i, e), delete this.singletonMap[t.toLowerCase()], delete this.connectedMap[t.toLowerCase()], i || (this.client = null)
                }), this.registry(o)
            } while (0)
        }

        registerFunctions(e) {
            do {
                if (!e) break;
                let t = void 0;
                for (let i in e) if (this.apis.hasOwnProperty(i)) {
                    t = i;
                    break
                }
                if (t) throw new Error(`try to coverd function ${t}`);
                this.apis = Object.assign({}, this.apis, e)
            } while (0)
        }

        checkServerFunction(e) {
            return n(this, void 0, void 0, function* () {
                return this.internalCheckServerFunction(this.client, e)
            })
        }

        callServerFunction(e, ...t) {
            return n(this, void 0, void 0, function* () {
                let i = null, n = yield this.callServerFunctionEx(e, ...t);
                return n && (i = n[0]), i
            })
        }

        callServerFunctionEx(e, ...t) {
            return this.internalCallServerFunctionEx(this.client, e, ...t)
        }

        isRemoteClientExist(e) {
            return this.internalIsRemoteClientExist(this.client, e)
        }

        checkRemoteFunction(e, t) {
            return this.internalCheckRemoteFunction(this.client, e, t)
        }

        callRemoteClientFunction(e, t, ...i) {
            return this.internalCallRemoteClientFunction(this.client, e, t, ...i)
        }

        notifyFreer(e, t) {
            this.sendAdapter(this.client, {action: "client_context_freer", dst: e, rid: t})
        }

        callRemoteContextById(e, t, ...i) {
            this.sendAdapter(this.client, {dst: e, action: "call_remote_context_by_id", rid: t, args: i})
        }

        attachServerEvent(e, t) {
            return this.internalAttachServerEvent(this.client, e, t)
        }

        detachServerEvent(e, t) {
            this.internalDetachServerEvent(this.client, e, t)
        }

        broadcastEvent(e, ...t) {
            this.sendAdapter(this.client, {action: "broadcast", name: e, args: t})
        }

        crossCheckServerFunction(e, t) {
            return n(this, void 0, void 0, function* () {
                {
                    if (!e) throw new Error("An argument for 'productId' was not provided");
                    let i = this.singletonMap[e.toLowerCase()];
                    if (!i) throw new Error("Please call the 'start' interface first");
                    return this.internalCheckServerFunction(i, t)
                }
            })
        }

        crossCallServerFunction(e, t, ...i) {
            return n(this, void 0, void 0, function* () {
                let n = null, o = yield this.crossCallServerFunctionEx(e, t, ...i);
                return o && (n = o[0]), n
            })
        }

        crossCallServerFunctionEx(e, t, ...i) {
            {
                if (!e) throw new Error("An argument for 'productId' was not provided");
                let n = this.singletonMap[e.toLowerCase()];
                if (!n) throw new Error("Please call the 'start' interface first");
                if (!t) throw new Error("An argument for 'funcName' was not provided");
                return this.internalCallServerFunctionEx(n, t, ...i)
            }
        }

        crossIsRemoteClientExist(e, t) {
            return n(this, void 0, void 0, function* () {
                {
                    if (!e) throw new Error("An argument for 'productId' was not provided");
                    let i = this.singletonMap[e.toLowerCase()];
                    if (!i) throw new Error("Please call the 'start' interface first");
                    return this.internalIsRemoteClientExist(i, t)
                }
            })
        }

        crossCheckRemoteFunction(e, t, i) {
            return n(this, void 0, void 0, function* () {
                {
                    if (!e) throw new Error("An argument for 'productId' was not provided");
                    let n = this.singletonMap[e.toLowerCase()];
                    if (!n) throw new Error("Please call the 'start' interface first");
                    if (!t) throw new Error("An argument for 'remoteId' was not provided");
                    if (!i) throw new Error("An argument for 'funcName' was not provided");
                    return this.internalCheckRemoteFunction(n, t, i)
                }
            })
        }

        crossCallRemoteClientFunction(e, t, i, ...n) {
            {
                if (!e) throw new Error("An argument for 'productId' was not provided");
                let o = this.singletonMap[e.toLowerCase()];
                if (!o) throw new Error("Please call the 'start' interface first");
                if (!t) throw new Error("An argument for 'remoteId' was not provided");
                if (!i) throw new Error("An argument for 'funcName' was not provided");
                return this.internalCallRemoteClientFunction(o, t, i, ...n)
            }
        }

        crossAttachServerEvent(e, t, i) {
            let n = void 0;
            {
                if (!e) throw new Error("An argument for 'productId' was not provided");
                let o = this.singletonMap[e.toLowerCase()];
                if (!o) throw new Error("Please call the 'start' interface first");
                if (!t) throw new Error("An argument for 'eventName' was not provided");
                n = this.internalAttachServerEvent(o, t, i)
            }
            return n
        }

        crossDetachServerEvent(e, t, i) {
            {
                if (!e) throw new Error("An argument for 'productId' was not provided");
                let n = this.singletonMap[e.toLowerCase()];
                if (!n) throw new Error("Please call the 'start' interface first");
                if (!t) throw new Error("An argument for 'eventName' was not provided");
                this.internalDetachServerEvent(n, t, i)
            }
        }

        crossBroadcastEvent(e, t, ...i) {
            {
                if (!e) throw new Error("An argument for 'productId' was not provided");
                let n = this.singletonMap[e.toLowerCase()];
                if (!n) throw new Error("Please call the 'start' interface first");
                if (!t) throw new Error("An argument for 'eventName' was not provided");
                this.sendAdapter(n, {
                    action: "broadcast",
                    name: t,
                    args: i,
                    __context: Object.assign({}, this.client.getContext())
                })
            }
        }

        registry(e) {
            let t = this.getFullContextName(this.client);
            return new Promise((i, n) => {
                do {
                    if (!t) {
                        i(!1);
                        break
                    }
                    let n = this.generateId();
                    const o = {alias: t, action: "register", rid: n};
                    let r = (e, n) => {
                        e ? (a.error("register error", e.message), i(n)) : i(t)
                    };
                    this.retCallbackMap[n] = Object.assign({callback: r}, o), this.sendAdapter(e, o)
                } while (0)
            })
        }

        getNow() {
            return Date.now()
        }

        sendAdapter(e, t) {
            do {
                if (!t) break;
                let i = this.getNow();
                if (t.timestamp ? t.timestamp = [...t.timestamp].concat(i) : t.timestamp = [].concat(i), !t.__context) {
                    let i = e.getContext();
                    i && (t = Object.assign({__context: i}, t))
                }
                e.isInprocess() ? (a.information("send to server in process"), global.__xdasIPCServer.emit("message", t, e)) : e.send(t)
            } while (0)
        }

        parseContext() {
            let e = void 0;
            do {
                let t = "";
                for (let e = 0; e < process.argv.length; e++) {
                    let i = process.argv[e];
                    if (0 === i.indexOf("--xdas-plugin-name=", 0)) {
                        t = i.substr("--xdas-plugin-name=".length);
                        break
                    }
                }
                if (!t) break;
                e = {name: t}
            } while (0);
            return e
        }

        generateId() {
            return this.rid++
        }

        getFullContextName(e, t) {
            let i = "";
            do {
                if (t === s.serverContextName) {
                    i = t;
                    break
                }
                if (void 0 === t) {
                    i = `${e.getContext().productId}-${e.getContext().name}`.toLowerCase();
                    break
                }
                i = `${e.getContext().productId}-${t}`.toLowerCase()
            } while (0);
            return i
        }

        internalCheckServerFunction(e, t) {
            return new Promise((i, n) => {
                do {
                    if (!e) {
                        i(!1);
                        break
                    }
                    if (!t) {
                        i(!1);
                        break
                    }
                    let n = this.generateId();
                    const o = {action: "check_server_function_exist", method: t, rid: n};
                    let r = (e, t) => {
                        i(!e && t)
                    };
                    this.retCallbackMap[n] = Object.assign({callback: r}, o), this.sendAdapter(e, o)
                } while (0)
            })
        }

        internalCallServerFunctionEx(e, t, ...i) {
            return new Promise((n, o) => {
                do {
                    if (!e) {
                        n([null, "client doesn't ready"]);
                        break
                    }
                    if (!t) {
                        n([null, "funcName is not specifed"]);
                        break
                    }
                    e === this.client && this.emit("stat_call_function", this.client.getContext(), t);
                    let o = this.generateId();
                    if (i) for (let e = 0; e < i.length; e++) i[e] = this.convertFunction2IdEx(i[e]);
                    const r = {rid: o, method: t, args: i};
                    let s = (t, i) => {
                        t ? (a.error("callServerFunction error", t, e.getContext()), n([null, t])) : n([i, void 0])
                    };
                    this.retCallbackMap[o] = Object.assign({callback: s}, r), this.sendAdapter(e, r)
                } while (0)
            })
        }

        internalIsRemoteClientExist(e, t) {
            return new Promise((i, n) => {
                do {
                    if (!t) {
                        i([!1, "remote client alias is not specifed"]);
                        break
                    }
                    if (e === this.client && t.toLowerCase() === e.getContext().name.toLowerCase()) {
                        i([!0, "self is exist"]);
                        break
                    }
                    let n = this.generateId();
                    const o = {dst: this.getFullContextName(e, t), action: "check_client_exist", rid: n};
                    let r = (e, t) => {
                        i(e ? [!1, e] : [t, "success"])
                    };
                    this.retCallbackMap[n] = Object.assign({callback: r}, o), this.sendAdapter(e, o)
                } while (0)
            })
        }

        internalCheckRemoteFunction(e, t, i) {
            return new Promise((n, o) => {
                do {
                    if (!e) {
                        n(!1);
                        break
                    }
                    if (!t) {
                        n(!1);
                        break
                    }
                    if (!i) {
                        n(!1);
                        break
                    }
                    if (e === this.client && t.toLowerCase() === e.getContext().name.toLowerCase()) {
                        n(!(!this.apis || !this.apis[i]));
                        break
                    }
                    let o = this.generateId();
                    const r = {
                        action: "check_client_function_exist",
                        method: i,
                        rid: o,
                        src: this.getFullContextName(this.client),
                        dst: this.getFullContextName(e, t)
                    };
                    let s = (e, t) => {
                        n(!e && t)
                    };
                    this.retCallbackMap[o] = Object.assign({callback: s}, r), this.sendAdapter(e, r)
                } while (0)
            })
        }

        internalCallRemoteClientFunction(e, t, i, ...n) {
            return new Promise((o, r) => {
                do {
                    if (!e) {
                        o([null, "client doesn't ready"]);
                        break
                    }
                    if (!t) {
                        o([null, "remote client alias is not specifed"]);
                        break
                    }
                    if (!i) {
                        o([null, "funcName is not specifed"]);
                        break
                    }
                    let r = (e, t) => {
                        e ? (a.information("callRemoteClientFunction", e.message), o([null, e])) : o([t, void 0])
                    };
                    if (n) for (let e = 0; e < n.length; e++) n[e] = this.convertFunction2IdEx(n[e]);
                    let s = this.generateId();
                    const l = {
                        src: this.getFullContextName(this.client),
                        dst: this.getFullContextName(e, t),
                        action: "call_remote_client_api",
                        method: i,
                        args: n,
                        rid: s
                    };
                    this.retCallbackMap[s] = Object.assign({callback: r}, l), this.sendAdapter(e, l)
                } while (0)
            })
        }

        internalAttachServerEvent(e, t, i) {
            let n = e.getContext().productId.toLowerCase();
            this.eventCallbackMaps.hasOwnProperty(n) || (this.eventCallbackMaps[n] = {}), this.eventCallbackMaps[n].hasOwnProperty(t) || (this.eventCallbackMaps[n][t] = {}), s.isObjectEmpty(this.eventCallbackMaps[n][t]) && this.sendAdapter(e, {
                action: "attach_event",
                name: t
            });
            let o = this.generateId();
            return this.eventCallbackMaps[n][t][o] = i, o
        }

        internalDetachServerEvent(e, t, i) {
            let n = e.getContext().productId.toLowerCase();
            do {
                if (!this.eventCallbackMaps.hasOwnProperty(n)) break;
                if (!this.eventCallbackMaps[n].hasOwnProperty(t)) break;
                delete this.eventCallbackMaps[n][t][i], s.isObjectEmpty(this.eventCallbackMaps[n][t]) && this.sendAdapter(e, {
                    action: "detach_event",
                    name: t
                })
            } while (0)
        }

        fireServerEvent(e, t, ...i) {
            let n = e.getContext().productId.toLowerCase();
            do {
                if (!this.eventCallbackMaps.hasOwnProperty(n)) break;
                if (!this.eventCallbackMaps[n].hasOwnProperty(t)) break;
                let e = this.eventCallbackMaps[n][t];
                for (let t in e) {
                    let n = e[t];
                    n && n.apply(null, ...i)
                }
            } while (0)
        }

        callFunctionById(e, t, i, ...n) {
            let o = void 0, r = !1;
            do {
                const s = this.contextCallbackMap[t];
                if (!s) {
                    a.error("the context function has been freeer", t), o = {
                        s_rid: i,
                        action: "call_client_by_id_callback",
                        success: !1,
                        error: "the context function has been freeer"
                    };
                    break
                }
                let l = void 0, c = void 0;
                try {
                    l = s.apply(null, ...n)
                } catch (e) {
                    c = e.message;
                    break
                }
                if (void 0 === i || null === i) break;
                if (o = {s_rid: i, action: "call_client_by_id_callback", success: !1}, void 0 !== c) {
                    o.error = c;
                    break
                }
                if (l && l.then) {
                    l.then(t => {
                        o.data = this.convertFunction2IdEx(t), o.success = !0, this.sendAdapter(e, o)
                    }).catch(t => {
                        o.error = t instanceof Error ? t.message : t, this.sendAdapter(e, o)
                    }), r = !0;
                    break
                }
                o.success = !0, o.data = this.convertFunction2IdEx(l)
            } while (0);
            !r && o && this.sendAdapter(e, o)
        }

        convertFunction2IdEx(e) {
            let t = e;
            if ("function" == typeof e) {
                let i = this.generateId();
                this.contextCallbackMap[i] = e, t = {"__nodeipc_callback_id__{A9C9D760-14E8-42CB-A3CB-9C0A0DDFD732}": i}
            } else if (e && "object" == typeof e) {
                t = Array.isArray(e) ? [...e] : Object.assign({}, e);
                for (let e in t) {
                    let i = t[e];
                    if ("function" == typeof i) {
                        let n = this.generateId();
                        this.contextCallbackMap[n] = i, t[e] = {"__nodeipc_callback_id__{A9C9D760-14E8-42CB-A3CB-9C0A0DDFD732}": n}
                    } else i && "object" == typeof i && (t[e] = this.convertFunction2IdEx(i))
                }
            }
            return t
        }

        decodeParameter(e, t) {
            let i = e;
            do {
                if (!e) break;
                if (!t) break;
                if ("object" != typeof e) break;
                let n = e["__nodeipc_callback_id__{A9C9D760-14E8-42CB-A3CB-9C0A0DDFD732}"];
                if (n) {
                    i = ((...e) => {
                        this.callRemoteContextById(t, n, ...e)
                    }), global.__xdasObjectLiftMonitor && global.__xdasObjectLiftMonitor.setObjectFreer(i, {
                        remoteId: t,
                        callbackId: n
                    }, l);
                    break
                }
                for (let i in e) {
                    let n = e[i];
                    e[i] = this.decodeParameter(n, t)
                }
            } while (0);
            return i
        }

        callRegisterFunction(e, t) {
            let i = void 0, n = !1;
            do {
                if (!t) break;
                let o = t.method;
                if (!o) break;
                let r = this.getNow();
                if (i = {
                    s_rid: t.s_rid,
                    action: "remote_client_callback",
                    success: !1,
                    rid: t.rid,
                    method: t.method,
                    src: t.src,
                    timestamp: t.timestamp ? t.timestamp.concat(r) : [].concat(r)
                }, !this.apis || !this.apis[o]) {
                    i.error = `callRegisterFunction ${o} is undefined`;
                    break
                }
                let s = void 0, a = this.decodeParameter(t.args, t.src);
                try {
                    s = this.apis[o].apply(null, [t.src].concat(a))
                } catch (e) {
                    i.error = e.message;
                    break
                }
                if (s && s.then) {
                    s.then(t => {
                        i.data = this.convertFunction2IdEx(t), i.success = !0, this.sendAdapter(e, i)
                    }).catch(t => {
                        i.error = t instanceof Error ? t.message : t, this.sendAdapter(e, i)
                    }), n = !0;
                    break
                }
                i.success = !0, i.data = this.convertFunction2IdEx(s)
            } while (0);
            a.information("callRegisterFunction", i), !n && i && this.sendAdapter(e, i)
        }
    }), c = global.__xdasIPCClienInstance, t.client = c
}, function (e, t, i) {
    e.exports = i(8)(208)
}, function (e, t) {
    e.exports = require("util")
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(1).default.getLogger("async-remote-call"), r = i(39), s = i(14), a = i(6);
    t.asyncRemoteCall = new class extends s.EventEmitter {
        constructor() {
            super(), this.mapObj = new Map, this.mapObjIniting = new Map, "renderer" !== process.type && o.warning('can not import "renderer-process-call" module in non-renderer process', process.type)
        }

        getAppName() {
            return n(this, void 0, void 0, function* () {
                if (void 0 === this.appName) {
                    let e = yield this.getApp();
                    this.appName = yield e.getName()
                }
                return this.appName
            })
        }

        getAppVersion() {
            return n(this, void 0, void 0, function* () {
                if (void 0 === this.appVersion) {
                    let e = yield this.getApp();
                    this.appVersion = yield e.getVersion()
                }
                return this.appVersion
            })
        }

        getProcess() {
            return n(this, void 0, void 0, function* () {
                return r.global.process.__resolve()
            })
        }

        getIpcMain() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("ipcMain")
            })
        }

        getDialog() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("dialog")
            })
        }

        getApp() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("app")
            })
        }

        getShell() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("shell")
            })
        }

        getMenu() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("Menu")
            })
        }

        getScreen() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("screen")
            })
        }

        getBrowserWindow() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("BrowserWindow")
            })
        }

        getWebContents() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("webContents")
            })
        }

        getGlobalShortcut() {
            return n(this, void 0, void 0, function* () {
                return this.getCurrentObject("globalShortcut")
            })
        }

        getCurrentWebContents() {
            return n(this, void 0, void 0, function* () {
                let e = this.mapObj.get("currentWebContents");
                return void 0 === e && (this.mapObjIniting.get("currentWebContents") ? e = yield new Promise(e => n(this, void 0, void 0, function* () {
                    this.on("OnInitCurrentWebContents", t => {
                        e(t)
                    })
                })) : (this.mapObjIniting.set("currentWebContents", !0), e = yield r.getCurrentWebContents().__resolve(), this.mapObjIniting.set("currentWebContents", !1), this.emit("OnInitCurrentWebContents", e), this.listeners("OnInitCurrentWebContents").forEach(e => {
                    this.removeListener("OnInitCurrentWebContents", e)
                })), this.mapObj.set("currentWebContents", e)), e
            })
        }

        getCurrentWindow() {
            return n(this, void 0, void 0, function* () {
                let e = this.mapObj.get("currentWindow");
                return void 0 === e && (this.mapObjIniting.get("currentWindow") ? e = yield new Promise(e => n(this, void 0, void 0, function* () {
                    this.on("OnInitCurrentWindow", t => {
                        e(t)
                    })
                })) : (this.mapObjIniting.set("currentWindow", !0), e = yield r.getCurrentWindow().__resolve(), this.mapObjIniting.set("currentWindow", !1), this.emit("OnInitCurrentWindow", e), this.listeners("OnInitCurrentWindow").forEach(e => {
                    this.removeListener("OnInitCurrentWindow", e)
                })), this.mapObj.set("currentWindow", e)), e
            })
        }

        getCurrentObject(e) {
            return n(this, void 0, void 0, function* () {
                let t = this.mapObj.get(e);
                return a.isNullOrUndefined(t) && (this.mapObjIniting.get(e) ? t = yield new Promise(t => n(this, void 0, void 0, function* () {
                    this.on(e, e => {
                        t(e)
                    })
                })) : (this.mapObjIniting.set(e, !0), t = yield r.electron[e].__resolve(), this.mapObjIniting.set(e, !1), this.emit(e, t), this.listeners(e).forEach(t => {
                    this.removeListener(e, t)
                })), this.mapObj.set(e, t)), t
            })
        }
    }
}, function (e, t) {
    e.exports = vendor_09264ad0ec2472c8ac23
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), t.default = function (e) {
        return require(e)
    }
}, function (e, t, i) {
    "use strict";
    var n = i(71), o = i(105), r = Object.prototype.toString;

    function s(e) {
        return "[object Array]" === r.call(e)
    }

    function a(e) {
        return null !== e && "object" == typeof e
    }

    function l(e) {
        return "[object Function]" === r.call(e)
    }

    function c(e, t) {
        if (null !== e && void 0 !== e) if ("object" != typeof e && (e = [e]), s(e)) for (var i = 0, n = e.length; i < n; i++) t.call(null, e[i], i, e); else for (var o in e) Object.prototype.hasOwnProperty.call(e, o) && t.call(null, e[o], o, e)
    }

    e.exports = {
        isArray: s, isArrayBuffer: function (e) {
            return "[object ArrayBuffer]" === r.call(e)
        }, isBuffer: o, isFormData: function (e) {
            return "undefined" != typeof FormData && e instanceof FormData
        }, isArrayBufferView: function (e) {
            return "undefined" != typeof ArrayBuffer && ArrayBuffer.isView ? ArrayBuffer.isView(e) : e && e.buffer && e.buffer instanceof ArrayBuffer
        }, isString: function (e) {
            return "string" == typeof e
        }, isNumber: function (e) {
            return "number" == typeof e
        }, isObject: a, isUndefined: function (e) {
            return void 0 === e
        }, isDate: function (e) {
            return "[object Date]" === r.call(e)
        }, isFile: function (e) {
            return "[object File]" === r.call(e)
        }, isBlob: function (e) {
            return "[object Blob]" === r.call(e)
        }, isFunction: l, isStream: function (e) {
            return a(e) && l(e.pipe)
        }, isURLSearchParams: function (e) {
            return "undefined" != typeof URLSearchParams && e instanceof URLSearchParams
        }, isStandardBrowserEnv: function () {
            return ("undefined" == typeof navigator || "ReactNative" !== navigator.product) && "undefined" != typeof window && "undefined" != typeof document
        }, forEach: c, merge: function e() {
            var t = {};

            function i(i, n) {
                "object" == typeof t[n] && "object" == typeof i ? t[n] = e(t[n], i) : t[n] = i
            }

            for (var n = 0, o = arguments.length; n < o; n++) c(arguments[n], i);
            return t
        }, extend: function (e, t, i) {
            return c(t, function (t, o) {
                e[o] = i && "function" == typeof t ? n(t, i) : t
            }), e
        }, trim: function (e) {
            return e.replace(/^\s*/, "").replace(/\s*$/, "")
        }
    }
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(2), s = i(1), a = i(17), l = i(22), c = s.default.getLogger("Thunder.Util"),
        u = "Thunder Network\\Thunder7.9\\";

    function d(e) {
        let t = e;
        return 0 === e.indexOf('"') && e.lastIndexOf('"') === e.length - 1 ? t = e.substring(1, e.length - 1) : 0 === e.indexOf("'") && e.lastIndexOf("'") === e.length - 1 && (t = e.substring(1, e.length - 1)), t
    }

    !function (e) {
        function t() {
            let e = l.ThunderHelper.getSystemTempPath(), t = l.ThunderHelper.getLogicalDriveStrings(), i = 0;
            for (let n = 0; n < t.length; n++) {
                if (l.ThunderHelper.getDriveType(t[n]) === l.ThunderHelper.DriverType.DRIVE_FIXED) {
                    let o = l.ThunderHelper.getDriveInfo(t[n]);
                    i < o.freeBytes && t[n] !== e && (i = o.freeBytes, e = t[n])
                }
            }
            return e.substring(0, 1) + ":\\迅雷下载"
        }

        function s(e) {
            let t = (e.style.webkitTransform || getComputedStyle(e, "").getPropertyValue("-webkit-transform") || e.style.transform || getComputedStyle(e, "").getPropertyValue("transform")).match(/\-?[0-9]+\.?[0-9]*/g);
            return {x: parseInt(t && (t[12] || t[4]) || "0", 10), y: parseInt(t && (t[13] || t[5]) || "0", 10)}
        }

        e.formatSize = function (e, t) {
            0 === t || (t = t || 2);
            let i = "0B";
            if ("number" == typeof e && e > 0) {
                let n = ["B", "KB", "MB", "GB", "TB"], o = 0, r = e;
                for (; r >= 1e3 && !(o >= 4);) r /= 1024, o += 1;
                i = -1 === String(r).indexOf(".") ? r + n[o] : r.toFixed(t) + n[o]
            }
            return i
        }, e.formatSizeCustom = function (e, t = 2, i = 5) {
            let n = "0B";
            if ("number" == typeof e && e > 0) {
                let o = ["B", "KB", "MB", "GB", "TB"], r = 0, s = e;
                for (; s >= 1e3 && !(r >= 4);) s /= 1024, r += 1;
                if (-1 === String(s).indexOf(".")) n = s + o[r]; else {
                    let e = s.toFixed(t);
                    e.length <= i ? n = "KB" !== o[r] && "MB" !== o[r] || 1 === t ? e + o[r] : s.toFixed(1) + o[r] : ("." === (e = e.substr(0, i))[i - 1] && (e = e.substr(0, i - 1)), n = e + o[r])
                }
            }
            return n
        }, e.isDigital = function (e) {
            let t = !1;
            return /^\d+$/.test(e) && (t = !0), t
        }, e.isAlpha = function (e) {
            let t = !1;
            return /[A-Za-z]/.test(e) && (t = !0), t
        }, e.isUpperCase = function (e) {
            let t = !1;
            return /[A-Z]/.test(e) && (t = !0), t
        }, e.isLowerCase = function (e) {
            let t = !1;
            return /[a-z]/.test(e) && (t = !0), t
        }, e.isChinese = function (e) {
            let t = !1;
            return /[\u4E00-\u9FA5]/.test(e) && (t = !0), t
        }, e.replaceNonDigital = function (e) {
            return e.replace(/[^\d]/g, "")
        }, e.replaceNonAlpha = function (e) {
            return e.replace(/[^A-Za-z]/g, "")
        }, e.replaceNonWord = function (e) {
            return e.replace(/[^\W]/g, "")
        }, e.getDefaultDownloadDir = t, e.getMaxFreeDriver = function () {
            return t().substring(0, 1)
        }, e.deepCopy = function (e) {
            let t = JSON.stringify(e), i = null;
            try {
                i = JSON.parse(t)
            } catch (e) {
                c.warning(e)
            }
            return i
        }, e.swap = function (e, t, i) {
            do {
                if (t < 0 || t >= e.length) break;
                if (i < 0 || i >= e.length) break;
                if (t === i) break;
                e[t] = e.splice(i, 1, e[t])[0]
            } while (0);
            return e
        }, e.compareNocase = function (e, t) {
            let i = !1;
            do {
                if (void 0 === e && void 0 === t) {
                    i = !0;
                    break
                }
                if (void 0 === e || void 0 === t) break;
                if ("string" != typeof e || "string" != typeof t) break;
                i = e.toLowerCase() === t.toLowerCase()
            } while (0);
            return i
        }, e.parseCommandLine = function (e) {
            let t = 0, i = "", n = !1, o = [], r = e.length;
            for (let s = 0; s < r; s++) {
                let a = e[s];
                if ('"' !== a && "'" !== a || ("" === i ? (n = !0, i = a) : i === a && (n = !1, i = "")), " " !== a || n || s === r - 1) {
                    if (s === r - 1) {
                        let i = e.substring(t);
                        "" !== i.trim() && o.push(d(i))
                    }
                } else {
                    let i = e.substring(t, s);
                    "" !== i.trim() && o.push(d(i)), t = s + 1
                }
            }
            return o
        }, e.getThunderTempPath = function (e, t) {
            return n(this, void 0, void 0, function* () {
                const n = yield Promise.resolve().then(() => i(12));
                let o = r.join(n.tmpdir(), u);
                return t && (o = r.join(o, t)), void 0 !== e && e && (yield a.FileSystemAWNS.mkdirsAW(o)), o
            })
        }, e.setQueryString = function (e, t) {
            return Object.keys(t).forEach((i, n) => {
                e += 0 === n ? "?" : "&", e += `${i}=${t[i]}`
            }), e
        }, e.setQueryStringEx = function (e, t) {
            for (let i in t) e += -1 === e.indexOf("?") ? "?" : "&", e += `${i}=${t[i]}`;
            return e
        }, e.getQueryString = function (e, t) {
            return e && t && e.match(new RegExp(`(^${t}|[?|&]${t})=([^&#]+)`)) ? RegExp.$2 : ""
        }, e.isClipboardTextFormatAvailable = function () {
            let e = !1, t = o.clipboard.availableFormats();
            for (let i of t) if ("text/plain" === i) {
                e = !0;
                break
            }
            return e
        }, e.keywordsHighLight = function (e, t, i) {
            if (!e) return "";
            if (!t) return e;
            if (0 === e.length) return e;
            if (0 === t.length) return e;
            let n = /\\/, o = t.split(" ");
            if (0 === (o = o.filter(e => e.trim().length > 0)).length) return e;
            for (let t = 0; t < o.length; t++) if (o[t].search(n) > 0) return e;
            i = void 0 === i || null === i ? "#FF0000" : i;
            let r = "", s = ["\\[", "\\^", "\\*", "\\(", "\\)", "\\|", "\\?", "\\$", "\\.", "\\+"], a = "", l = "|";
            for (let e = 0; e < o.length; e++) {
                for (let t = 0; t < s.length; t++) {
                    let i = new RegExp(s[t], "g");
                    o[e] = o[e].replace(i, s[t])
                }
                e === o.length - 1 && (l = ""), a = a.concat(o[e], l)
            }
            let c = new RegExp(a, "gi");
            return r = e.replace(c, e => '<span style= "color:' + i + '">' + e + "</span>")
        }, e.isDef = function (e) {
            return void 0 !== e && null !== e
        }, e.isUndef = function (e) {
            return void 0 === e || null === e
        }, e.setStyle = function (e, t) {
            Object.entries(t).forEach(([t, i]) => {
                e.style[t] = i
            })
        }, e.setCSSProperties = function (e, t) {
            Object.entries(t).forEach(([t, i]) => {
                e.style.setProperty(t, i)
            })
        }, e.versionCompare = function (e, t) {
            let i = e.split("."), n = t.split("."), o = 0;
            for (let e = 0; e < i.length; e++) {
                if (Number(i[e]) - Number(n[e]) > 0) {
                    o = 1;
                    break
                }
                if (Number(i[e]) - Number(n[e]) < 0) {
                    o = -1;
                    break
                }
            }
            return o
        }, e.throttle = function (e, t) {
            let i, n = 0;
            return (...o) => {
                const r = Date.now();
                clearTimeout(i), r - n > t ? (e(...o), n = r) : i = setTimeout(() => {
                    e(...o), n = r
                }, t)
            }
        }, e.debounce = function (e, t) {
            let i = null;
            return (...n) => {
                i && clearTimeout(i), i = setTimeout(() => {
                    e(...n)
                }, t)
            }
        }, e.getElementFixed = function (e) {
            let t = e.offsetLeft, i = e.offsetTop, n = e.offsetParent;
            for (; null !== n;) {
                let e = s(n);
                t += n.offsetLeft + e.x, i += n.offsetTop + e.y, n = n.offsetParent
            }
            return {x: t, y: i}
        }, e.escapeHTML = function (e) {
            return e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;")
        }, e.unescapeHTML = function (e) {
            return e.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&").replace(/&quot;/g, '"').replace(/&apos;/g, "'")
        }, e.isValidPath = function (e) {
            let t = !1;
            do {
                let i = "", n = "";
                if (/^[a-zA-Z]:\\/.test(e)) i = e.slice(3); else {
                    if (0 !== e.indexOf("\\\\")) break;
                    {
                        let t = e.indexOf("\\", 2);
                        if (-1 === t || t === e.length - 1) break;
                        if ("" === (n = (i = e.slice(2)).substr(0, t - 2))) break
                    }
                }
                if (/[\*\"<>\?:\|]/i.test(i)) break;
                if (e.length > 256) break;
                if ("" === n) {
                    t = !0;
                    break
                }
                let o = n.indexOf(".ipv6-literal.net");
                -1 !== o ? (-1 !== (o = (n = n.substr(0, o)).indexOf("%")) && (n = n.substr(0, o)), n = n.replace(/\-/g, ":"), /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/.test(n) && (t = !0)) : /(?=(\b|\D))(((\d{1,2})|(1\d{1,2})|(2[0-4]\d)|(25[0-5]))\.){3}((\d{1,2})|(1\d{1,2})|(2[0-4]\d)|(25[0-5]))(?=(\b|\D))/.test(n) && (t = !0)
            } while (0);
            return t
        };
        let h = void 0;

        function p(e, t = "normal 12px sans-serif") {
            h || (h = document.createElement("canvas"));
            let i = h.getContext("2d");
            return i.font = t, i.measureText(e).width
        }

        function f(e, t, i = "normal 12px sans-serif", n = 1) {
            function o(e, t, n, r, s) {
                let a = -1;
                do {
                    if (e > t) {
                        a = t;
                        break
                    }
                    let l = Math.round((e + t) / 2), c = p(`${n.substr(0, l)}...${r}`, i);
                    if (s === c) {
                        a = l;
                        break
                    }
                    if (s > c) {
                        if (Math.round(s) === Math.round(c)) {
                            a = l;
                            break
                        }
                        a = o(l + 1, t, n, r, s)
                    } else if (c > s) {
                        if (Math.round(s) === Math.round(c)) {
                            a = l - 1;
                            break
                        }
                        a = o(e, l - 1, n, r, s)
                    }
                } while (0);
                return a
            }

            let s = e;
            do {
                if (!t) break;
                if (!e) break;
                let a = t.offsetWidth * n;
                if (a > p(e, i)) break;
                let l = r.extname(e);
                "" !== l && (l = l.substring(1));
                let c = e.substr(0, e.length - l.length - 1);
                if (!c) break;
                let u = o(0, c.length, c, l, a);
                if (-1 === u) break;
                s = `${c.substr(0, u - 2 * (n - 1))}...${l}`
            } while (0);
            return s
        }

        e.getTextWidth = p, e.getOmitName = f, e.getOmitNameMultiLine = function (e, t, i) {
            return f(e, t, "normal 12px microsoft yahei", 2)
        }, e.setTimeoutAw = function (e, t) {
            return new Promise((i, n) => {
                setTimeout(() => {
                    t && t(), i()
                }, e)
            })
        }
    }(t.ThunderUtil || (t.ThunderUtil = {}))
}, function (e, t) {
    e.exports = require("os")
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), t.assert = t.log = t.error = t.warn = t.info = t.trace = t.timeEnd = t.time = t.traceback = void 0;
    const n = i(2);
    let o, r = console;

    function s(e = 5) {
        let t = /at\s+(.*)\s+\((.*):(\d*):(\d*)\)/i, i = /at\s+()(.*):(\d*):(\d*)/i,
            o = (new Error).stack.split("\n").slice(e + 1);
        o.shift();
        let r = [];
        return o.forEach((e, o) => {
            let s = t.exec(e) || i.exec(e), a = {};
            s && 5 === s.length && (a.method = s[1], a.path = s[2], a.line = s[3], a.pos = s[4], a.file = n.basename(a.path), r.push(a))
        }), r
    }

    if (o = "renderer" === process.type ? "[Renderer] [async-remote]:" : "browser" === process.type ? "[Browser] [async-remote]:" : `[${process.type}] [async-remote]`, t.traceback = function (e = 5) {
        return s(e).map(e => e.method + "@(" + e.file + ")").join(" <= ")
    }, t.time = function (...e) {
        r.time(...e)
    }, t.timeEnd = function (...e) {
        r.timeEnd(...e)
    }, t.trace = function (...e) {
        let t = s(), i = "";
        t[0] && t[0].method && (i = i), r.trace(o, ...e)
    }, t.info = function (...e) {
        let t = s(), i = "anonymous";
        t[0] && t[0].method && (i = i), r.info(o, "[" + i + "]", e.join(","))
    }, t.warn = function (...e) {
        let t = s(), i = "";
        t[0] && t[0].method && (i = i), r.warn("<WARN>" + o, "[" + i + "]", e.join(","))
    }, t.error = function (...e) {
        let t = s(), i = "";
        t[0] && t[0].method && (i = i), r.error("<ERROR>" + o, "[" + i + "]", e.join(","))
    }, t.log = function (...e) {
        r.log(o, ...e)
    }, t.assert = function (e, t) {
        if (!e) throw new Error(t)
    }, !process.env.DEBUG_ASYNC_REMOTE) {
        let e = function () {
        };
        t.traceback = e, t.time = e, t.timeEnd = e, t.trace = e, t.info = e, t.warn = e, t.error = e, t.log = e, t.assert = e
    }
}, function (e, t) {
    e.exports = require("events")
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(2), r = i(9), s = i(1).default.getLogger("XLStat");
    let a = r.default(o.join(__rootDir, "../bin/ThunderHelper.node"));

    function l(e = "") {
        let t;
        if ("string" == typeof e) t = e; else if (c(e) && "object" == typeof e) {
            let i = [];
            for (let t in e) c(e[t]) && i.push(t + "=" + encodeURIComponent(e[t]));
            t = i.join(",")
        }
        return t
    }

    function c(e) {
        return void 0 !== e && null !== e
    }

    !function (e) {
        let t = null;

        function i() {
            return t || (t = a.xlstat4), t
        }

        function o(e, t = "", o = "", r = 0, a = 0, c = 0, u = 0, d = "", h = 0) {
            return n(this, void 0, void 0, function* () {
                let n = 0;
                do {
                    if (void 0 === e) {
                        n = 1;
                        break
                    }
                    let p = l(d);
                    n = "browser" === process.type ? yield new Promise(s => {
                        n = i().asyncTrackEvent(e, t, o, r, a, c, u, p, h, e => {
                            s(e)
                        })
                    }) : i().trackEvent(e, t, o, r, a, c, u, p, h), s.information(e, t, o, r, a, c, u, p, h)
                } while (0);
                return n
            })
        }

        function r(e, t = 0) {
            do {
                if (void 0 === e) break;
                "browser" !== process.type && i().trackClick(e, t)
            } while (0)
        }

        e.asyncTrackEvent = o, e.trackEvent = function (e, t = "", i = "", n = 0, r = 0, s = 0, a = 0, l = "", c = 0) {
            o(e, t, i, n, r, s, a, l, c).catch()
        }, e.trackClick = r, e.trackShow = function (e, t = 0) {
            r(e, t)
        }, e.setUserID = function (e = 0, t = 0) {
            "browser" !== process.type && i().setUserID(e, t)
        }, e.initParam = function (e) {
            return n(this, void 0, void 0, function* () {
                let t = -1;
                return t = "browser" === process.type ? yield new Promise(t => {
                    i().asyncInitParam(e, (e, i) => {
                        t(e ? i : -1)
                    })
                }) : yield new Promise(t => {
                    i().initParamRemote(e, e => {
                        t(e)
                    })
                })
            })
        }, e.asyncUninit = function (e) {
            return n(this, void 0, void 0, function* () {
                "browser" === process.type && (yield new Promise(t => {
                    i().asyncUninit(e, () => {
                        t()
                    })
                }))
            })
        }, e.uninit = function () {
            "browser" === process.type && i().waitFinish()
        }
    }(t.XLStatNS || (t.XLStatNS = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        let t, i, n, o, r, s, a, l, c, u, d, h, p, f, A, g, v, m, C, y, w, b;
        !function (e) {
            e[e.Unkown = 0] = "Unkown", e[e.Create = 1] = "Create", e[e.InvaldParam = 2] = "InvaldParam", e[e.InvaldLink = 3] = "InvaldLink", e[e.InvaldConfig = 4] = "InvaldConfig", e[e.Timeout = 5] = "Timeout", e[e.VerifyData = 6] = "VerifyData", e[e.Forbidden = 7] = "Forbidden", e[e.RangeDispatch = 8] = "RangeDispatch", e[e.FilePathOverRanging = 9] = "FilePathOverRanging", e[e.FileCreate = 201] = "FileCreate", e[e.FileWrite = 202] = "FileWrite", e[e.FileRead = 203] = "FileRead", e[e.FileRename = 204] = "FileRename", e[e.FileFull = 205] = "FileFull", e[e.FileOccupied = 211] = "FileOccupied", e[e.FileAccessDenied = 212] = "FileAccessDenied", e[e.BtUploadExist = 601] = "BtUploadExist", e[e.ForbinddenResource = 701] = "ForbinddenResource", e[e.ForbinddenAccount = 702] = "ForbinddenAccount", e[e.ForbinddenArea = 703] = "ForbinddenArea", e[e.ForbinddenCopyright = 704] = "ForbinddenCopyright", e[e.ForbinddenReaction = 705] = "ForbinddenReaction", e[e.ForbinddenPorn = 706] = "ForbinddenPorn", e[e.DownloadSDKCrash = 10001] = "DownloadSDKCrash", e[e.torrentFileNotExist = 10002] = "torrentFileNotExist"
        }(t = e.TaskError || (e.TaskError = {})), function (e) {
            e[e.Unkown = -1] = "Unkown", e[e.Success = 0] = "Success", e[e.QueryFailed = 1] = "QueryFailed", e[e.ServerError = 2] = "ServerError", e[e.ResourceNotFound = 3] = "ResourceNotFound", e[e.AuthorizingFailed = 4] = "AuthorizingFailed", e[e.ForbidByCopyright = 5] = "ForbidByCopyright", e[e.ForbidByPorNoGraphy = 6] = "ForbidByPorNoGraphy", e[e.ForbidByReactionary = 7] = "ForbidByReactionary", e[e.ForbidByOtherFilter = 8] = "ForbidByOtherFilter"
        }(i = e.DcdnStatusCode || (e.DcdnStatusCode = {})), function (e) {
            e[e.Begin = -1] = "Begin", e[e.Unkown = 0] = "Unkown", e[e.StandBy = 1] = "StandBy", e[e.PreDownloading = 2] = "PreDownloading", e[e.StartWaiting = 3] = "StartWaiting", e[e.StartPending = 4] = "StartPending", e[e.Started = 5] = "Started", e[e.StopPending = 6] = "StopPending", e[e.Stopped = 7] = "Stopped", e[e.Succeeded = 8] = "Succeeded", e[e.Failed = 9] = "Failed", e[e.Seeding = 10] = "Seeding", e[e.DestroyPending = 11] = "DestroyPending", e[e.End = 12] = "End"
        }(n = e.TaskStatus || (e.TaskStatus = {})), function (e) {
            e[e.Begin = -1] = "Begin", e[e.StandBy = 0] = "StandBy", e[e.Stopped = 1] = "Stopped", e[e.Started = 2] = "Started", e[e.Complete = 3] = "Complete", e[e.Forbidden = 4] = "Forbidden", e[e.Error = 5] = "Error", e[e.End = 6] = "End"
        }(o = e.BtFileStatus || (e.BtFileStatus = {})), function (e) {
            e[e.DispatchStrategyNone = 0] = "DispatchStrategyNone", e[e.DispatchStrategyOrigin = 1] = "DispatchStrategyOrigin", e[e.DispatchStrategyP2s = 2] = "DispatchStrategyP2s", e[e.DispatchStrategyP2p = 4] = "DispatchStrategyP2p", e[e.DispatchStrategyAll = -1] = "DispatchStrategyAll"
        }(r = e.DispatchStrategy || (e.DispatchStrategy = {})), function (e) {
            e[e.Unkown = 0] = "Unkown", e[e.P2sp = 1] = "P2sp", e[e.Bt = 2] = "Bt", e[e.Emule = 3] = "Emule", e[e.Group = 4] = "Group", e[e.Magnet = 5] = "Magnet"
        }(s = e.TaskType || (e.TaskType = {})), function (e) {
            e[e.Invalid = 0] = "Invalid", e[e.P2sp = 1] = "P2sp", e[e.Emule = 2] = "Emule"
        }(a = e.TaskCfgType || (e.TaskCfgType = {})), function (e) {
            e.Unkown = "Unkown", e.Downloading = "Downloading", e.Completed = "Completed", e.Recycle = "Recycle"
        }(l = e.CategroyViewID || (e.CategroyViewID = {})), function (e) {
            e[e.Unknow = 0] = "Unknow", e[e.TaskCreated = 1] = "TaskCreated", e[e.InsertToCategoryView = 2] = "InsertToCategoryView", e[e.RemoveFromCategoryView = 3] = "RemoveFromCategoryView", e[e.StatusChanged = 4] = "StatusChanged", e[e.DetailChanged = 5] = "DetailChanged", e[e.ChannelInfoChanged = 6] = "ChannelInfoChanged", e[e.DcdnStatusChanged = 7] = "DcdnStatusChanged", e[e.TaskDescriptionChanged = 8] = "TaskDescriptionChanged", e[e.TaskUserRead = 9] = "TaskUserRead", e[e.TaskRenamed = 10] = "TaskRenamed", e[e.TaskMovedEnd = 11] = "TaskMovedEnd", e[e.TaskMovingStateChange = 12] = "TaskMovingStateChange", e[e.BtSubFileDetailChanged = 13] = "BtSubFileDetailChanged", e[e.BtSubFileLoaded = 14] = "BtSubFileLoaded", e[e.BtSubFileForbidden = 15] = "BtSubFileForbidden", e[e.BtSubFileDcdnStatusChanged = 16] = "BtSubFileDcdnStatusChanged", e[e.TaskCategoryMovedEnd = 17] = "TaskCategoryMovedEnd", e[e.GroupTaskSubFileDetailChanged = 18] = "GroupTaskSubFileDetailChanged", e[e.TaskDestroying = 19] = "TaskDestroying", e[e.TaskDestroyed = 20] = "TaskDestroyed"
        }(c = e.TaskEventType || (e.TaskEventType = {})), function (e) {
            e[e.NumberStrart = 0] = "NumberStrart", e[e.TaskId = 1] = "TaskId", e[e.VirtualId = 2] = "VirtualId", e[e.SrcTotal = 3] = "SrcTotal", e[e.SrcUsing = 4] = "SrcUsing", e[e.FileSize = 5] = "FileSize", e[e.ReceivedSize = 6] = "ReceivedSize", e[e.DownloadSize = 7] = "DownloadSize", e[e.TotalDownloadSize = 8] = "TotalDownloadSize", e[e.CreateTime = 9] = "CreateTime", e[e.CompletionTime = 10] = "CompletionTime", e[e.DownloadingPeriod = 11] = "DownloadingPeriod", e[e.Progress = 12] = "Progress", e[e.RecycleTime = 13] = "RecycleTime", e[e.FileCreated = 14] = "FileCreated", e[e.Forbidden = 15] = "Forbidden", e[e.CategoryId = 16] = "CategoryId", e[e.UserRead = 17] = "UserRead", e[e.OpenOnComplete = 18] = "OpenOnComplete", e[e.GroupTaskId = 19] = "GroupTaskId", e[e.DownloadSubTask = 20] = "DownloadSubTask", e[e.NameType = 21] = "NameType", e[e.OwnerProduct = 22] = "OwnerProduct", e[e.FileIndex = 23] = "FileIndex", e[e.NameFixed = 24] = "NameFixed", e[e.ValidDownloadSize = 25] = "ValidDownloadSize", e[e.RealDownloadSize = 26] = "RealDownloadSize", e[e.ResourceLegal = 27] = "ResourceLegal", e[e.TaskType = 28] = "TaskType", e[e.ErrorCode = 29] = "ErrorCode", e[e.PlayPosition = 30] = "PlayPosition", e[e.Duration = 31] = "Duration", e[e.NumberEnd = 32] = "NumberEnd", e[e.BooleanStart = 4096] = "BooleanStart", e[e.Destroyed = 4097] = "Destroyed", e[e.Background = 4098] = "Background", e[e.Moving = 4099] = "Moving", e[e.BooleanEnd = 4100] = "BooleanEnd", e[e.StringStart = 8192] = "StringStart", e[e.TaskName = 8193] = "TaskName", e[e.SavePath = 8194] = "SavePath", e[e.RelativePath = 8195] = "RelativePath", e[e.TaskUrl = 8196] = "TaskUrl", e[e.RefUrl = 8197] = "RefUrl", e[e.Cid = 8198] = "Cid", e[e.Gcid = 8199] = "Gcid", e[e.Cookie = 8200] = "Cookie", e[e.ProductInfo = 8201] = "ProductInfo", e[e.Origin = 8202] = "Origin", e[e.Description = 8203] = "Description", e[e.UserData = 8204] = "UserData", e[e.OriginName = 8205] = "OriginName", e[e.HTTPContentType = 8206] = "HTTPContentType", e[e.CategoryViewId = 8207] = "CategoryViewId", e[e.YunTaskId = 8208] = "YunTaskId", e[e.StringEnd = 8209] = "StringEnd", e[e.ObjectStart = 12288] = "ObjectStart", e[e.ObjectEnd = 12289] = "ObjectEnd"
        }(u = e.TaskAttribute || (e.TaskAttribute = {})), function (e) {
            e[e.UnKnown = 0] = "UnKnown", e[e.SrcTotal = 1] = "SrcTotal", e[e.SrcUsing = 2] = "SrcUsing", e[e.FileSize = 4] = "FileSize", e[e.ReceivedSize = 8] = "ReceivedSize", e[e.DownloadSize = 16] = "DownloadSize", e[e.CompletionTime = 32] = "CompletionTime", e[e.DownloadingPeriod = 64] = "DownloadingPeriod", e[e.Progress = 128] = "Progress", e[e.RecycleTime = 256] = "RecycleTime", e[e.FileCreated = 512] = "FileCreated", e[e.Forbidden = 1024] = "Forbidden", e[e.UserRead = 2048] = "UserRead", e[e.OpenOnComplete = 4096] = "OpenOnComplete", e[e.DownloadSubTask = 8192] = "DownloadSubTask", e[e.TaskName = 16384] = "TaskName", e[e.SavePath = 32768] = "SavePath", e[e.Cid = 65536] = "Cid", e[e.Gcid = 131072] = "Gcid", e[e.UserData = 262144] = "UserData", e[e.CategoryViewId = 524288] = "CategoryViewId", e[e.ErrorCode = 1048576] = "ErrorCode", e[e.TaskSpeed = 2097152] = "TaskSpeed", e[e.ChannelInfo = 4194304] = "ChannelInfo", e[e.ValidDownloadSize = 8388608] = "ValidDownloadSize", e[e.OriginName = 16777216] = "OriginName", e[e.HTTPContentType = 33554432] = "HTTPContentType", e[e.PlayPosition = 67108864] = "PlayPosition", e[e.Duration = 134217728] = "Duration", e[e.YunTaskId = 268435456] = "YunTaskId"
        }(d = e.TaskDetailChangedFlags || (e.TaskDetailChangedFlags = {})), function (e) {
            e[e.UnKnown = 0] = "UnKnown"
        }(h = e.BtSubFileDetailChangedFlags || (e.BtSubFileDetailChangedFlags = {})), function (e) {
            e[e.UnKnown = 0] = "UnKnown"
        }(p = e.GroupTaskSubFileDetailChangedFlags || (e.GroupTaskSubFileDetailChangedFlags = {})), function (e) {
            e[e.NumberStrart = 0] = "NumberStrart", e[e.TaskId = 1] = "TaskId", e[e.FileStatus = 2] = "FileStatus", e[e.DownloadSize = 3] = "DownloadSize", e[e.FileSize = 4] = "FileSize", e[e.EnableDcdn = 5] = "EnableDcdn", e[e.ErrorCode = 6] = "ErrorCode", e[e.DcdnStatus = 7] = "DcdnStatus", e[e.RealIndex = 8] = "RealIndex", e[e.FileOffset = 9] = "FileOffset", e[e.Visible = 10] = "Visible", e[e.Download = 11] = "Download", e[e.UserRead = 12] = "UserRead", e[e.PlayPosition = 13] = "PlayPosition", e[e.Duration = 14] = "Duration", e[e.NumberEnd = 15] = "NumberEnd", e[e.StringStart = 4096] = "StringStart", e[e.FinalName = 4097] = "FinalName", e[e.RelativePath = 4098] = "RelativePath", e[e.FileName = 4099] = "FileName", e[e.FilePath = 4100] = "FilePath", e[e.Cid = 4101] = "Cid", e[e.Gcid = 4102] = "Gcid", e[e.StringEnd = 4103] = "StringEnd"
        }(f = e.BtFileAttribute || (e.BtFileAttribute = {})), function (e) {
            e[e.P2spUrl = 0] = "P2spUrl", e[e.BtInfoId = 1] = "BtInfoId", e[e.EmuleFileHash = 2] = "EmuleFileHash", e[e.MagnetUrl = 3] = "MagnetUrl", e[e.GroupTaskName = 4] = "GroupTaskName"
        }(A = e.KeyType || (e.KeyType = {})), function (e) {
            e[e.NameInclude = 1] = "NameInclude", e[e.BtDisplayNameInclude = 2] = "BtDisplayNameInclude"
        }(g = e.SearchKeyType || (e.SearchKeyType = {})), function (e) {
            e[e.ExtEqual = 1] = "ExtEqual", e[e.NameLikeAndExtEqual = 2] = "NameLikeAndExtEqual", e[e.TaskTypeEqual = 4] = "TaskTypeEqual"
        }(v = e.FilterKeyType || (e.FilterKeyType = {})), function (e) {
            e[e.All = 0] = "All", e[e.CommonForeground = 1] = "CommonForeground", e[e.CommonBackground = 2] = "CommonBackground", e[e.Temporary = 3] = "Temporary", e[e.PreDownload = 4] = "PreDownload", e[e.PrivateForeground = 5] = "PrivateForeground"
        }(m = e.KeyFilter || (e.KeyFilter = {})), function (e) {
            e[e.Unknown = -1] = "Unknown", e[e.LoadTaskBasic = 0] = "LoadTaskBasic", e[e.Create = 1] = "Create", e[e.Complete = 2] = "Complete", e[e.Recycle = 3] = "Recycle", e[e.Recover = 4] = "Recover", e[e.ReDownload = 5] = "ReDownload", e[e.MoveThoughCategory = 6] = "MoveThoughCategory"
        }(C = e.TaskInsertReason || (e.TaskInsertReason = {})), function (e) {
            e[e.Unknown = -1] = "Unknown", e[e.Manual = 0] = "Manual", e[e.PauseAll = 1] = "PauseAll", e[e.DeleteTask = 2] = "DeleteTask", e[e.TaskJammed = 3] = "TaskJammed", e[e.LowSpeed = 4] = "LowSpeed", e[e.MaxDownloadReduce = 5] = "MaxDownloadReduce", e[e.MoveTask = 6] = "MoveTask", e[e.SelectDownloadLists = 7] = "SelectDownloadLists", e[e.PrivateLoginOut = 8] = "PrivateLoginOut", e[e.FreeDownload = 9] = "FreeDownload", e[e.Exit = 10] = "Exit"
        }(y = e.TaskStopReason || (e.TaskStopReason = {})), function (e) {
            e[e.RESOURCE_FROM_MEMBER = 1] = "RESOURCE_FROM_MEMBER", e[e.RESOURCE_FROM_OFFLINE = 2] = "RESOURCE_FROM_OFFLINE", e[e.RESOURCE_FROM_CRYSTAL_LARGE = 4] = "RESOURCE_FROM_CRYSTAL_LARGE", e[e.RESOURCE_FROM_CRYSTAL_SMALL = 8] = "RESOURCE_FROM_CRYSTAL_SMALL", e[e.RESOURCE_FROM_DCDN = 16] = "RESOURCE_FROM_DCDN", e[e.RESOURCE_FROM_FREEDCDN = 32] = "RESOURCE_FROM_FREEDCDN"
        }(w = e.XLResourceFrom || (e.XLResourceFrom = {})), function (e) {
            e[e.XL_TASKDOWNLOAD_STRATEGY_NORMALDOWNLOAD = 0] = "XL_TASKDOWNLOAD_STRATEGY_NORMALDOWNLOAD", e[e.XL_TASKDOWNLOAD_STRATEGY_DOWNLOADINGPLAYING = 1] = "XL_TASKDOWNLOAD_STRATEGY_DOWNLOADINGPLAYING", e[e.XL_TASKDOWNLOAD_STRATEGY_ONLINEPLAYING = 2] = "XL_TASKDOWNLOAD_STRATEGY_ONLINEPLAYING"
        }(b = e.XLDownloadStrategy || (e.XLDownloadStrategy = {}))
    }(t.DownloadKernel || (t.DownloadKernel = {}))
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(19), r = i(2), s = i(6).promisify, a = i(1).default.getLogger("Thunder.base.fs-utilities");
    !function (e) {
        function t(e) {
            return n(this, void 0, void 0, function* () {
                let t = !1;
                if (void 0 !== e) {
                    const i = s(o.access);
                    try {
                        yield i(e), t = !0
                    } catch (e) {
                        a.information(e)
                    }
                }
                return t
            })
        }

        function l(e) {
            return n(this, void 0, void 0, function* () {
                let t = !1;
                if (void 0 !== e) {
                    const i = s(o.mkdir);
                    try {
                        yield i(e), t = !0
                    } catch (e) {
                        a.warning(e)
                    }
                }
                return t
            })
        }

        function c(e) {
            return n(this, void 0, void 0, function* () {
                let t = !1;
                if (void 0 !== e) {
                    const i = s(o.rmdir);
                    try {
                        yield i(e), t = !0
                    } catch (e) {
                        a.warning(e)
                    }
                }
                return t
            })
        }

        function u(e) {
            return n(this, void 0, void 0, function* () {
                let t = !1;
                if (void 0 !== e) {
                    const i = s(o.unlink);
                    try {
                        yield i(e), t = !0
                    } catch (e) {
                        a.warning(e)
                    }
                }
                return t
            })
        }

        function d(e) {
            return n(this, void 0, void 0, function* () {
                let t = null;
                if (void 0 !== e) {
                    const i = s(o.readdir);
                    try {
                        t = yield i(e)
                    } catch (e) {
                        a.warning(e)
                    }
                }
                return t
            })
        }

        function h(e) {
            return n(this, void 0, void 0, function* () {
                let t = null;
                if (void 0 !== e) {
                    const i = s(o.lstat);
                    try {
                        t = yield i(e)
                    } catch (e) {
                        a.warning(e)
                    }
                }
                return t
            })
        }

        function p(e, t) {
            return n(this, void 0, void 0, function* () {
                let i = !1;
                if (void 0 !== e && void 0 !== t) {
                    let n = r.join(e, t), o = yield h(n);
                    i = null !== o && o.isDirectory() ? yield f(n) : yield u(n)
                }
                return i
            })
        }

        function f(e) {
            return n(this, void 0, void 0, function* () {
                let i = !1;
                if (void 0 !== e) {
                    if (yield t(e)) {
                        i = !0;
                        let t = (yield d(e)) || [];
                        for (let n = 0; n < t.length; n++) i = (yield p(e, t[n])) && i;
                        (i || 0 === t.length) && (i = (yield c(e)) && i)
                    }
                }
                return i
            })
        }

        function A(e) {
            return n(this, void 0, void 0, function* () {
                let i = !1;
                return a.information("mkdirsAW", e), void 0 !== e && ((yield t(e)) ? i = !0 : r.dirname(e) === e ? i = !1 : (yield A(r.dirname(e))) && (i = yield l(e))), i
            })
        }

        function g(e, i) {
            return n(this, void 0, void 0, function* () {
                let n;
                if (e.toLowerCase() !== i.toLowerCase() && (yield t(e))) {
                    let t = o.createReadStream(e), r = o.createWriteStream(i);
                    n = new Promise(e => {
                        t.pipe(r).on("finish", () => {
                            e(!0)
                        })
                    })
                } else n = new Promise(e => {
                    e(!1)
                });
                return n
            })
        }

        e.readFileAW = function (e) {
            return n(this, void 0, void 0, function* () {
                let t = null;
                if (void 0 !== e) {
                    const i = s(o.readFile);
                    try {
                        t = yield i(e)
                    } catch (e) {
                        a.warning(e)
                    }
                }
                return t
            })
        }, e.writeFileAW = function (e, t) {
            return n(this, void 0, void 0, function* () {
                let i = !1;
                if (void 0 !== e && null !== t) {
                    const n = s(o.writeFile);
                    try {
                        yield n(e, t), i = !0
                    } catch (e) {
                        a.warning(e)
                    }
                }
                return i
            })
        }, e.existsAW = t, e.dirExistsAW = function (e) {
            return n(this, void 0, void 0, function* () {
                let i = !1;
                do {
                    if (!(i = yield t(e))) break;
                    let n = yield h(e);
                    if (!n) break;
                    i = n.isDirectory()
                } while (0);
                return i
            })
        }, e.mkdirAW = l, e.rmdirAW = c, e.unlinkAW = u, e.readdirAW = d, e.lstatAW = h, e.rmdirsAW = f, e.mkdirsAW = A, e.renameAW = function (e, t) {
            return n(this, void 0, void 0, function* () {
                if (void 0 !== e && void 0 !== t) {
                    const i = s(o.rename);
                    try {
                        yield i(e, t)
                    } catch (e) {
                        a.warning(e)
                    }
                }
            })
        }, e.copyFileAW = g, e.copyDirsAW = function e(i, o) {
            return n(this, void 0, void 0, function* () {
                let n = !1, s = yield h(i);
                if (s.isDirectory()) {
                    n = yield A(o);
                    let a = (yield d(i)) || [];
                    for (let l = 0; l < a.length; l++) {
                        let c = r.join(i, a[l]), u = r.join(o, a[l]);
                        (n = yield t(c)) && (n = (s = yield h(c)).isDirectory() ? yield e(c, u) : yield g(c, u))
                    }
                }
                return n
            })
        }, e.mkdtempAW = function () {
            return n(this, void 0, void 0, function* () {
                let e = !1;
                const t = s(o.mkdtemp), n = (yield Promise.resolve().then(() => i(12))).tmpdir();
                try {
                    e = yield t(`${n}${r.sep}`)
                } catch (e) {
                    a.warning(e)
                }
                return e
            })
        }, e.deleteEmptySubDirs = function (e, i) {
            return n(this, void 0, void 0, function* () {
                let n = !0;
                e = r.normalize(e), i = r.normalize(i), e.length > 3 && "\\" === e[e.length - 1] && (e = e.slice(0, e.length - 1)), i.length > 3 && "\\" === i[i.length - 1] && (i = i.slice(0, i.length - 1));
                do {
                    if (0 !== e.indexOf(i)) {
                        n = !1;
                        break
                    }
                    let o = e;
                    for (; o !== i;) {
                        if ((yield t(o)) && !(yield c(o))) {
                            n = !1;
                            break
                        }
                        o = r.dirname(o)
                    }
                } while (0);
                return n
            })
        }, e.getFileSize = function e(i) {
            return n(this, void 0, void 0, function* () {
                let n = 0;
                do {
                    if (!i) break;
                    if (!(yield t(i))) break;
                    let o = yield h(i);
                    if (o) if (o.isDirectory()) {
                        let t = yield d(i);
                        for (let o = 0; o < t.length; o++) n += (yield e(r.join(i, t[o])))
                    } else n = o.size
                } while (0);
                return n
            })
        }, e.isDirectoryEmptyAW = function (e, i = !0) {
            return n(this, void 0, void 0, function* () {
                let n = !0;
                do {
                    if (!e) {
                        n = !1;
                        break
                    }
                    if (!(yield t(e))) {
                        n = i;
                        break
                    }
                    let o = yield h(e);
                    if (!o) {
                        n = !1;
                        break
                    }
                    if (!o.isDirectory()) {
                        n = !1;
                        break
                    }
                    if ((yield d(e)).length > 0) {
                        n = !1;
                        break
                    }
                } while (0);
                return n
            })
        }
    }(t.FileSystemAWNS || (t.FileSystemAWNS = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        e.channelRMNewTaskReadyForSetTaskData = "RM_NEWTASK_READYRORSETTASKDATA", e.channelRMNewTaskSetTaskData = "RM_NEWTASK_SETTASKDATA", e.channelRMPreNewTaskSetTaskData = "RM_PRENEWTASK_SETTASKDATA", e.channelRMNewTaskCreateNewTask = "RM_NEWTASK_CREATENEWTASK", e.channelRMNewTaskClose = "RM_NEWTASK_CLOSE", e.channelRMPreNewTaskClose = "RM_PRENEWTASK_CLOSE", e.channelRMNewTaskSetBTInfo = "RM_NEWTASK_SETBTINFO", e.channelRMNewTaskDownloadTorrent = "RM_NEW_TASK_DOWNLOAD_TORRENT", e.channelRMNewTaskCreateBtTask = "RM_NEWTASK_CRATEBTTASK", e.channelRMNewTaskCancleMagnet = "RM_NEWTASK_CANCLE_MAGNET", e.channelRMImportTorrent = "RM_NEWTASK_IMPORT_TORRENT", e.channelRMGetConfigValueResolve = "RM_GET_CONFIG_VALUE_RESOLVE", e.channelRMGetConfigValueReject = "RM_GET_CONFIG_VALUE_REJECT", e.channelRMSetConfigValueReject = "RM_SET_CONFIG_VALUE_REJECT", e.channelMRTrayMenuClick = "MR_TRAY_MENU_CLICK", e.channelMRNewTaskMagnetTaskCreated = "MR_NEW_TASK_MAGNET_TASK_CREATED", e.channelMRNewTaskDownloadTorrentResult = "MR_NEW_TASK_DOWNLOAD_TORRENT_RESULT", e.channelMRNewTaskCreateNewTaskResult = "MR_NEWTASK_CREATENEWTASK_RESULT", e.channelMRNewTaskCreateBtTaskResult = "RM_NEWTASK_CRATEBTTASK_RESULT", e.channelMRGetConfigValue = "MR_GET_CONFIG_VALUE", e.channelMRSetConfigValue = "MR_SET_CONFIG_VALUE", e.channelRMCommitPlanTask = "RM_PLANTASK_COMMIT", e.channelRMPerformePlanTask = "RM_PLANTASK_PERFORME", e.channelRMProcessSend = "RM_RENDER_PROCESS_INFO", e.channelRMGetPrivateSpaceInfo = "RM_RENDER_GET_PRIVATE_SPACE_INFO", e.channelMRGetPrivateSpaceInfoResult = "MR_RENDER_GET_PRIVATE_SPACE_INFO_RESULT", e.channelRMFileCopy = "RM_FILE_COPY", e.channelRMFileMove = "RM_FILE_MOVE", e.channelMRFileCopyResult = "MR_FILE_COPY_RESULT", e.channelMRFileMoveResult = "MR_FILE_MOVE_RESULT", e.channelRMGetSutitleByCid = "RM_RENDER_GET_SUBTITLE_BY_CID", e.channelMRGetSutitleByCidResult = "MR_RENDER_GET_SUBTITLE_BY_CID_RESULT", e.channelRMGetSutitleByName = "RM_RENDER_GET_SUBTITLE_BY_NAME", e.channelMRGetSutitleByNameResult = "MR_RENDER_GET_SUBTITLE_BY_NAME_RESULT", e.channelRMDownloadSutitle = "RM_RENDER_DOWNLOAD_SUBTITLE", e.channelMRDownloadSutitleSuc = "MR_RENDER_DOWNLOAD_SUBTITLE_SUCCESS", e.channelMRDownloadSutitleFail = "MR_RENDER_DOWNLOAD_SUBTITLE_FAIL", e.channelRMGetDisplayName = "RM_RENDER_GET_SUBTITLE_DISPLAYNAME", e.channelMRGetDisplayNameResult = "MR_RENDER_GET_SUBTITLE_DISPLAYNAME_RESULT", e.channelMRBringWindowToTop = "MR_RENDER_BRING_WINDOW_TO_TOP", e.channelRMDownloadXmp = "RM_RENDER_DOWNLOAD_XMP", e.channelRMXmpFixBoxCreated = "RM_RENDER_XMPFIXBOX_CREATED", e.channelMRFixXmpSuc = "MR_RENDER_FIX_XMP_SUC", e.channelMRFixXMPFail = "MR_RENDER_FIX_XMP_FAIL", e.channelRMDownloadXmpEx = "RM_RENDER_DOWNLOAD_XMP_EX", e.channelRMSetPosition = "RM_SET_POSITION", e.channelRMSetFoucs = "RM_SET_FOCUS", e.channelRMCreateAddressDropWnd = "RM_CREATE_ADDRESS_DROPWND", e.channelRMRefreshAddressDropWnd = "RM_REFRESH_ADDRESS_DROPWND", e.channelRMSelectAddressDropItem = "RM_SELECT_ADDRESS_DROPITEM", e.channelRMCreateSearchWindow = "RM_CREATE_SEARCH_WINDOW", e.channelRMShowSearchWindow = "RM_SHOW_SEARCH_WINDOW", e.channelRMAddressKeyDown = "RM_ADDRESS_BAR_KEYDOWN", e.channelMRFWAddressKeyDown = "MR_ADDRESS_FW_BAR_KEYDOWN", e.channelMRFWSelectAddressDropItem = "MR_FW_SELECT_ADDRESS_DROPITEM", e.channelRMAddressDropWndKeyDown = "RM_ADDRESS_DROPWND_KEYDOWN", e.channelRMClickMouse = "RM_CLICK_MOUSE", e.channelMRSearchBarFocusChange = "MR_SEARCHBAR_FOCUS_CHANGE", e.channelMRFWAddressDropWndKeyDown = "MR_FW_ADDRESS_DROPWND_KEYDOWN", e.channelMRClickAddressDropItem = "MR_CLICK_ADDRESS_DROPITEM", e.channelMRMainWndMax = "MR_MAINWINDOW_MAX", e.channelMRMainWndMin = "MR_MAINWINDOW_MIN", e.channelMRMainWndRestore = "MR_MAINWINDOW_RESTORE", e.channelRMGetBrowserStartType = "RM_GET_BROWSER_START_TYPE", e.channelMRGetBrowserStartTypeResult = "MR_GET_BROWSER_START_TYPE_RESULT", e.channelRMExecute = "RM_SHELL_EXECUTE", e.channelMRExecuteResult = "MR_SHELL_EXECUTE_RESULT", e.channelMRAdTipsClick = "MR_AD_TIPS_CLICK", e.channelMRNotificationMsg = "MR_NOTIFICATION_MSG", e.channelRMSetProgressBar = "RM_SET_PROGRESS_BAR", e.channelRMRoundWindow = "RM_ROUND_WINDOW", e.channelMRShowOrHideWindow = "MR_SHOW_OR_HIDE_WINDOW", e.channelMRSuspensionWindowShowOrHide = "MR_SUSPENSION_WINDOW_SHOW_OR_HIDE", e.channelRMConfigInitFinished = "RM_CONFIG_INIT_FINISHED", e.channelRMConfigValueChanged = "RM_CONFIG_VALUE_CHANGED", e.channelRMIndividuationBrowserMsg = "RM_INDIVIDUATION_BROWSER_MSG", e.channelMRIndividuationBrowserMsg = "MR_INDIVIDUATION_BROWSER_MSG", e.channelRMSetEnvironmentVariable = "RM_SET_ENVIRONMENT_VARIABLE", e.channelMREmbedPlayerPos = "MR_EMBED_PLAYER_POSITION", e.channelRMUpdateLogEnviroment = "RM_UPDATE_LOG_ENVIRONMENT", e.channelMRUpdateLogEnviroment = "MR_UPDATE_LOG_ENVIRONMENT"
    }(t.ThunderChannelList || (t.ThunderChannelList = {}))
}, function (e, t) {
    e.exports = require("fs")
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), t.information = function (...e) {
    }, t.error = function (...e) {
    }, t.warning = function (...e) {
    }, t.critical = function (...e) {
    }, t.verbose = function (...e) {
    }, "development" === process.env.LOGGER_ENV && (t.information = function (...e) {
        console.log("information", e)
    }, t.error = function (...e) {
        console.log("error", e)
    }, t.warning = function (...e) {
        console.log("warning", e)
    }, t.critical = function (...e) {
        console.log("critical", e)
    }, t.verbose = function (...e) {
        console.log("verbose", e)
    })
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        e.msgIPCCommunicatorForward = "ipc_communicator_forward", e.msgIPCSendToMain = "ipc_send_to_main", e.msgIPCSendToRenderer = "ipc_send_to_renderer", e.msgIPCRendererConnect = "ipc_renderer_connect", e.msgIPCRendererDisconnect = "ipc_renderer_disconnect", e.msgNCCallNativeFunction = "nc_call_native_function", e.msgNCCheckNativeFunction = "nc_check_native_function", e.msgNCCallJsFunctionById = "nc_call_js_function_by_id", e.msgNCCallJsFunctionByName = "nc_call_js_function_by_name", e.msgNCNativeFireEvent = "nc_native_fire_event", e.msgNCNativeCallReady = "nc_native_call_ready"
    }(t.CommonIPCMessage || (t.CommonIPCMessage = {}))
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(2), r = i(23), s = i(12), a = i(16), l = i(9).default(o.join(__rootDir, "../bin/ThunderHelper.node"));
    !function (e) {
        let t, i;

        function o(e) {
            let t = e;
            return /^[a-zA-Z]:\\/.test(e) ? t = e.slice(0, 3) : e && "\\" !== e[e.length - 1] && (t = e + "\\"), t
        }

        !function (e) {
            e[e.DRIVE_UNKNOWN = 0] = "DRIVE_UNKNOWN", e[e.DRIVE_NO_ROOT_DIR = 1] = "DRIVE_NO_ROOT_DIR", e[e.DRIVE_REMOVABLE = 2] = "DRIVE_REMOVABLE", e[e.DRIVE_FIXED = 3] = "DRIVE_FIXED", e[e.DRIVE_REMOTE = 4] = "DRIVE_REMOTE", e[e.DRIVE_CDROM = 5] = "DRIVE_CDROM", e[e.DRIVE_RAMDISK = 6] = "DRIVE_RAMDISK"
        }(t = e.DriverType || (e.DriverType = {})), function (e) {
            e[e.Unspecified = 0] = "Unspecified", e[e.HDD = 3] = "HDD", e[e.SSD = 4] = "SSD", e[e.SCM = 5] = "SCM"
        }(i = e.MediaType || (e.MediaType = {})), e.getDriveType = function (e) {
            return e = o(e), l.getDriveType(e)
        }, e.getDriveInfo = function (e) {
            return e = o(e), l.getDriveInfo(e)
        }, e.getFreePartitionSpace = function (e) {
            return e = o(e), l.getFreePartitionSpace(e)
        }, e.getLogicalDriveStrings = function () {
            return l.getLogicalDriveStrings()
        }, e.getPartitionSpace = function (e) {
            return e = o(e), l.getPartitionSpace(e)
        }, e.getSystemTempPath = function () {
            return l.getSystemTempPath()
        }, e.getTaskTypeFromUrl = function (e) {
            let t = l.getTaskTypeFromUrl(e);
            if (t === a.DownloadKernel.TaskType.Unkown && function (e) {
                e = e.toLowerCase();
                let t = !1;
                do {
                    if ("http://" === e.substr(0, "http://".length)) {
                        t = !0;
                        break
                    }
                    if ("https://" === e.substr(0, "https://".length)) {
                        t = !0;
                        break
                    }
                    if ("ftp://" === e.substr(0, "ftp://".length)) {
                        t = !0;
                        break
                    }
                } while (0);
                return t
            }(e)) {
                let i = /:\/\/\[(.+?)\].*/.exec(e);
                i || (i = /.+?:\/\/.*?\[(.+?)\].*/.exec(e)), i && i[1] && r.isIPv6(i[1]) && (t = a.DownloadKernel.TaskType.P2sp)
            }
            return t
        }, e.extractIcon = function (e, t) {
            return l.extractIcon(e, t)
        }, e.isWindow7 = function () {
            return 1 === l.isWin7()
        }, e.isWindow8OrLater = function () {
            let e = !1;
            do {
                let t = s.release();
                if (!t) break;
                let i = t.indexOf(".", 0);
                if (i < 0) break;
                let n = t.substring(0, i);
                if (!n) break;
                let o = parseInt(n, 10);
                o && o >= 8 && (e = !0)
            } while (0);
            return e
        }, e.isWindows10 = function () {
            let e = !1;
            do {
                let t = s.release();
                if (!t) break;
                if (0 === t.indexOf("10.0.")) {
                    e = !0;
                    break
                }
            } while (0);
            return e
        }, e.compareStr = function (e, t) {
            return l.compareStr(e, t)
        }, e.getTickCount = function () {
            return l.getTickCount()
        }, e.setScreenSaveActive = function (e) {
            return l.setScreenSaveActive(e)
        }, e.isSparseDriver = function (e) {
            return e = o(e), l.isSparseDriver(e)
        }, e.getAppList = function () {
            return n(this, void 0, void 0, function* () {
                return new Promise(e => {
                    l.getAppList(t => {
                        e(t)
                    })
                })
            })
        }, e.isSSD = function () {
            return n(this, void 0, void 0, function* () {
                return new Promise(e => {
                    l.isSSD((t, i) => {
                        e(i)
                    })
                })
            })
        }, e.getMemoryInfo = function () {
            return n(this, void 0, void 0, function* () {
                return new Promise(e => {
                    l.getMemoryInfo((t, i) => {
                        e({totalPhy: t, totalVir: i})
                    })
                })
            })
        }, e.getHardDiskSpaceList = function () {
            return n(this, void 0, void 0, function* () {
                return new Promise(e => {
                    l.getHardDiskSpaceList(t => {
                        e(t)
                    })
                })
            })
        }, e.getCpuList = function () {
            return n(this, void 0, void 0, function* () {
                return new Promise(e => {
                    l.getCpuList(t => {
                        e(t)
                    })
                })
            })
        }, e.getFixedDriveMediaType = function (e) {
            return n(this, void 0, void 0, function* () {
                return new Promise(t => {
                    e.length > 1 && (e = e.slice(0, 1)), l.getDriveMediaType(e.toUpperCase(), (e, i) => {
                        t(i)
                    })
                })
            })
        }, e.sleep = function (e) {
            return n(this, void 0, void 0, function* () {
                yield new Promise((t, i) => {
                    setTimeout(t, e)
                })
            })
        }
    }(t.ThunderHelper || (t.ThunderHelper = {}))
}, function (e, t) {
    e.exports = require("net")
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(12), o = i(2);
    t.getDefaultPrex = function () {
        return o.basename(process.execPath, ".exe")
    }, t.getSockPath = function (e) {
        const t = n.tmpdir();
        let i = e;
        e || (i = o.basename(process.execPath, ".exe"));
        let r = o.join(t, `${i}-xunlei-node-net-ipc-{FD196984-2591-4588-AA6F-5C8AC1266290}.sock`);
        return "win32" === process.platform && (r = "\\\\.\\pipe\\" + (r = (r = r.replace(/^\//, "")).replace(/\//g, "-"))), r
    }, t.serverContextName = "xunlei-node-net-ipc-server-{46105371-DE78-4442-B59F-FDA1D6D7D430}", t.mainProcessContext = "main-process", t.mainRendererContext = "main-renderer", t.isObjectEmpty = function (e) {
        let t = !0;
        do {
            if (!e) break;
            if (0 === Object.keys(e).length) break;
            t = !1
        } while (0);
        return t
    }
}, function (e, t, i) {
    "use strict";
    var n = i(10), o = i(72), r = i(74), s = i(56), a = i(62), l = i(75).http, c = i(75).https, u = i(35), d = i(63),
        h = i(116), p = i(61), f = i(73);
    e.exports = function (e) {
        return new Promise(function (t, i) {
            var A, g = e.data, v = e.headers;
            if (v["User-Agent"] || v["user-agent"] || (v["User-Agent"] = "axios/" + h.version), g && !n.isStream(g)) {
                if (Buffer.isBuffer(g)) ; else if (n.isArrayBuffer(g)) g = new Buffer(new Uint8Array(g)); else {
                    if (!n.isString(g)) return i(p("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream", e));
                    g = new Buffer(g, "utf-8")
                }
                v["Content-Length"] = g.length
            }
            var m = void 0;
            e.auth && (m = (e.auth.username || "") + ":" + (e.auth.password || ""));
            var C = u.parse(e.url), y = C.protocol || "http:";
            if (!m && C.auth) {
                var w = C.auth.split(":");
                m = (w[0] || "") + ":" + (w[1] || "")
            }
            m && delete v.Authorization;
            var b = "https:" === y, I = b ? e.httpsAgent : e.httpAgent, E = {
                path: r(C.path, e.params, e.paramsSerializer).replace(/^\?/, ""),
                method: e.method,
                headers: v,
                agent: I,
                auth: m
            };
            e.socketPath ? E.socketPath = e.socketPath : (E.hostname = C.hostname, E.port = C.port);
            var x, k = e.proxy;
            if (!k && !1 !== k) {
                var S = y.slice(0, -1) + "_proxy", D = process.env[S] || process.env[S.toUpperCase()];
                if (D) {
                    var B = u.parse(D);
                    if (k = {host: B.hostname, port: B.port}, B.auth) {
                        var P = B.auth.split(":");
                        k.auth = {username: P[0], password: P[1]}
                    }
                }
            }
            if (k && (E.hostname = k.host, E.host = k.host, E.headers.host = C.hostname + (C.port ? ":" + C.port : ""), E.port = k.port, E.path = y + "//" + C.hostname + (C.port ? ":" + C.port : "") + E.path, k.auth)) {
                var M = new Buffer(k.auth.username + ":" + k.auth.password, "utf8").toString("base64");
                E.headers["Proxy-Authorization"] = "Basic " + M
            }
            e.transport ? x = e.transport : 0 === e.maxRedirects ? x = b ? a : s : (e.maxRedirects && (E.maxRedirects = e.maxRedirects), x = b ? c : l), e.maxContentLength && e.maxContentLength > -1 && (E.maxBodyLength = e.maxContentLength);
            var R = x.request(E, function (n) {
                if (!R.aborted) {
                    clearTimeout(A), A = null;
                    var r = n;
                    switch (n.headers["content-encoding"]) {
                        case"gzip":
                        case"compress":
                        case"deflate":
                            r = r.pipe(d.createUnzip()), delete n.headers["content-encoding"]
                    }
                    var s = n.req || R, a = {
                        status: n.statusCode,
                        statusText: n.statusMessage,
                        headers: n.headers,
                        config: e,
                        request: s
                    };
                    if ("stream" === e.responseType) a.data = r, o(t, i, a); else {
                        var l = [];
                        r.on("data", function (t) {
                            l.push(t), e.maxContentLength > -1 && Buffer.concat(l).length > e.maxContentLength && i(p("maxContentLength size of " + e.maxContentLength + " exceeded", e, null, s))
                        }), r.on("error", function (t) {
                            R.aborted || i(f(t, e, null, s))
                        }), r.on("end", function () {
                            var n = Buffer.concat(l);
                            "arraybuffer" !== e.responseType && (n = n.toString("utf8")), a.data = n, o(t, i, a)
                        })
                    }
                }
            });
            R.on("error", function (t) {
                R.aborted || i(f(t, e, null, R))
            }), e.timeout && !A && (A = setTimeout(function () {
                R.abort(), i(p("timeout of " + e.timeout + "ms exceeded", e, "ECONNABORTED", R))
            }, e.timeout)), e.cancelToken && e.cancelToken.promise.then(function (e) {
                R.aborted || (R.abort(), i(e))
            }), n.isStream(g) ? g.pipe(R) : R.end(g)
        })
    }
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), t.information = ((...e) => {
    }), t.error = ((...e) => {
    }), t.warning = ((...e) => {
    }), t.critical = ((...e) => {
    }), t.verbose = ((...e) => {
    })
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(2), o = i(9).default(n.join(__rootDir, "../bin/ThunderHelper.node"));
    !function (e) {
        function t() {
            let e = !0;
            {
                0;
                let t = n.resolve("C:\\ETW_LOG\\log.ini");
                e = "1" === o.readINI(t, "Log", "enable")
            }
            return e
        }

        e.isDevToolsEnable = function () {
            return t()
        }, e.isLogEnable = t, e.getLogOutput = function () {
            let e = process.env.TL_OUTPUT;
            do {
                if (e && "" !== e) break;
                let t = n.resolve("C:\\ETW_LOG\\log.ini");
                e = o.readINI(t, "Log", "output")
            } while (0);
            return e
        }
    }(t.DevEnvHelperNS || (t.DevEnvHelperNS = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        let t;
        !function (e) {
            e[e.OK = 0] = "OK", e[e.Cancel = 1] = "Cancel", e[e.Close = 2] = "Close", e[e.Unknow = 3] = "Unknow"
        }(t = e.Action || (e.Action = {}))
    }(t.MessageBoxNS || (t.MessageBoxNS = {}))
}, function (e, t, i) {
    e.exports = i(8)(17)
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5), r = i(11), s = i(81);
    let a = class extends o.Vue {
        constructor() {
            super(...arguments), this.removeDraggable = null
        }

        destroyed() {
            this.removeDraggable()
        }
    };
    a = n([o.Component], a), t.DraggableMixin = a;
    let l = class extends o.Vue {
        constructor() {
            super(...arguments), this.windowWidth = 0, this.windowHeight = 0, this.resizeToFitContent = s.ThunderWindowNS.resizeToFitContent, this.fitWindowPosInParent = s.ThunderWindowNS.fitWindowPosInParent
        }

        get relativeToParent() {
            return !r.ThunderUtil.isDef(this.options.relativeToParent) || this.options.relativeToParent
        }

        mounted() {
            0 === this.windowWidth && (this.windowWidth = this.options.windowWidth || 0), 0 === this.windowHeight && (this.windowHeight = this.options.windowHeight || 0), this.relativeToParent ? this.resizeToFitContent(this.windowWidth, this.windowHeight, this.fitWindowPosInParent).catch() : this.resizeToFitContent(this.windowWidth, this.windowHeight).catch()
        }
    };
    n([o.Prop()], l.prototype, "options", void 0), l = n([o.Component], l), t.PositionMixin = l
}, function (e, t, i) {
    "use strict";
    var n;
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        let t, i;
        !function (e) {
            e.require = "AR_BROWSER_REQUIRE", e.builtIn = "AR_BROWSER_GET_BUILTIN", e.global = "AR_BROWSER_GET_GLOBAL", e.functionCall = "AR_BROWSER_FUNCTION_CALL", e.construct = "AR_BROWSER_CONSTRUCTOR", e.memberConstruct = "AR_BROWSER_MEMBER_CONSTRUCTOR", e.memberCall = "AR_BROWSER_MEMBER_CALL", e.memberSet = "AR_BROWSER_MEMBER_SET", e.memberGet = "AR_BROWSER_MEMBER_GET", e.currentWindow = "AR_BROWSER_CURRENT_WINDOW", e.currentWebContents = "AR_BROWSER_CURRENT_WEB_CONTENTS", e.clientWebContents = "AR_BROWSER_CLIENT_WEB_CONTENTS", e.webContents = "AR_BROWSER_WEB_CONTENTS", e.sync = "AR_BROWSER_SYNC", e.contextRelease = "AR_BROWSER_CONTEXT_RELEASE"
        }(t = e.browser || (e.browser = {})), function (e) {
            e.requireReturn = "AR_RENDERER_REQUIRE_RETURN", e.getBuiltInReturn = "AR_RENDERER_BUILTIN_RETURN", e.getGlobalReturn = "AR_RENDERER_GLOBAL_RETURN", e.functionCallReturn = "AR_RENDERER_FUNCTION_CALL_RETURN", e.memberConstructReturn = "AR_RENDERER_MEMBER_CONSTRUCTOR_RETURN", e.constructReturn = "AR_RENDERER_CONSTRUCTOR_RETURN", e.memberCallReturn = "AR_RENDERER_MEMBER_CALL_RETURN", e.memberSetReturn = "AR_RENDERER_MEMBER_SET_RETURN", e.memberGetReturn = "AR_RENDERER_MEMBER_GET_RETURN", e.currentWindowReturn = "AR_BROWSER_CURRENT_WINDOW_RETURN", e.currentWebContentsReturn = "AR_RENDERER_CURRENT_WEB_CONTENTS_RETURN", e.clientWebContentsReturn = "AR_RENDERER_CLIENT_WEB_CONTENTS_RETURN", e.webContentsReturn = "AR_RENDERER_WEB_CONTENTS_RETURN", e.syncReturn = "AR_RENDERER_SYNC_RETURN", e.callback = "AR_RENDERER_CALLBACK"
        }(i = e.renderer || (e.renderer = {}))
    }(n || (n = {})), t.default = n
}, function (e, t, i) {
    "use strict";
    var n;
    !function (e) {
        e.getRemoteObjectName = function (e) {
            let t = typeof e;
            if ("function" === t) t = e.name; else if ("object" === t) {
                let t = e.name;
                if ("string" != typeof t) {
                    let i = e.constructor;
                    t = i ? i.name : Object.toString.call(e)
                }
            }
            return t
        }, e.isPromise = function (e) {
            return e && e.then && e.then instanceof Function && e.constructor && e.constructor.reject && e.constructor.reject instanceof Function && e.constructor.resolve && e.constructor.resolve instanceof Function
        }
    }(n || (n = {})), e.exports = n
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(3), o = i(6), r = i(20), s = i(21);
    !function (e) {
        e.mainProcessContext = "main-process", e.mainRendererContext = "main-renderer", e.mainPageWebviewRendererContext = "main-page-webview-renderer", e.newTaskRendererContext = "new-task-renderer", e.preNewTaskRendererContext = "pre-new-task-renderer", e.loginRendererContext = "login-renderer";

        class t {
            constructor() {
                this.isConnected = !1, this.isOnIPCEvent = !1, this.rendererInfos = [], this.listeners = new Map, t.intervalIPCModuleMsgs = [s.CommonIPCMessage.msgIPCRendererConnect, s.CommonIPCMessage.msgIPCRendererDisconnect]
            }

            onMessage(e, t) {
                do {
                    if (!o.isString(e) || 0 === e.length) {
                        r.error("msgName is null");
                        break
                    }
                    if (o.isNullOrUndefined(t)) {
                        r.error("listener is null");
                        break
                    }
                    this.listeners.has(e) ? this.listeners.get(e).push(t) : this.listeners.set(e, [t])
                } while (0)
            }

            getCommunicatorInfo() {
                return this.currInfo
            }

            getAllRenderer() {
                return this.rendererInfos
            }

            getCommunicatorInfoById(e) {
                for (let t of this.rendererInfos) if (t.id === e) return t;
                return null
            }

            getCommunicatorInfoByContext(e) {
                for (let t of this.rendererInfos) if (t.context === e) return t;
                return null
            }

            startListenIPCMessage(e) {
                this.isOnIPCEvent || (this.isOnIPCEvent = !0, e && this.ListenSendToMainMsg(), this.ListenSendToRendererMsg(e))
            }

            ListenSendToMainMsg() {
                n.ipcMain.on(s.CommonIPCMessage.msgIPCSendToMain, (e, t) => {
                    let i = void 0;
                    do {
                        if (o.isNullOrUndefined(t)) {
                            r.error("msgInfo is empty");
                            break
                        }
                        if (!this.isConnected) {
                            r.warning("hasnot been connected yet");
                            break
                        }
                        let n = t.msg.name;
                        if (this.isIPCModuleIntervalMsg(n)) {
                            r.information(`IPC module interval msg : ${n}`);
                            let o = this.handleIPCModuleIntervalMsg(e.sender, t);
                            if (i = o[1], !o[0]) break;
                            r.information("need to dispatch msg:" + n)
                        }
                        o.isNullOrUndefined(i) ? i = this.NotifyListener(t) : this.NotifyListener(t)
                    } while (0);
                    o.isNullOrUndefined(i) || (e.returnValue = i), t = null
                })
            }

            ListenSendToRendererMsg(e) {
                (e ? n.ipcMain : n.ipcRenderer).on(s.CommonIPCMessage.msgIPCSendToRenderer, (t, i) => {
                    let n = void 0;
                    do {
                        if (o.isNullOrUndefined(i)) {
                            r.error("msgInfo is empty");
                            break
                        }
                        if (!this.isConnected) {
                            r.warning("hasnot been connected yet");
                            break
                        }
                        let s = i.msg.name;
                        if (this.isIPCModuleIntervalMsg(s)) {
                            r.information(`IPC module interval msg : ${s}`);
                            let e = this.handleIPCModuleIntervalMsg(t.sender, i);
                            if (n = e[1], !e[0]) break;
                            r.information("need to dispatch msg:" + s)
                        }
                        e ? (r.information("is main, handle forward msg"), this.handleForwardRendererToRendererMsg(i)) : (r.information("is renderer, handle business msg"), o.isNullOrUndefined(n) ? n = this.NotifyListener(i) : this.NotifyListener(i))
                    } while (0);
                    o.isNullOrUndefined(n) || (t.returnValue = n), i = null
                })
            }

            isIPCModuleIntervalMsg(e) {
                for (let i of t.intervalIPCModuleMsgs) if (e === i) return !0;
                return !1
            }

            handleIPCModuleIntervalMsg(e, t) {
                let i = [!1, void 0];
                do {
                    let n = t.msg.name;
                    if (n === s.CommonIPCMessage.msgIPCRendererConnect) {
                        i = [!0, this.handleRendererConnectMsg(e, t)];
                        break
                    }
                    if (n === s.CommonIPCMessage.msgIPCRendererDisconnect) {
                        i = [!0, this.handleRendererDisconnectMsg(e, t)];
                        break
                    }
                } while (0);
                return i
            }

            handleRendererConnectMsg(e, t) {
                r.verbose(e), r.verbose(t)
            }

            handleRendererDisconnectMsg(e, t) {
                r.verbose(e), r.verbose(t)
            }

            handleForwardRendererToRendererMsg(e) {
                this.sendForwardRendererToRendererMsg(e)
            }

            sendForwardRendererToRendererMsg(e) {
                r.verbose(e)
            }

            NotifyListener(e) {
                let t = void 0, i = e.msg.name;
                if (this.listeners.has(i)) {
                    let n = this.listeners.get(i), o = !0;
                    for (let i of n) o ? (o = !1, t = i(e)) : i(e)
                }
                return t
            }
        }

        e.Communicator = t
    }(t.CommonIPCBase || (t.CommonIPCBase = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(3), o = i(6), r = i(20), s = i(21), a = i(33);
    !function (e) {
        class t extends a.CommonIPCBase.Communicator {
            constructor() {
                super()
            }

            initialize(e) {
                this.currInfo = {id: void 0, context: e, isMainCommunicator: !1}
            }

            connect() {
                this.isConnected ? r.warning("has been connected") : (this.sendConnectMsgToMain(), this.isConnected = !0, this.startListenIPCMessage(!1))
            }

            disconnect() {
                this.isConnected ? (this.isConnected = !1, this.sendDisconnectMsgToMain()) : r.warning("hasnot been connected yet")
            }

            sendMessageToMain(e) {
                this.sendIPCMsgToMain(e)
            }

            sendMessageToMainSync(e) {
                return this.sendIPCMsgToMain(e, !0)
            }

            sendMessageToRenderer(e, t) {
                this.sendIPCMsgToRenderer(e, t)
            }

            handleRendererConnectMsg(e, t) {
                do {
                    if (o.isNullOrUndefined(t)) {
                        r.error("msgInfo is null");
                        break
                    }
                    let e = t.msg.args[0];
                    if (o.isNullOrUndefined(e)) {
                        r.error("connectRendererInfo is null");
                        break
                    }
                    r.information(`Renderer: new renderer will connect, id = ${e.id}, context = ${e.context}`), this.rendererInfos.push(e)
                } while (0)
            }

            handleRendererDisconnectMsg(e, t) {
                do {
                    if (o.isNullOrUndefined(t)) {
                        r.error("msgInfo is null");
                        break
                    }
                    let e = t.msg.args[0];
                    if (o.isNullOrUndefined(e)) {
                        r.error("disconnectRendererInfo is null");
                        break
                    }
                    r.information(`renderer will disconnect, id = ${e.id}, context = ${e.context}`);
                    for (let t = 0; t < this.rendererInfos.length; ++t) if (this.rendererInfos[t] === e) {
                        this.rendererInfos.splice(t, 1);
                        break
                    }
                } while (0)
            }

            sendConnectMsgToMain() {
                let e = this.sendMessageToMainSync({name: s.CommonIPCMessage.msgIPCRendererConnect, args: []});
                this.currInfo.id = e[0], this.rendererInfos = e[1]
            }

            sendDisconnectMsgToMain() {
                this.sendMessageToMain({name: s.CommonIPCMessage.msgIPCRendererDisconnect, args: []})
            }

            sendIPCMsgToMain(e, t = !1) {
                let i = void 0;
                do {
                    if (o.isNullOrUndefined(e)) {
                        r.error("msg is null");
                        break
                    }
                    i = (t ? n.ipcRenderer.sendSync : n.ipcRenderer.send)(s.CommonIPCMessage.msgIPCSendToMain, {
                        msg: e,
                        senderInfo: this.currInfo
                    })
                } while (0);
                return i
            }

            sendIPCMsgToRenderer(e, t) {
                do {
                    if (o.isNullOrUndefined(e)) {
                        r.error("rendererId is null");
                        break
                    }
                    if (o.isNullOrUndefined(t)) {
                        r.error("msg is null");
                        break
                    }
                    let i = [e].concat(t.args);
                    t.args = i, n.ipcRenderer.send(s.CommonIPCMessage.msgIPCSendToRenderer, {
                        msg: t,
                        senderInfo: this.currInfo
                    })
                } while (0)
            }
        }

        e.RendererCommunicator = t, e.rendererCommunicator = new t
    }(t.CommonIPCRenderer || (t.CommonIPCRenderer = {}))
}, function (e, t) {
    e.exports = require("url")
}, function (e, t) {
    e.exports = require("crypto")
}, function (e, t, i) {
    e.exports = i(8)(45)
}, function (e, t, i) {
    e.exports = i(104)
}, function (e, t, i) {
    "use strict";
    const n = i(13);
    if ("renderer" === process.type) {
        if (n.info("client running"), !global.__xdasAsyncRemoteExports) {
            let e = {};
            global.__xdasAsyncRemoteExports = e;
            let t = i(49);
            e.require = t.remoteRequire, e.getCurrentWebContents = t.getCurrentWebContents, e.getCurrentWindow = t.getCurrentWindow, e.Interest = t.Interest, e.global = new Proxy({}, {get: (e, i, n) => t.getGlobal(i)}), e.electron = new Proxy({}, {get: (e, i, n) => t.getBuiltin(i)}), Object.defineProperty(e, "currentWindow", {get: () => t.getCurrentWindow()}), Object.defineProperty(e, "currentWebContents", {get: () => t.getCurrentWebContents()}), Object.defineProperty(e, "process", {get: () => t.getGlobal("process")}), Object.defineProperty(e, "webContents", {get: () => t.getWebContents()})
        }
    } else if ("browser" === process.type && (n.info("server running"), !global.__xdasAsyncRemoteExports)) {
        let e = {};
        global.__xdasAsyncRemoteExports = e;
        const t = i(53);
        t.startServer(), e.getObjectRegistry = t.getObjectRegistry
    }
    e.exports = global.__xdasAsyncRemoteExports
}, function (e, t) {
    e.exports = require("buffer")
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(6), o = i(20), r = i(21), s = i(33), a = i(34);
    !function (e) {
        let t;
        !function (e) {
            e[e.Unknown = -1] = "Unknown", e[e.Success = 0] = "Success", e[e.FunctionNotExist = 1] = "FunctionNotExist", e[e.ParamaterError = 2] = "ParamaterError", e[e.CallFailed = 3] = "CallFailed"
        }(t = e.NativeCallErrorCode || (e.NativeCallErrorCode = {}));

        class i {
            constructor(e, t, i) {
                this.maxId = e, this.minId = t, this.invalidId = i
            }

            generateId() {
                return this.minId === this.maxId ? this.invalidId : this.minId++
            }

            isInvalidId(e) {
                return e === this.invalidId
            }
        }

        e.IdGenerator = i;
        const l = 0;
        e.idGenerator = new i(1e7, 1, l);

        class c {
            constructor() {
                this.jsCallbacks = new Map, this.jsReturnCallbacks = new Map, this.eventJsCallbakcs = new Map, this.jsRegisterFunctions = new Map, this.targetCommunitorInfo = a.CommonIPCRenderer.rendererCommunicator.getCommunicatorInfoByContext(s.CommonIPCBase.mainRendererContext), this.bindMsgListeners(), this.notifyNativeCallReady()
            }

            CallNativeFunction(t, ...i) {
                do {
                    if (n.isNullOrUndefined(t) || 0 === t.length) {
                        o.error("funcName is empty");
                        break
                    }
                    if (!this.targetCommunitorInfo) {
                        o.error("CallNativeFunction but targetCommunitorInfo null");
                        break
                    }
                    o.information("funcName = ", t), this.printArgs(i);
                    let s = l;
                    for (let t = 0; t < i.length; ++t) if (n.isFunction(i[t])) {
                        let n = e.idGenerator.generateId(), o = i[t];
                        t === i.length - 1 ? (this.jsReturnCallbacks.set(n, o), s = n, i.pop()) : (this.jsCallbacks.set(n, o), i[t] = n)
                    }
                    a.CommonIPCRenderer.rendererCommunicator.sendMessageToRenderer(this.targetCommunitorInfo.id, {
                        name: r.CommonIPCMessage.msgNCCallNativeFunction,
                        args: [t, s].concat(i)
                    })
                } while (0)
            }

            AttachNativeEvent(t, i) {
                let r = void 0;
                do {
                    if (n.isNullOrUndefined(t) || 0 === t.length) {
                        o.error("eventName is empty");
                        break
                    }
                    if (n.isNullOrUndefined(i)) {
                        o.error("callback is empty");
                        break
                    }
                    let s = e.idGenerator.generateId();
                    if (e.idGenerator.isInvalidId(s)) {
                        o.error("id error");
                        break
                    }
                    if (this.eventJsCallbakcs.has(t)) this.eventJsCallbakcs.get(t).set(s, i); else {
                        let e = new Map;
                        e.set(s, i), this.eventJsCallbakcs.set(t, e)
                    }
                    r = s
                } while (0);
                return r
            }

            DetachNativeEvent(e, t) {
                do {
                    if (n.isNullOrUndefined(e) || 0 === e.length) {
                        o.error("eventName is empty");
                        break
                    }
                    if (n.isNullOrUndefined(t)) {
                        o.error("callback is empty");
                        break
                    }
                    if (!this.eventJsCallbakcs.has(e)) {
                        o.error(`event: ${e} doesnot have listener`);
                        break
                    }
                    if (!this.eventJsCallbakcs.get(e).has(t)) {
                        o.error(`event: ${e} doesnot have the listener of id=${t}`);
                        break
                    }
                    this.eventJsCallbakcs.get(e).delete(t)
                } while (0)
            }

            CheckNativeFunction(t, i) {
                do {
                    if (n.isNullOrUndefined(t) || 0 === t.length) {
                        o.error("funcName is empty");
                        break
                    }
                    if (n.isNullOrUndefined(i)) {
                        o.error("callback is empty");
                        break
                    }
                    if (!this.targetCommunitorInfo) {
                        o.error("CheckNativeFunction but targetCommunitorInfo null");
                        break
                    }
                    o.information("funcName = ", t);
                    let s = e.idGenerator.generateId();
                    this.jsReturnCallbacks.set(s, i), a.CommonIPCRenderer.rendererCommunicator.sendMessageToRenderer(this.targetCommunitorInfo.id, {
                        name: r.CommonIPCMessage.msgNCCheckNativeFunction,
                        args: [t, s]
                    })
                } while (0)
            }

            RegisterJSFunction(e, i) {
                let r = t.ParamaterError;
                do {
                    if (n.isNullOrUndefined(e) || 0 === e.length) {
                        o.error("funcName is empty");
                        break
                    }
                    if (n.isNullOrUndefined(i)) {
                        o.error("jsFunc is empty");
                        break
                    }
                    this.jsRegisterFunctions.set(e, i), r = t.Success
                } while (0);
                return r
            }

            bindMsgListeners() {
                a.CommonIPCRenderer.rendererCommunicator.onMessage(r.CommonIPCMessage.msgNCCallJsFunctionById, e => {
                    this.handleCallJsFunctionById(e.msg.args)
                }), a.CommonIPCRenderer.rendererCommunicator.onMessage(r.CommonIPCMessage.msgNCCallJsFunctionByName, e => {
                    this.handleCallJsFunctionByName(e.msg.args)
                }), a.CommonIPCRenderer.rendererCommunicator.onMessage(r.CommonIPCMessage.msgNCNativeFireEvent, e => {
                    this.handleNativeFireEvent(e.msg.args)
                })
            }

            handleCallJsFunctionById(t) {
                do {
                    let i = t[0];
                    if (!n.isNumber(i)) {
                        o.error(`id error id = ${i}`);
                        break
                    }
                    if (e.idGenerator.isInvalidId(i)) {
                        o.error(`id = ${i} invalid`);
                        break
                    }
                    let r = null, s = 0;
                    if (this.jsCallbacks.has(i) && (s = 1, r = this.jsCallbacks.get(i)), this.jsReturnCallbacks.has(i) && (s = 2, r = this.jsReturnCallbacks.get(i)), 0 === s) {
                        o.error(`callbacks[${i}] is null`);
                        break
                    }
                    t.splice(0, 1), r.apply(null, t), 2 === s && this.jsReturnCallbacks.delete(i)
                } while (0)
            }

            handleCallJsFunctionByName(e) {
                do {
                    let t = e[0];
                    if (!n.isString(t)) {
                        o.error(`funcName error funcName = ${t}`);
                        break
                    }
                    if (!this.jsRegisterFunctions.has(t)) {
                        o.error(`jsRegisterFunctions[${t}] is null`);
                        break
                    }
                    e.splice(0, 1), this.jsRegisterFunctions.get(t).apply(null, e)
                } while (0)
            }

            handleNativeFireEvent(e) {
                do {
                    let t = e[0];
                    if (!n.isString(t)) {
                        o.warning(`eventName error eventName = ${t}`);
                        break
                    }
                    if (!this.eventJsCallbakcs.has(t)) {
                        o.warning(`eventJsCallbakcs[${t}] is null`);
                        break
                    }
                    e.shift(), this.eventJsCallbakcs.get(t).forEach((t, i, r) => {
                        o.information(`value = ${t}, key = ${i}, map = ${r}`), n.isNullOrUndefined(t) || t.apply(null, e)
                    })
                } while (0)
            }

            notifyNativeCallReady() {
                do {
                    if (!this.targetCommunitorInfo) {
                        o.error("notifyNativeCallReady but targetCommunitorInfo null");
                        break
                    }
                    a.CommonIPCRenderer.rendererCommunicator.sendMessageToRenderer(this.targetCommunitorInfo.id, {
                        name: r.CommonIPCMessage.msgNCNativeCallReady,
                        args: [a.CommonIPCRenderer.rendererCommunicator.getCommunicatorInfo()]
                    })
                } while (0)
            }

            printArgs(e) {
                for (let t in e) o.information(`index ${t} = `, e[t])
            }
        }

        e.NativeCallImpl = c, e.nativeCall = new c
    }(t.NativeCallModule || (t.NativeCallModule = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        let t;
        !function (e) {
            e[e.Default = 0] = "Default", e[e.Color = 1] = "Color", e[e.Wallpaper = 2] = "Wallpaper", e[e.Custom = 3] = "Custom", e[e.Cool = 4] = "Cool"
        }(t = e.SkinType || (e.SkinType = {})), e.defaultSkinInfo = {type: t.Default, colorID: 0}
    }(t.SkinHelperNS || (t.SkinHelperNS = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(2), o = i(16);
    let r = ["apk", "pic", "video", "mp4", "rmvb", "wmv", "mpg", "mkv", "mov", "rm", "avi", "flv", "doc", "link", "ppt", "word", "magnetic", "music", "pdf", "rar", "xls", "txt", "unknow", "gif", "ipa", "ipsw", "dll", "chm", "text", "install", "iso"];
    const s = ".xv;.xlmv;.3gp;.3gp2;.3gpp;.3gpp2;.3mm;.3p2;.60d;.787;.aaf;.aep;.aepx;.aet;.aetx;.ajp;.ale;.amv;.amx;.arf;\n  .asf;.asx;.avb;.avd;.avi;.avp;.avs;.avs;.axm;.bdm;.bdmv;.bik;.bix;.bmk;.bnp;.box;.bs4;.bsf;.byu;.camproj;.camrec;.clpi;.cmmp;\n  .cmmtpl;.cmproj;.cmrec;.cpi;.cst;.cvc;.d2v;.d3v;.dat;.dav;.dce;.dck;.ddat;.dif;.dir;.divx;.dlx; .dmb;.dmsm;.dmsm3d;.dmss;.dnc;.dpg;\n  .dream;.dsy;.dv;.dv-avi;.dv4;.dvdmedia;.dvr-ms;.dvx;.dxr;.dzm;.dzp;.dzt;.edl;.evo;.eye;.f4p;.f4v;.fbr;.fbr;.fbz;.fcp;.flc;.flh;\n  .fli;.flv;.flx;.gfp;.gl;.grasp;.gts;.gvi;.gvp;.hdmov;.hkm;.ifo;.imovieproj;.imovieproject;.iva;.ivf;.ivr;.ivs;.izz;.izzy;.jts;.jtv;\n  .k3g;.lrec;.lsf;.lsx;.m15;.m1pg;.m1v;.m21;.m21;.m2a;.m2p;.m2t;.m2ts;.m2v;.m4e;.m4u;.m4v;.m75;.meta;.mgv;.mj2;.mjp;.mjpg;.mkv;.mmv;\n  .mnv;.mod;.modd;.moff;.moi;.moov;.mov;.movie;.mp21;.mp2v;.mp4;.mp4v;.mpe;.mpeg;.mpeg4;.mpf;.mpg;.mpg2;.mpgindex;.mpl;.mpls;\n  .mpsub;.mpv;.mpv2;.mqv;.msdvd;.msh;.mswmm;.mts;.mtv;.mvb;.mvc;.mvd;.mve;.mvp;.mvy;.mxf;.mys;.ncor;.nsv;.nuv;.nvc;.ogm;.ogv;.ogx;.osp;\n  .par;.pds;.pgi;.piv;.pjs;.pmf;.pns;.ppj;.prel;.pro;.prproj;.prtl;.psh;.pssd;.pva;.pvr;.pxv;.qt;.qtch;.qtl;.qtm;.qtz;\n  .r3d;.rcproject;.rdb;.rec;.rm;.rmd;.rmp;.rms;.rmvb;.roq;.rp;.rts;.rts;.rum;.rv;.sbk;.sbt;.scc;.scm;.scn;.screenflow;.sec;.seq;.sfd;\n  .sfvidcap;.smk;.sml;.smv;.spl;.ssm;.stl;.str;.stx;.svi;.swf;.swi;.swt;.tda3mt;.tivo;.tix;.tod;.tp;.tp0;.tpd;\n  .tpr;.trp;.ts;.tts;.tvs;.vc1;.vcpf;.vcr;.vcv;.vdo;.vdr;.veg;.vem;.vf;.vfw;.vfz;.vgz;.vid;.viewlet;.viv;.vivo;.vlab;.vob;.vp3;.vp6;.vp7;\n  .vro;.vs4;.vse;.vsp;.w32;.wcp;.webm;.wlmp;.wm;.wmd;.wmmp;.wmv;.wmx;.wp3;.wpl;.wtv;.wvx;.xfl;.xvid;.yuv;.zm1;.zm2;.zm3;.zmv;",
        a = ".exe;.com;.bat;.msi;.apk;.ipa;.iso;.mds;.bin;.img;.ipsw;",
        l = ".txt;.html;.htm;.shtml;.xhtml;.chm;.hlp;.inf;.rtf;.tex;.ltx;.doc;.docx;.wps;.ppt;.pptx;.odf;.pdf;.xls;.xlsx;.docm;.\n  dot;.dotm;.dotx;.email;.rp;.pps;.et;.ett;.xlt;.dbf;.prn;.csv;.mht;.mhtml;.xml;.wpt;.dps;.dpt;.pot;.ppsx;.epub;.mobi;.lit;.wdl;.ceb;.abm;\n  .pdg;.umb;.ibooks;",
        c = ".aiff;.cue;.m3u;.au;.cdda;.raw;.wav;.flac;.tak;.mp3;.aac;.wma;.m4a;.mid;.mka;.mp2;.mpa;.mpc;.ape;.ofr;\n  .ogg;.ra;.wv;.tta;.ac3;.dts;.nsf;.mod;.s3m;.xm;.it;.vst;",
        u = ".psd;.tga;.gif;.jpeg;.jpg;.jp2;.bmp;.ico;.pcx;.png;.pbm;.pgm;.ppm;.pnm;.pgf;.arw;.cr2;.crw;.dcr;.dng;.erf;.kdc;.mef;\n  .mos;.mrw;.nef;.nrw;.orf;.pef;.ptx;.r3d;.raf;.raw;.rw2;.srf;.srw;.x3f;.ras;.tiff;.tif;.wbmp;.ilbm;.lbm;.iff;.ico;",
        d = ".zip;.zipx;.rar;.7z;.isz;.cab;.arj;.ace;.alz;.uue;.tar;.gz; .gzip;.tgz;.tpz;.bzip2;.bz2;.bz;.tbz;.tbz2;.xz;.txz;\n  .lzh;.lha;.zt;.az; .xpi;.jar;.wim;.swm;.rpm;.xar;.deb;.dmg;.hfs;.cpio;.lzma;.lzma86;.split;",
        h = ".torrent;", p = ".idx;.smi;.sub;.psb;.ssa;.ass;.usf;.ssf;.srt;.sup",
        f = ".3gp;.asf;.avi;.divx;.f4v;.flv;.mkv;.mov;.movie;.mp4;.mpeg;.mpeg4;.mpg;.mpg2;.rm;.rmvb;.rp;.swf;.tp;.tp0;.ts;.wmv",
        A = ".exe;.com;.bat;.msi", g = ".wav;.flac;.mp3;.aac;.wma;.m4a;.mid;.ape;.ogg;.ra;.mod",
        v = ".psd;.tga;.gif;.jpeg;.jpg;.jp2;.bmp;.ico;.pcx;.pdf;.png;.pbm;.pgm;.ppm;.pnm;.pgf;.arw;.cr2;.crw;.dcr;.dng;.erf;.kdc;\n  .mef;.mos;.mrw;.nef;.nrw;.orf;.pef;.ptx;.r3d;.raf;.raw;.rw2;.srf;.srw;.x3f;.ras;.tiff;.tif;.wbmp;.ilbm;.lbm;.iff;.ico",
        m = ".txt;.html;.htm;.shtml;.xhtml;.chm;.hlp;.inf;.rtf;.tex;.ltx;.doc;.docx;.wps;.ppt;.pptx;.odf;.pdf;.xls;.xlsx;.docm;.dot;.dotm;.dotx;.email;.rp;.pps",
        C = ".rar;.tar;.zip;.gzip;.cab;.uue;.arj;.bz2;.lzh;.jar;.ace;.iso;.7-zip;.7z",
        y = ".asf;.mpg;.rmvb;.rm;.wmv;.avi;.mp4;.mpeg;.mkv;.mov;.ts;.flv;.3gp;.m2ts;",
        w = ".exe;.com;.bat;.scr;.lnk;.pif;.wsh;", b = ".iso;";
    !function (e) {
        let t;

        function i(e) {
            let i = t.Unkown, o = n.extname(e);
            return null !== o && void 0 !== o && o.length >= 2 && (o = o.toLowerCase()), void 0 === o || "" === o || o.length < 2 ? i = t.Unkown : f.indexOf(o) > -1 ? i = t.Video : A.indexOf(o) > -1 ? i = t.Software : m.indexOf(o) > -1 ? i = t.Doc : g.indexOf(o) > -1 ? i = t.Music : v.indexOf(o) > -1 ? i = t.Pic : C.indexOf(o) > -1 && (i = t.Zip), o.length > 1 && ".z" === o.slice(0, 2) && /[0-9]+/.test(o.substring(2)) && (i = t.Zip), i
        }

        e.getTaskIcon = function (e, t, i) {
            i = i || "xly-type-";
            let f = "";
            do {
                if (t === o.DownloadKernel.TaskType.Bt) {
                    f = "bt-file";
                    break
                }
                if (t === o.DownloadKernel.TaskType.Group) {
                    f = "group";
                    break
                }
                f = "unknown";
                let i = n.extname(e);
                if ("" === i || i.length < 2) break;
                let A = (i = i.toLowerCase()).substring(1);
                if (r.indexOf(A) > -1) {
                    f = "doc" === i ? "word" : A;
                    break
                }
                if (i += ";", s.indexOf(i) > -1) {
                    f = "video";
                    break
                }
                if (a.indexOf(i) > -1) {
                    f = "install", [".mds", ".bin", ".img"].indexOf(i) > -1 && (f = "iso");
                    break
                }
                if (l.indexOf(i) > -1) {
                    if (f = "doc", [".htm", ".html", ".mht"].indexOf(i) > -1) {
                        f = "link";
                        break
                    }
                    if ("docx" === i) {
                        f = "word";
                        break
                    }
                    if ("xlsx" === i) {
                        f = "xls";
                        break
                    }
                    if ("pptx" === i) {
                        f = "ppt";
                        break
                    }
                    break
                }
                if (c.indexOf(i) > -1) {
                    f = "music";
                    break
                }
                if (u.indexOf(i) > -1) {
                    f = "pic";
                    break
                }
                if (d.indexOf(i) > -1) {
                    f = "rar";
                    break
                }
                if (h.indexOf(i) > -1) {
                    f = "bt-link";
                    break
                }
                if (p.indexOf(i) > -1) {
                    f = "text";
                    break
                }
            } while (0);
            return `${i}${f}`
        }, function (e) {
            e[e.Unkown = 0] = "Unkown", e[e.Video = 1] = "Video", e[e.Software = 2] = "Software", e[e.Doc = 3] = "Doc", e[e.Music = 4] = "Music", e[e.Pic = 5] = "Pic", e[e.Zip = 6] = "Zip", e[e.Bt = 7] = "Bt"
        }(t = e.FileExtType || (e.FileExtType = {})), e.getTaskFileType = function (e, i) {
            let o = t.Unkown;
            return void 0 === i && void 0 !== e && (i = n.extname(e)), null !== i && void 0 !== i && i.length >= 2 && (i = i.toLowerCase(), i += ";"), void 0 === i || "" === i || i.length < 3 ? o = t.Unkown : s.indexOf(i) > -1 ? o = t.Video : a.indexOf(i) > -1 ? o = t.Software : l.indexOf(i) > -1 ? o = t.Doc : c.indexOf(i) > -1 ? o = t.Music : u.indexOf(i) > -1 ? o = t.Pic : d.indexOf(i) > -1 ? o = t.Zip : h.indexOf(i) > -1 && (o = t.Bt), i.length > 1 && ".z" === i.slice(0, 2) && /[0-9]+/.test(i.substring(2)) && (o = t.Zip), o
        }, e.isVideoFileExt = function (e) {
            let t = !1;
            do {
                if (null === e || void 0 === e || "" === e) break;
                let i = n.extname(e);
                if (!(null !== i && void 0 !== i && i.length >= 2)) break;
                i = i.toLowerCase(), i += ";", y.indexOf(i) > -1 && (t = !0)
            } while (0);
            return t
        }, e.isSubtitleExt = function (e) {
            let t = !1;
            do {
                if (null === e || void 0 === e || "" === e) break;
                let i = n.extname(e);
                if (!(null !== i && void 0 !== i && i.length >= 2)) break;
                i = i.toLowerCase(), i += ";", p.indexOf(i) > -1 && (t = !0)
            } while (0);
            return t
        }, e.isExecutableExt = function (e) {
            let t = !1;
            do {
                if (null === e || void 0 === e || "" === e) break;
                let i = n.extname(e);
                if (!(null !== i && void 0 !== i && i.length >= 2)) break;
                i = i.toLowerCase(), i += ";", w.indexOf(i) > -1 && (t = !0)
            } while (0);
            return t
        }, e.isIsoExt = function (e) {
            let t = !1;
            do {
                if (null === e || void 0 === e || "" === e) break;
                let i = n.extname(e);
                if (!(null !== i && void 0 !== i && i.length >= 2)) break;
                i = i.toLowerCase(), i += ";", b.indexOf(i) > -1 && (t = !0)
            } while (0);
            return t
        }, e.getGroupFileType = i, e.getDefaultGroupPrefix = function (e) {
            let n = "任务组";
            do {
                if (void 0 === e || null === e || 0 === e.length) break;
                let o = [];
                for (let e = 0; e < 7; e++) o[e] = 0;
                for (let t of e) {
                    let e = i(t);
                    o[e] = o[e] + 1
                }
                let r = t.Unkown;
                for (let e = 1; e < o.length; e++) o[e] > o[r] && (r = e);
                r === t.Video ? n = "视频任务组" : r === t.Software ? n = "程序任务组" : r === t.Music ? n = "音乐任务组" : r === t.Pic ? n = "图片任务组" : r === t.Doc ? n = "文档任务组" : r === t.Zip && (n = "压缩包任务组")
            } while (0);
            return n
        }, e.compareVersion = function (e, t) {
            let i = -2;
            do {
                if (null === e || void 0 === e || "" === e || null === t || void 0 === t || "" === t) break;
                let n = 0, o = 0, r = 0, s = 0, a = 0, l = 0, c = 0, u = 0, d = e.split(/\./);
                if (null === d || void 0 === d || d.length < 3) break;
                if (n = Number(d[0]), o = Number(d[1]), r = Number(d[2]), null !== d[3] && void 0 !== d[3] && "" !== d[3] && (s = Number(d[3])), null === (d = t.split(/\./)) || void 0 === d || d.length < 3) break;
                if (a = Number(d[0]), l = Number(d[1]), c = Number(d[2]), null !== d[3] && void 0 !== d[3] && "" !== d[3] && (u = Number(d[3])), a > n) {
                    i = 1;
                    break
                }
                if (a < n) {
                    i = -1;
                    break
                }
                if (l > o) {
                    i = 1;
                    break
                }
                if (l < o) {
                    i = -1;
                    break
                }
                if (c > r) {
                    i = 1;
                    break
                }
                if (c < r) {
                    i = -1;
                    break
                }
                if (0 !== s) {
                    if (u > s) {
                        i = 1;
                        break
                    }
                    if (u < s) {
                        i = -1;
                        break
                    }
                }
                i = 0
            } while (0);
            return i
        }
    }(t.TaskUtilHelper || (t.TaskUtilHelper = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(47), o = i(14);
    t.Parser = class extends o.EventEmitter {
        constructor() {
            super(), this.decoder = new n.StringDecoder("utf8"), this.jsonBuffer = ""
        }

        encode(e) {
            return JSON.stringify(e) + "\n"
        }

        feed(e) {
            let t = this.jsonBuffer, i = 0, n = (t += this.decoder.write(e)).indexOf("\n", i);
            for (; n >= 0;) {
                const e = t.slice(i, n), o = JSON.parse(e);
                this.emit("message", o), i = n + 1, n = t.indexOf("\n", i)
            }
            this.jsonBuffer = t.slice(i)
        }
    }
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(2), o = i(6), r = i(1), s = i(9), a = i(27), l = i(3), c = i(18),
        u = s.default(n.join(__rootDir, "../bin/ThunderHelper.node"));

    function d() {
        "console" === process.env.TL_OUTPUT ? r.default.outputLogger = r.outputLoggerConsole : r.default.outputLogger = function () {
            function e(e) {
                return function (...t) {
                    u.printEtwLog(e, function (...e) {
                        return e.map(e => o.inspect(e)).join(" ").replace(/%/g, "%%")
                    }(...t))
                }
            }

            return {
                [r.LogLevel.Critical]: e(r.LogLevel.Critical),
                [r.LogLevel.Error]: e(r.LogLevel.Error),
                [r.LogLevel.Warning]: e(r.LogLevel.Warning),
                [r.LogLevel.Information]: e(r.LogLevel.Information),
                [r.LogLevel.Verbose]: e(r.LogLevel.Verbose)
            }
        }()
    }

    function h() {
        let e = a.DevEnvHelperNS.isLogEnable();
        "1" === process.env.TL_ENABLE !== e && (process.env.TL_ENABLE = e ? "1" : "0", r.default.enableLogger = e, u.enableETWLogger(e));
        let t = a.DevEnvHelperNS.getLogOutput();
        t && t !== process.env.TL_OUTPUT && (process.env.TL_OUTPUT = t, d())
    }

    process.env.TL_ENABLE = "0", r.default.enableLogger = "1" === process.env.TL_ENABLE, d(), h(), "browser" === process.type ? l.ipcMain.on(c.ThunderChannelList.channelRMUpdateLogEnviroment, () => {
        l.BrowserWindow.getAllWindows().forEach(e => {
            e.isDestroyed() || e.webContents.send(c.ThunderChannelList.channelMRUpdateLogEnviroment)
        }), h()
    }) : "renderer" === process.type && l.ipcRenderer.on(c.ThunderChannelList.channelMRUpdateLogEnviroment, () => {
        h()
    })
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(23), o = i(14), r = i(26), s = i(44), a = i(24);
    t.Client = class extends o.EventEmitter {
        constructor(e) {
            if (e = e || {}, super(), this.inprocess = !1, this.context = void 0, e.context && (this.context = Object.assign({}, e.context), this.context.productId = e.socketPrex), e.socket) this.socket = e.socket, this.bind(); else if (global.__xdasIPCServer && global.__xdasIPCServer.getProductId().toLowerCase() === e.socketPrex.toLowerCase()) this.inprocess = !0; else {
                let t = a.getSockPath(e.socketPrex);
                this.socket = n.connect(t), this.bind()
            }
        }

        isInprocess() {
            return this.inprocess
        }

        getContext() {
            return this.context
        }

        bind() {
            const e = new s.Parser, t = this.socket;
            t.on("data", t => {
                e.feed(t)
            }), t.on("connect", () => {
                this.emit("connect")
            }), t.on("end", () => {
                r.information("socket is ended"), this.socket = null, this.emit("end")
            }), t.on("error", e => {
                this.socket = null, this.emit("error", e)
            }), e.on("message", e => {
                this.emit("message", e)
            }), this.parser = e
        }

        send(e) {
            if (this.socket) try {
                this.socket.write(this.parser.encode(e))
            } catch (e) {
                r.error(e.message)
            } else r.information("This socket has been ended by the other party", this.context && this.context.name)
        }
    }
}, function (e, t) {
    e.exports = require("string_decoder")
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(12), r = (i(19), i(2)), s = i(6);
    let a = null;
    const l = i(15), c = i(3), u = i(1), d = i(9), h = i(18), p = i(7), f = "xdas_profile_stat";
    let A = "", g = void 0, v = null, m = void 0, C = null,
        y = d.default(r.join(__rootDir, "../bin/ThunderHelper.node")), w = new Set;

    function b() {
        return n(this, void 0, void 0, function* () {
            return new Promise(e => n(this, void 0, void 0, function* () {
                void 0 === m && (null === C && (C = new Promise(e => {
                    e(m = function (e) {
                        let t = "";
                        if (0 === e.length && "renderer" === process.type) {
                            let e = r.normalize(decodeURIComponent(window.location.href)),
                                i = e.indexOf(process.resourcesPath);
                            i = i > -1 ? i + process.resourcesPath.length + 1 : i;
                            let n = e.length - 1, o = e.indexOf("?"), s = e.indexOf("#");
                            n = o > -1 ? Math.min(o - 1, n) : n, n = s > -1 ? Math.min(s - 1, n) : n, i > -1 && n >= i && (t = e.substr(i, n - i + 1))
                        }
                        return 0 === t.length && (t = 0 !== e.length ? e : process.type), t = t.replace(/\||,|;/g, "_")
                    }(""))
                })), m = yield C), e(m)
            }))
        })
    }

    function I(e) {
        let t = "";
        do {
            if (null === e || void 0 === e) break;
            switch (typeof e) {
                case"string":
                    t = e;
                    break;
                case"object":
                    t = s.inspect(e) || "";
                    break;
                case"number":
                case"boolean":
                    t = e.toString() || ""
            }
        } while (0);
        return t
    }

    function E(e) {
        return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")
    }

    function x(e) {
        return n(this, void 0, void 0, function* () {
            return new Promise(t => n(this, void 0, void 0, function* () {
                let n = void 0;
                null === a && (a = yield Promise.resolve().then(() => i(36)));
                let o = a.createHash("md5");
                null !== o && (n = o.update(e).digest("hex")), t(n)
            }))
        })
    }

    function k() {
        return new Promise(e => n(this, void 0, void 0, function* () {
            let t = "";
            t = void 0 === g ? "browser" === process.type ? function () {
                if (void 0 === g) {
                    let e = process.argv.length, t = process.argv;
                    for (let i = 0; i < e; i++) {
                        let e = t[i];
                        if (e.startsWith("-StartType:")) {
                            g = e.substring("-StartType:".length);
                            break
                        }
                    }
                    void 0 === g && (g = "")
                }
                return g
            }() : yield function () {
                return n(this, void 0, void 0, function* () {
                    return null === v && (v = new Promise(e => {
                        c.ipcRenderer.send(h.ThunderChannelList.channelRMGetBrowserStartType), c.ipcRenderer.once(h.ThunderChannelList.channelMRGetBrowserStartTypeResult, (t, i) => {
                            g = i, e(i), v = null
                        })
                    })), v
                })
            }() : g, e(t)
        }))
    }

    function S(e, t, i, o) {
        return n(this, void 0, void 0, function* () {
            let r = I(t), s = I(i), a = yield x(s), c = function (e) {
                let t = new RegExp(E("file:///"), "g"), i = new RegExp(E(process.resourcesPath + "\\"), "g"),
                    n = new RegExp(E(encodeURI(process.resourcesPath.replace(/\\/g, "/") + "/")), "g");
                return e.replace(t, "").replace(i, "").replace(n, "")
            }(I(o)), u = yield x(c), d = `${e}:${a}:${u}`;
            w.has(d) || (w.add(d), l.XLStatNS.trackEvent(f, "uncaught_exception", "", 0, 0, 0, 0, `type=${e},business_name=${yield b()},code=${r},message_hash=${a},message=${encodeURI(s)},stack_hash=${u},stack=${encodeURI(c)}`)), function (e, t, i, o) {
                return n(this, void 0, void 0, function* () {
                })
            }().catch()
        })
    }

    function D(e) {
        console.error(e);
        let t = e || {};
        S("unhandledRejection", t.code, t instanceof Error ? t.message : t, t.stack).catch()
    }

    !function (e) {
        e.init = function (e) {
            A = e
        }, e.trackColdStartUpEvent = function (e) {
            return n(this, void 0, void 0, function* () {
                let t = y.iSColdStartUp() ? 1 : 0, i = o.release(), n = y.performanceMonitorReporter.getProcessUptime(),
                    r = yield k(), s = `key=${e},start_type=${r},cold_start_up=${t},os_version=${i},cost_time=${n}`;
                l.XLStatNS.trackEvent(f, "cold_start_up", "", 0, 0, 0, 0, s)
            })
        }
    }(t.PerformanceMonitorStatNS || (t.PerformanceMonitorStatNS = {})), function () {
        return n(this, void 0, void 0, function* () {
            if (process.on("uncaughtException", e => {
                console.error(e);
                let t = e || {};
                S("uncaughtException", t.code, t.message, t.stack).catch()
            }), "browser" === process.type) process.on("unhandledRejection", (e, t) => {
                D(e)
            }), c.ipcMain.on(h.ThunderChannelList.channelRMGetBrowserStartType, function (e) {
                return n(this, void 0, void 0, function* () {
                    let t = yield k();
                    e.sender.send(h.ThunderChannelList.channelMRGetBrowserStartTypeResult, t)
                })
            }); else if ("browser" !== process.type) {
                window.addEventListener("unhandledrejection", e => {
                    D(e && e.reason || {})
                });
                let e = yield p.asyncRemoteCall.getCurrentWebContents();
                null !== e && void 0 !== e && e.once("did-finish-load", () => {
                    (function () {
                        return n(this, void 0, void 0, function* () {
                            do {
                                if ("browser" === process.type) break;
                                if (null === window.performance.timing || void 0 === window.performance.timing) break;
                                let e = y.iSColdStartUp() ? 1 : 0, t = o.release(), i = window.performance.timing,
                                    n = i.loadEventEnd - i.navigationStart, r = i.fetchStart - i.navigationStart,
                                    s = i.domainLookupEnd - i.domainLookupStart, a = i.connectEnd - i.connectStart,
                                    c = i.responseStart - i.requestStart, u = i.responseEnd - i.responseStart,
                                    d = i.domComplete - i.domLoading, h = yield k();
                                l.XLStatNS.trackEvent(f, "page_load_time", "", 0, 0, 0, 0, `start_type=${h},cold_start_up=${e},os_version=${t},load_time=${n},before_fetch_time=${r},domin_lookup_time=${s},connect_time=${a},first_response_time=${c},responseTime=${u},domTime=${d},process=${A}`)
                            } while (0)
                        })
                    })().catch()
                })
            }
            u.default.hook("beforeLog", (e, t, ...i) => {
                e === u.LogLevel.Critical && l.XLStatNS.trackEvent(f, "critical_error", "", 0, 0, 0, 0, `module_name=${t},messages=${i}`)
            })
        })
    }().catch()
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), t.getWebContents = t.getCurrentWebContents = t.getCurrentWindow = t.getGlobal = t.getBuiltin = t.remoteRequire = t.Interest = void 0;
    const n = i(3), o = i(40), r = i(50), s = i(51), a = i(31), l = i(52), c = i(13), u = i(32), d = n.ipcRenderer,
        h = process.electronBinding("v8_util"), p = new r.default, f = h.createIDWeakMap(),
        A = h.getHiddenValue(global, "contextId");

    class g {
        constructor(e) {
            if ("object" == typeof e ? (this.on = "object" == typeof e.on ? e.on : {}, this.once = "object" == typeof e.once ? e.once : {}) : (this.on = {}, this.once = {}), !this.check()) throw new Error("unexpected param")
        }

        check() {
            let e = !0;
            do {
                let t = Object.getOwnPropertyNames(this.on);
                if (t.forEach(t => {
                    "function" != typeof this.on[t] && (e = !1)
                }), !e) break;
                (t = Object.getOwnPropertyNames(this.once)).forEach(t => {
                    "function" != typeof this.once[t] && (e = !1)
                })
            } while (0);
            return e
        }
    }

    function v(e, t = new Set) {
        const i = e => {
            if (t.has(e)) return {type: "value", value: null};
            let n = e;
            if (Array.isArray(e)) {
                t.add(e);
                let i = {type: "array", value: v(e, t)};
                return t.delete(e), i
            }
            if (ArrayBuffer.isView(n)) return {type: "buffer", value: o.Buffer.from(e)};
            if (e instanceof Date) return {type: "date", value: e.getTime()};
            if (null != e && "object" == typeof e) {
                if (u.isPromise(e)) return {
                    type: "promise", then: i(function (t, i) {
                        e.then(t, i)
                    })
                };
                if (h.getHiddenValue(e, "__remote_id__")) return {
                    type: "remote-object",
                    id: h.getHiddenValue(e, "__remote_id__")
                };
                let n = {
                    type: e instanceof g ? "interest" : "object",
                    name: e.constructor ? e.constructor.name : "",
                    members: []
                };
                t.add(e);
                for (let t in e) n.members.push({name: t, value: i(e[t])});
                return t.delete(e), n
            }
            if ("function" == typeof e) {
                return {
                    type: "function",
                    id: p.add(e),
                    location: h.getHiddenValue(e, "__remote_call_location__"),
                    length: e.length
                }
            }
            return {type: "value", value: e}
        };
        return e.map(i)
    }

    function m(e, t, i) {
        u.isPromise(e) ? e.then(e => {
            t(e)
        }, e => {
            i(e)
        }) : t(e)
    }

    function C(e, t, i, n = !1) {
        const o = t => {
            if (e.hasOwnProperty(t.name) && !n) return;
            let i, o = {enumerable: t.enumerable, configurable: !0};
            if ("method" === t.type) {
                if (t.value.refId) {
                    if (f.has(t.value.refId) && (i = f.get(t.value.refId)), null == i) throw new Error("member refId pointer to null" + t.value.refId + "name: " + t.name)
                } else i = I(t.value, e, t.name);
                o.get = (() => i), o.set = (e => i = e)
            } else "get" === t.type && (o.get = (() => i), t.writable && (o.set = (e => {
                i = e
            })), i = I(t.value));
            Object.defineProperty(e, t.name, o)
        };
        if (Array.isArray(i)) {
            let e = i.length;
            for (let t = 0; t < e; t++) o(i[t])
        }
    }

    function y(e, t, i) {
        if (i) {
            let t = I(i);
            Object.setPrototypeOf(e, t)
        }
    }

    function w(e, t) {
        h.setHiddenValue(e, "__remote_id__", t)
    }

    function b(e) {
        return h.getHiddenValue(e, "__remote_id__")
    }

    function I(e, t, i) {
        const n = {
            value: () => e.value,
            array: () => e.members.map(e => I(e)),
            buffer: () => o.Buffer.from(e.value),
            promise: () => Promise.resolve({then: I(e.then)}),
            error: () => (function (e) {
                const t = (() => "error" === e.type ? new Error : {})();
                for (let i = 0; i < e.members.length; i++) {
                    let {name: n, value: o} = e.members[i];
                    t[n] = o
                }
                return t
            })(e),
            date: () => new Date(e.value),
            exception: () => {
                throw new Error(`${e.message}\n${e.stack}`)
            }
        };
        let r;
        return e.type in n ? r = n[e.type]() : e.refId ? f.has(e.refId) ? (h.addRemoteObjectRef(A, e.refId), r = f.get(e.refId)) : (c.warn("[metaToValue] refId point to null" + e.refId), r = "function" === e.type ? () => {
        } : {}) : e.id ? f.has(e.id) ? (h.addRemoteObjectRef(A, e.id), C(r = f.get(e.id), e.id, e.members, !0), y(r, e.id, e.proto)) : (r = "function" === e.type ? t ? function (e, t, i) {
            if (f.has(i.id)) return f.get(i.id);
            let n = b(e), o = function (...e) {
                throw Error("never should come to a proxied function")
            };
            Object.defineProperty(o, "name", {value: t, writable: !1, enumerable: !0});
            let r = new Proxy(o, {
                apply: (e, i, o) => new Promise((e, r) => {
                    let c = b(i);
                    if (c || (c = b(i.__remoteObj_)), !c) throw Error("is this function was a bound function?");
                    let u = a.default.browser.memberCall, h = l.default(u), p = v(o);
                    d.send(u, A, h, c, n, t, p), s.default.add(h, t => {
                        try {
                            m(I(t), e, r)
                        } catch (e) {
                            r(e)
                        }
                    })
                }), construct: (e, i, o) => new Promise((e, o) => {
                    let r = a.default.browser.memberConstruct, c = l.default(r);
                    d.send(r, A, c, n, t, v(i)), s.default.add(c, t => {
                        try {
                            let i = I(t);
                            e(i)
                        } catch (e) {
                            o(e)
                        }
                    })
                })
            });
            return h.setHiddenValue(o, "__remote_id__", i.id), r
        }(t, i, e) : function (e) {
            let t = e.id;
            const i = function (...e) {
                throw new Error("Should Never com to a remoteFunction PlaceHolder")
            };
            return w(i, t), new Proxy(i, {
                apply: (e, i, n) => new Promise((e, o) => {
                    let r = a.default.browser.functionCall, c = l.default(r), u = b(i);
                    d.send(r, A, c, u, t, v(n)), s.default.add(c, t => {
                        try {
                            m(I(t), e, o)
                        } catch (e) {
                            o(e)
                        }
                    })
                }), construct: (e, i, n) => new Promise((e, n) => {
                    let o = a.default.browser.construct, r = l.default(o);
                    d.send(o, A, r, t, v(i)), s.default.add(r, t => {
                        try {
                            let i = I(t);
                            e(i)
                        } catch (e) {
                            n(e)
                        }
                    })
                })
            })
        }(e) : {}, h.setRemoteObjectFreer(r, A, e.id), f.set(e.id, r), h.setHiddenValue(r, "__remote_id__", e.id), h.addRemoteObjectRef(A, e.id), function (e) {
            let t = b(e);
            Object.defineProperties(e, {
                __set: {
                    enumerable: !1, writable: !1, value: function (i, n) {
                        if ("function" == typeof n) throw new Error("set a function to a remote member is dangerous");
                        return new Promise((o, r) => {
                            let c = a.default.browser.memberSet, u = l.default(c), h = v([n]);
                            d.send(c, A, u, t, i, h), s.default.add(u, t => {
                                try {
                                    let s = I(t);
                                    e[i] = n, o(s)
                                } catch (e) {
                                    r(e)
                                }
                            })
                        })
                    }
                }, __get: {
                    enumerable: !1, writable: !1, value: function (i) {
                        return new Promise((n, o) => {
                            let r = a.default.browser.memberGet, c = l.default(r);
                            d.send(r, A, c, t, i), s.default.add(c, t => {
                                try {
                                    const r = I(t);
                                    e[i] = r, n(r)
                                } catch (e) {
                                    o(e)
                                }
                            })
                        })
                    }
                }, __sync: {
                    enumerable: !1, writable: !1, value: function () {
                        return new Promise((e, i) => {
                            let n = a.default.browser.sync, o = l.default(n);
                            d.send(n, A, o, t), s.default.add(o, n => {
                                try {
                                    if (n.id !== t) throw Error("SYNC_RETURN: remote id not match");
                                    let o = I(n);
                                    e(o)
                                } catch (e) {
                                    i(e)
                                }
                            })
                        })
                    }
                }
            })
        }(r), C(r, e.id, e.members), y(r, e.id, e.proto), Object.defineProperty(r.constructor, "name", {value: e.name}), e.extendedMemberNames && e.extendedMemberNames.forEach((e, t) => {
            let i = r[e], n = r.__proto__;
            for (; n;) {
                if (Object.prototype.hasOwnProperty.call(n, e)) {
                    delete n[e];
                    break
                }
                n = n.__proto__
            }
            Object.defineProperty(r, e, {value: i, enumerable: !1, writable: !1, configurable: !0})
        })) : c.error("no id of meta:", e), r
    }

    t.Interest = g;

    class E {
        constructor(...e) {
            if (this.__resolved_ = !1, this.__promise_ = null, this.__remoteObj_ = null, this.__what_ = "", this.__name_ = "", "string" === typeof arguments[0]) {
                let e = arguments[0], t = arguments[1];
                this.__what_ = e, this.__name_ = t || e, this.__resolved_ = !1, this.__remoteObj_ = null, this.__promise_ = new Promise((i, n) => {
                    let o = this.getChannel(e), r = l.default(o);
                    d.send(o, A, r, t), s.default.add(r, e => {
                        try {
                            let t = I(e);
                            this.__remoteObj_ = t, this.__resolved_ = !0, i(t)
                        } catch (e) {
                            n(e)
                        }
                    })
                })
            } else this.__remoteObj_ = arguments[0], this.__resolved_ = !0, this.__promise_ = null
        }

        getChannel(e) {
            let t = "";
            switch (e) {
                case"module":
                    t = a.default.browser.require;
                    break;
                case"builtin":
                    t = a.default.browser.builtIn;
                    break;
                case"global":
                    t = a.default.browser.global;
                    break;
                case"current_window":
                    t = a.default.browser.currentWindow;
                    break;
                case"current_web_contents":
                    t = a.default.browser.currentWebContents;
                    break;
                case"client_web_contents":
                    t = a.default.browser.clientWebContents;
                    break;
                case"web_contents":
                    t = a.default.browser.webContents
            }
            return t
        }

        __resolve() {
            let e = this.__promise_;
            if (null !== e) ; else {
                if (!this.__resolved_) throw Error("missing the promise for ayncnomously get remote object");
                e = new Promise((e, t) => {
                    e(this.__remoteObj_)
                }), this.__promise_ = e
            }
            return e
        }

        __isResolved() {
            return this.__resolved_
        }
    }

    function x(e, t, i) {
        try {
            s.default.invoke(t, i).remove(t)
        } finally {
            s.default.remove(t)
        }
    }

    d.on(a.default.renderer.requireReturn, x), d.on(a.default.renderer.getBuiltInReturn, x), d.on(a.default.renderer.getGlobalReturn, x), d.on(a.default.renderer.currentWindowReturn, x), d.on(a.default.renderer.currentWebContentsReturn, x), d.on(a.default.renderer.functionCallReturn, x), d.on(a.default.renderer.constructReturn, x), d.on(a.default.renderer.memberCallReturn, x), d.on(a.default.renderer.memberSetReturn, x), d.on(a.default.renderer.memberGetReturn, x), d.on(a.default.renderer.memberConstructReturn, x), d.on(a.default.renderer.callback, (e, t, i) => {
        p.apply(t, I(i))
    }), d.on(a.default.renderer.syncReturn, x), d.on("ELECTRON_RENDERER_RELEASE_CALLBACK", (e, t) => {
        c.info("[RELEASE_CALLBACK]: callbackId:", t), p.remove(t)
    }), process.on("exit", () => {
        d.send(a.default.browser.contextRelease)
    });
    const k = ["__resolve", "__isResolved"], S = ["__promise_", "__resolved_", "__remoteObj_", "__name_", "__what_"],
        D = e => {
            if (!e.__isResolved()) throw Error("Can not access the property of a remote module which has not Resolved yet.")
        };

    function B(e) {
        const t = function () {
        };
        Object.defineProperty(t, "name", {value: e.__name_}), Object.defineProperty(t, "what", {
            enumerable: !1,
            value: e.__what_
        });
        let i = new Proxy(t, {
            getPrototypeOf: t => (D(e), Reflect.getPrototypeOf(e.__remoteObj_)),
            setPrototypeOf: (e, t) => {
                throw new Error("changing prototype of remote object is forbidden")
            },
            isExtensible: t => (D(e), Reflect.isExtensible(e.__remoteObj_)),
            preventExtensions: t => (D(e), Reflect.preventExtensions(e)),
            getOwnPropertyDescriptor: (t, i) => (D(e), Reflect.getOwnPropertyDescriptor(e.__remoteObj_, i)),
            has: (t, i) => (D(e), Reflect.has(e.__remoteObj_, i)),
            deleteProperty: (t, i) => (D(t), Reflect.deleteProperty(e.__remoteObj_, i)),
            defineProperty: (t, i, n) => (D(e), Reflect.defineProperty(e.__remoteObj_, i, n)),
            get: (t, i, n) => {
                if ("string" == typeof i) {
                    if (String.prototype.includes.call(S, i)) {
                        return e[i]
                    }
                    if (String.prototype.includes.call(k, i)) {
                        return e[i]
                    }
                }
                return D(e), Reflect.get(e.__remoteObj_, i)
            },
            set: (t, i, n, o) => (D(e), Reflect.set(e.__remoteObj_, i, n, o)),
            ownKeys: t => (D(e), Reflect.ownKeys(e.__remoteObj_)),
            apply: (t, i, n) => {
                D(e), Reflect.apply(e.__remoteObj_, i, n)
            },
            construct: (t, i, n) => {
                if (D(e), "function" != typeof e.__remoteObj_) throw Error("operator new ONLY used for function");
                return new Promise((t, n) => {
                    let o = a.default.browser.construct, r = l.default(o),
                        c = h.getHiddenValue(e.__remoteObj_, "__remote_id__");
                    d.send(o, A, r, c, v(i)), s.default.add(r, e => {
                        try {
                            t(I(e))
                        } catch (e) {
                            n(e)
                        }
                    })
                })
            }
        });
        return e.__promise_.then(e => {
            let t = typeof e;
            if ("function" === t || "object" === t) {
                let t = b(e);
                t && w(i, t)
            }
        }), i
    }

    t.remoteRequire = function (e) {
        return B(new E("module", e))
    }, t.getBuiltin = function (e) {
        return B(new E("builtin", e))
    }, t.getGlobal = function (e) {
        return B(new E("global", e))
    }, t.getCurrentWindow = function () {
        return B(new E("current_window"))
    }, t.getCurrentWebContents = function () {
        return B(new E("current_web_contents"))
    }, t.getWebContents = function () {
        return B(new E("web_contents"))
    }
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = process.electronBinding("v8_util");
    t.default = class {
        constructor() {
            this.nextId = 0, this.callbacks = {}
        }

        add(e) {
            let t = n.getHiddenValue(e, "__remote_callback_id__");
            if (null != t) return t;
            t = this.nextId -= 1;
            const i = /at (.*)/gi, o = (new Error).stack;
            let r, s = i.exec(o);
            for (; null !== s;) {
                const e = s[1];
                if (!e.includes("native") && !e.includes("electron.asar")) {
                    r = /([^/^)]*)\)?$/gi.exec(e)[1];
                    break
                }
                s = i.exec(o)
            }
            return this.callbacks[t] = e, n.setHiddenValue(e, "__remote_callback_id__", t), n.setHiddenValue(e, "__remote_call_location__", r), t
        }

        get(e) {
            return this.callbacks[e] || function () {
            }
        }

        apply(e, ...t) {
            return this.get(e).apply(global, ...t)
        }

        remove(e) {
            const t = this.callbacks[e];
            t && (n.deleteHiddenValue(t, "__remote_callback_id__"), delete this.callbacks[e])
        }
    }
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(13);
    var o;
    !function (e) {
        let t = {};
        e.add = function (e, i, n) {
            t[e] = {func: i, thisArg: n}
        }, e.invoke = function (i, ...o) {
            let r = t[i];
            return r ? r.thisArg ? r.func.apply(r.thisArg, ...o) : r.func(...o) : n.error(`Cannot invoke function by unrecognize id. ${i}`), e
        }, e.remove = function (e) {
            delete t[e]
        }
    }(o || (o = {})), t.default = o
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    let n = 0;
    t.default = function (e) {
        return e ? e.concat(".").concat(String(++n)) : String(++n)
    }
}, function (e, t, i) {
    "use strict";
    const n = i(3), o = i(54), r = i(31), s = i(55), a = i(13), l = i(32), c = n.ipcMain,
        u = process.electronBinding("v8_util");
    let d = u.createDoubleIDWeakMap();
    const h = new o.default;

    function p(e, t, i, n, o, r) {
        let s, l = !1, c = null, u = !1;
        do {
            try {
                s = t[n]
            } catch (e) {
                l = !0
            }
            if (l) try {
                s = i.value[n], l = !1, i.meta.extendedMemberNames.push(n), u = !0
            } catch (e) {
                a.error(`property ${n} untouchable, even try root[name]`)
            }
            if (l) break;
            let o = Object.getOwnPropertyDescriptor(t, n);
            if (void 0 === o) {
                a.warn(`descriptor of property ${n} is undefined`);
                break
            }
            c = {
                name: n,
                enumerable: o.enumerable,
                writable: !1,
                type: "get"
            }, void 0 === o.get && "function" == typeof s ? c.type = "method" : ((o.set || o.writable) && (c.writable = !0), c.type = "get"), u ? (c.configurable = !0, c.value = g(e, s, r, !1, null)) : c.value = g(e, s, r, !1, i)
        } while (0);
        return c
    }

    function f(e, t, i, n = null) {
        let o = Object.getOwnPropertyNames(t);
        "function" == typeof t && (o = o.filter(function (e) {
            return !String.prototype.includes.call(s.propertiesOfFunction, e)
        }));
        let r = [];
        do {
            if (0 === o.length) break;
            let s = o.length;
            for (let a = 0; a < s; a++) {
                let s = p(e, t, i, o[a], 0, n);
                s && r.push(s)
            }
        } while (0);
        return r
    }

    function A(e, t, i, n = null) {
        let o = null, r = Object.getPrototypeOf(t);
        return o = null === r || r === Object.prototype || r === Function.prototype ? null : g(e, r, n, !1, i)
    }

    function g(e, t, i = null, n = !1, o = null) {
        i = null === i ? {} : i;
        const r = {type: typeof t};
        "object" === r.type && (r.type = function (e, t) {
            let i = typeof e;
            if ("object" !== i) throw new Error("incorrect arg at index 0. non-object");
            return null === e ? i = "value" : ArrayBuffer.isView(e) ? i = "buffer" : Array.isArray(e) ? i = "array" : e instanceof Error ? i = "error" : e instanceof Date ? i = "date" : l.isPromise(e) ? i = "promise" : Object.prototype.hasOwnProperty.call(e, "callee") && null != e.length ? i = "array" : t && u.getHiddenValue(e, "simple") && (i = "value"), i
        }(t, n));
        do {
            if ("object" === r.type || "function" === r.type) {
                let n = h.getIdOfObject(t);
                if (n && i[n]) {
                    r.refId = n, h.add(e, t);
                    break
                }
            }
            "array" === r.type ? r.members = t.map(t => g(e, t, i)) : "object" === r.type || "function" === r.type ? (null == o && (r.extendedMemberNames = [], o = {
                value: t,
                meta: r
            }), r.name = t.constructor ? t.constructor.name : "", r.id = h.add(e, t), i[r.id] = !0, r.members = f(e, t, o, i), r.proto = A(e, t, o, i)) : "buffer" === r.type ? r.value = Buffer.from(t) : "promise" === r.type ? (t.then(function () {
            }, function () {
            }), r.then = g(e, function (e, i) {
                t.then(e, i)
            })) : "error" === r.type ? (r.members = v(t), r.members.push({
                name: "name",
                value: t.name
            })) : "date" === r.type ? r.value = t.getTime() : (r.type = "value", r.value = t)
        } while (0);
        return r
    }

    function v(e) {
        return Object.getOwnPropertyNames(e).map(t => ({name: t, value: e[t]}))
    }

    function m(e, t, i, o) {
        const s = function (o) {
            let l, c, p = 0, f = 0;
            switch (o.type) {
                case"value":
                    return o.value;
                case"remote-object":
                    return h.get(o.id);
                case"array":
                    return m(e, t, i, o.value);
                case"buffer":
                    return Buffer.from(o.value);
                case"date":
                    return new Date(o.value);
                case"promise":
                    return Promise.resolve({then: s(o.then)});
                case"object":
                case"interest": {
                    let e = {};
                    for (Object.defineProperty(e.constructor, "name", {value: o.name}), p = 0, f = (c = o.members).length; p < f; p++) e[(l = c[p]).name] = s(l.value);
                    return e
                }
                case"function": {
                    const s = e.id, l = [i, o.id];
                    if (a.info("renderer function id:" + l), d.has(l)) return d.get(l);
                    let c = function (...t) {
                        a.info("[CALLBACK] args", t);
                        let i = [...t];
                        e.isDestroyed() || s !== e.id ? function (e, t, i) {
                            let o = "Attempting to call a function in a renderer window that has been closed or released." + `\nFunction provided here: ${e.location}`;
                            if (t.length > 0 && t[0].sender && t[0].sender instanceof n.webContents.constructor) {
                                const {sender: e} = t[0], n = e.eventNames().filter(t => {
                                    let n = e.listeners(t), o = !1;
                                    return n.forEach(e => {
                                        e === i && (o = !0)
                                    }), o
                                });
                                n.length > 0 && (o += `\nRemote event names: ${n.join(", ")}`, n.forEach(t => {
                                    Object.getPrototypeOf(e).removeListener.call(e, t, i)
                                }))
                            }
                            a.warn(o)
                        }(o, i, c) : e.send(r.default.renderer.callback, o.id, g(e, i))
                    };
                    return Object.defineProperty(c, "length", {value: o.length}), u.setRemoteCallbackFreer(c, t, i, o.id, e), d.set(l, c), c
                }
                default:
                    throw new TypeError(`Unknown type: ${o.type}`)
            }
        };
        return o.map(s)
    }

    function C(e, t, i, n) {
        let o, r;
        try {
            return t.apply(i, n)
        } catch (e) {
            return r = t.name, new Error(`Could not call remote function '${o = null != r ? r : "anonymous"}'. Check that the function signature is correct. Underlying error: ${e.message}`)
        }
    }

    function y(e) {
        return {type: "exception", message: e.message, stack: e.stack || e}
    }

    function w(e) {
        const t = new Error(e);
        throw Object.defineProperty(t, "code", {value: "EBADRPC"}), Object.defineProperty(t, "errno", {value: -72}), t
    }

    var b;
    !function (e) {
        const t = (e, t, ...i) => {
            const n = e.sender;
            n.isDestroyed() ? a.warn("webcontext is destroyed.") : n.send(t, ...i)
        };
        e.startServer = function () {
            c.on(r.default.browser.require, (e, i, n, o) => {
                a.info(`[REQUIRE] module=${o} `);
                let s = process.mainModule.require(o), l = g(e.sender, s);
                t(e, r.default.renderer.requireReturn, n, l)
            }), c.on(r.default.browser.builtIn, (e, i, o, s) => {
                a.info(`[BUILTIN]: property=${s} contextId=${i}`);
                let l = n[s], c = g(e.sender, l);
                a.info(`[BUILTIN]: returns remoteId:${c.id}, type: ${typeof l}`), t(e, r.default.renderer.getBuiltInReturn, o, c)
            }), c.on(r.default.browser.global, (e, i, n, o) => {
                a.info(`[GLOBAL]: proerty:${o} contextId=${i}`);
                let s, l = global[o];
                s = g(e.sender, l), a.info(`[GLOBAL]: returns remoteid=${s.id}, obj=` + typeof l), t(e, r.default.renderer.getGlobalReturn, n, s)
            }), c.on(r.default.browser.currentWindow, (e, i, n, o) => {
                a.info(`[CURRENT_WINDOW]: property=${o} contextId=${i}`);
                let s = e.sender.getOwnerBrowserWindow.call(e.sender), l = g(e.sender, s);
                a.info(`[CURRENT_WINDOW]: returns remoteid=${l.id}, obj=` + s), t(e, r.default.renderer.currentWindowReturn, n, l)
            }), c.on(r.default.browser.currentWebContents, (e, i, n, o) => {
                t(e, r.default.renderer.currentWebContentsReturn, n, g(e.sender, e.sender))
            }), c.on(r.default.browser.webContents, (e, i, o, s) => {
                a.info(`[WebContents]: proerty:${s} contextId=${i}`);
                let l, c = n.webContents;
                l = g(e.sender, c), a.info(`[WebContents]: returns remoteid=${l.id}, obj=` + typeof c), t(e, r.default.renderer.webContentsReturn, o, l)
            });
            const e = (e, t) => {
                const i = (t, i) => {
                    t && Object.getOwnPropertyNames(t).forEach(n => {
                        i ? e.once(n, t[n]) : e.on(n, t[n])
                    })
                };
                t.on && i(t.on, !1), t.once && i(t.once, !0)
            };
            c.on(r.default.browser.construct, (i, n, o, s, l) => {
                let c, u = null;
                try {
                    a.info(`[CONSTRUCTOR]: remoteId=${s} `);
                    let d = l.length > 0 ? l[l.length - 1] : null;
                    l = m(i.sender, i.frameId, n, l);
                    let p = h.get(s);
                    null == p && w(`Cannot call constructor on missing remote object ${s}`), d && "interest" === d.type && (u = l.pop());
                    let f = new (Function.prototype.bind.apply(p, [null, ...l]));
                    f && u && e(f, u), c = g(i.sender, f, null, !1), a.info(`[CONSTRUCTOR]: returns remoteId =${c.id} name=${p.name} `)
                } catch (e) {
                    c = y(e)
                } finally {
                    t(i, r.default.renderer.constructReturn, o, c)
                }
            }), c.on(r.default.browser.functionCall, function (e, i, n, o, s, l) {
                let c;
                try {
                    a.info(`[FUNCTION_CALL]: remoteId=${s}`), l = m(e.sender, e.frameId, i, l);
                    let u = h.get(s);
                    if (null == u) a.error(`Cannot call function on missing remote object ${s}`), c = g(e.sender, void 0); else {
                        let t = o ? h.get(o) : global;
                        if (t) {
                            let i = C(0, u, t, l);
                            c = g(e.sender, i)
                        } else a.error(`Cannot call function(${s}) on missing context(${o})`), c = g(e.sender, void 0)
                    }
                    a.info(`[FUNCTION_CALL]: name=${u.name}`)
                } catch (e) {
                    c = y(e)
                } finally {
                    t(e, r.default.renderer.functionCallReturn, n, c)
                }
            }), c.on(r.default.browser.memberCall, function (e, i, n, o, s, l, c) {
                let u;
                a.info(`[MEMBER_CALL]: thisArg=${o}, remoteId=${s}, method=${l}, args count=${c.length}`);
                try {
                    c = m(e.sender, e.frameId, i, c);
                    let d = h.get(s);
                    null == d && w(`Cannot call function '${l}' on missing remote object ${s}`);
                    let p = o ? h.get(o) : d;
                    if (p) {
                        let t = C(0, d[l], p, c);
                        u = g(e.sender, t), a.info("[MEMBER_CALL]: return=" + t)
                    } else u = g(e.sender, void 0)
                } catch (e) {
                    u = y(e)
                } finally {
                    t(e, r.default.renderer.memberCallReturn, n, u)
                }
            }), c.on(r.default.browser.memberGet, function (e, i, n, o, s) {
                let l;
                try {
                    a.info(`[MEMBER_GET]: remoteId=${o}, property=`, s);
                    let i = h.get(o);
                    null == i && w(`Cannot get property '${Object.toString.call(s)}' on missing remote object ${o}`);
                    let c = i[s];
                    l = g(e.sender, c)
                } catch (e) {
                    l = y(e)
                } finally {
                    t(e, r.default.renderer.memberGetReturn, n, l)
                }
            }), c.on(r.default.browser.memberSet, function (e, i, n, o, s, l) {
                try {
                    a.info(`[MEMBER_SET]: remoteId=${o}, property=` + s), l = m(e.sender, e.frameId, i, l);
                    let c = h.get(o);
                    null == c && w(`Cannot set property '${Object.toString.call(s)}' on missing remote object ${o}`), c[s] = l[0], t(e, r.default.renderer.memberSetReturn, n, {
                        type: "value",
                        value: !0
                    })
                } catch (i) {
                    t(e, r.default.renderer.memberSetReturn, n, y(i))
                }
            }), c.on(r.default.browser.memberConstruct, function (i, n, o, s, l, c) {
                let u, d = null;
                try {
                    a.info(`[MEMBER_CONSTRUCTOR]: regId=${s}, method=${l}`);
                    let p = c.length > 0 ? c[c.length - 1] : null;
                    c = m(i.sender, i.frameId, n, c);
                    let f = h.get(s);
                    null == f && w(`Cannot call constructor '${l}' on missing remote object ${s}`), p && "interest" === p.type && (d = c.pop());
                    let A = f[l], v = new (Function.prototype.bind.apply(A, [null, ...c]));
                    v && d && e(v, d), u = g(i.sender, v)
                } catch (e) {
                    u = y(e)
                } finally {
                    t(i, r.default.renderer.memberConstructReturn, o, u)
                }
            }), c.on(r.default.browser.sync, function (e, i, n, o) {
                let s = h.get(o);
                t(e, r.default.renderer.syncReturn, n, g(e.sender, s))
            }), c.on("ELECTRON_BROWSER_DEREFERENCE", function (e, t) {
                let i = h.get(t);
                if (n.ipcMain.emit("log_to_renderer", "ELECTRON_BROWSER_DEREFERENCE", t, typeof i), i) {
                    let n = i.name;
                    n || (n = i.constructor ? i.constructor.name : ""), h.remove(e.sender.id, t)
                } else t < 0 && a.warn("remote id reference to nothing:", t)
            }), c.on(r.default.browser.contextRelease, e => {
                h.clear(e.sender.id)
            })
        }, e.getObjectRegistry = function () {
            return h
        }
    }(b || (b = {})), e.exports = b
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(13), o = -1 * Math.pow(2, 31), r = process.electronBinding("v8_util");
    t.default = class {
        constructor() {
            this.nextId = 0, this.storage = new Map, this.owners = new Map
        }

        add(e, t) {
            const i = this.saveToStorage(t), n = e.id;
            let o = this.owners.get(n);
            return o || (o = new Set, this.owners.set(n, o), this.registerDeleteListener(e, n)), o.has(i) || (o.add(i), this.storage.get(i).count++), i
        }

        getIdOfObject(e) {
            return r.getHiddenValue(e, "__remote_id__")
        }

        get(e) {
            const t = this.storage.get(e);
            if (void 0 !== t) return t.object
        }

        remove(e, t) {
            this.dereference(t);
            let i = this.owners.get(e);
            i && i.delete(t)
        }

        clear(e) {
            let t = this.owners.get(e);
            if (t) {
                for (let e of t) this.dereference(e);
                this.owners.delete(e)
            }
        }

        getStorageSize() {
            return this.storage.size
        }

        saveToStorage(e) {
            let t = r.getHiddenValue(e, "__remote_id__");
            if (!t) {
                if ((t = --this.nextId) <= o) throw new Error("object registry id overflow");
                this.storage.set(t, {object: e, count: 0}), r.setHiddenValue(e, "__remote_id__", t)
            }
            return t
        }

        dereference(e) {
            let t = this.storage.get(e);
            null != t && (t.count -= 1, 0 === t.count && (r.deleteHiddenValue(t.object, "__remote_id__"), this.storage.delete(e)))
        }

        registerDeleteListener(e, t) {
            const i = e.getProcessId(), o = (r, s) => {
                s === i && (n.info("render-view-deleted: processid=" + i), (() => {
                    n.info("before clear. objectsRegistry capacity=" + this.storage.size, "owners size:" + this.owners.size)
                })(), e.removeListener("render-view-deleted", o), this.clear(t))
            };
            e.on("render-view-deleted", o)
        }
    }
}, function (e, t, i) {
    "use strict";
    var n;
    !function (e) {
        e.propertiesOfFunction = ["length", "name", "arguments", "caller", "prototype", "apply", "bind", "call", "toString"]
    }(n || (n = {})), e.exports = n
}, function (e, t) {
    e.exports = require("http")
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(4), o = i(42), r = i(1), s = i(11), a = r.default.getLogger("common/skin"), l = !1;

    function c(e) {
        if (l) if (e.type === o.SkinHelperNS.SkinType.Default) document.body.classList.remove("is-theme"), s.ThunderUtil.setCSSProperties(document.body, {
            "--color-primary-theme": "",
            "--color-primary-control-1": "",
            "--color-primary-control-2": "",
            "--color-primary-control-3": "",
            "--color-primary-control-4": "",
            "--color-primary-gradient-1": "",
            "--color-primary-gradient-2": "",
            "--color-primary-text": "",
            "--color-search": "",
            "--color-secondary": "",
            "--color-gradient-background-1": "",
            "--color-gradient-background-2": "",
            "--color-gradient-foreground-1": "",
            "--color-gradient-foreground-2": "",
            "--color-accordion-1": "",
            "--color-accordion-2": "",
            "--default-opacity-1": "",
            "--default-opacity-2": ""
        }); else if (e.type === o.SkinHelperNS.SkinType.Color || e.type === o.SkinHelperNS.SkinType.Wallpaper || e.type === o.SkinHelperNS.SkinType.Cool) {
            document.body.classList.add("is-theme");
            let {
                colors: {
                    colorPrimary: t,
                    colorPrimaryControl1: i,
                    colorPrimaryControl2: n,
                    colorPrimaryControl3: o,
                    colorPrimaryControl4: r,
                    colorPrimaryGradient: a,
                    colorPrimaryText: l,
                    colorSearch: c,
                    colorSecondary: u,
                    colorGradientBackground: d,
                    colorGradientForeground: h,
                    colorAccordion: p
                }, opacity: f
            } = e;
            s.ThunderUtil.setCSSProperties(document.body, {
                "--color-primary-theme": `${t}`,
                "--color-primary-control-1": `${i}`,
                "--color-primary-control-2": `${n}`,
                "--color-primary-control-3": `${o}`,
                "--color-primary-control-4": `${r}`,
                "--color-primary-gradient-1": `${a[0]}`,
                "--color-primary-gradient-2": `${a[1]}`,
                "--color-primary-text": `${l}`,
                "--color-search": `${c}`,
                "--color-secondary": `${u}`,
                "--color-gradient-background-1": `${d[0]}`,
                "--color-gradient-background-2": `${d[1]}`,
                "--color-gradient-foreground-1": `${h[0]}`,
                "--color-gradient-foreground-2": `${h[1]}`,
                "--color-accordion-1": `${p[0]}`,
                "--color-accordion-2": `${p[1]}`,
                "--default-opacity-1": `${f - .1}`,
                "--default-opacity-2": `${f + .1}`
            })
        }
    }

    n.client.callServerFunction("GetSkinInfo").then(c).catch(e => {
        a.warning(e)
    }), n.client.attachServerEvent("OnChangeSkin", (e, ...t) => {
        c(t[0])
    })
}, function (e, t, i) {
    e.exports = i(8)(211)
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(7), r = i(17), s = i(4), a = i(27);
    !function (e) {
        function t(e, t) {
            return n(this, void 0, void 0, function* () {
                if (null !== e) {
                    let i = e.webContents;
                    (yield i.isDevToolsOpened()) ? yield i.closeDevTools() : yield i.openDevTools(t)
                }
            })
        }

        e.openDevTool = t, e.enableDevTools = function (e) {
            return n(this, void 0, void 0, function* () {
                window.addEventListener("keyup", i => n(this, void 0, void 0, function* () {
                    if ("F12" === i.key && i.ctrlKey) a.DevEnvHelperNS.isLogEnable() && (yield t(yield o.asyncRemoteCall.getCurrentWindow(), e)); else if (("t" === i.key || "T" === i.key) && i.altKey && a.DevEnvHelperNS.isLogEnable()) {
                        let e = document.getElementById("DevProcessPid");
                        if (e) document.body.removeChild(e); else {
                            (e = document.createElement("p")).id = "DevProcessPid", e.style.position = "absolute", e.style.left = "0px", e.style.top = "0px", e.style.width = "100%", e.style.zIndex = "10000", e.style.color = "rgb(255,0,0)", document.body.appendChild(e);
                            let t = "process.pid:" + process.pid;
                            t += "\r\nlocation.href:" + location.href, t += "\r\nprocess.argv:" + process.argv, e.innerText = t
                        }
                    }
                }), !0)
            })
        }, e.enableDragOpenFile = function (e) {
            void 0 === e && (e = !1), document.addEventListener("dragover", e => (e.preventDefault(), e.stopPropagation(), !1), !0), document.addEventListener("drop", e => n(this, void 0, void 0, function* () {
                e.preventDefault(), e.stopPropagation();
                let t = e.dataTransfer, i = t.files, n = t.items;
                if (void 0 !== n && null !== n && n.length > 0) for (let e = 0; e < n.length; e++) {
                    let t = n[e];
                    "string" === t.kind && "text/uri-list" === t.type ? t.getAsString(e => {
                        s.client.callServerFunction("DropOpenUrl", e).catch()
                    }) : t.kind
                }
                if (void 0 !== i && null !== i && i.length > 0) for (let e = 0; e < i.length; e++) {
                    let t = i[e].path;
                    void 0 !== t && null !== t && "" !== t && (yield r.FileSystemAWNS.existsAW(t)) && s.client.callServerFunction("DropOpenFile", t).catch()
                }
                return !1
            }), !0)
        }
    }(t.ThunderToolsNS || (t.ThunderToolsNS = {}))
}, function (e, t, i) {
    "use strict";
    var n = i(10), o = i(107), r = {"Content-Type": "application/x-www-form-urlencoded"};

    function s(e, t) {
        !n.isUndefined(e) && n.isUndefined(e["Content-Type"]) && (e["Content-Type"] = t)
    }

    var a, l = {
        adapter: ("undefined" != typeof XMLHttpRequest ? a = i(108) : "undefined" != typeof process && (a = i(25)), a),
        transformRequest: [function (e, t) {
            return o(t, "Content-Type"), n.isFormData(e) || n.isArrayBuffer(e) || n.isBuffer(e) || n.isStream(e) || n.isFile(e) || n.isBlob(e) ? e : n.isArrayBufferView(e) ? e.buffer : n.isURLSearchParams(e) ? (s(t, "application/x-www-form-urlencoded;charset=utf-8"), e.toString()) : n.isObject(e) ? (s(t, "application/json;charset=utf-8"), JSON.stringify(e)) : e
        }],
        transformResponse: [function (e) {
            if ("string" == typeof e) try {
                e = JSON.parse(e)
            } catch (e) {
            }
            return e
        }],
        timeout: 0,
        xsrfCookieName: "XSRF-TOKEN",
        xsrfHeaderName: "X-XSRF-TOKEN",
        maxContentLength: -1,
        validateStatus: function (e) {
            return e >= 200 && e < 300
        }
    };
    l.headers = {common: {Accept: "application/json, text/plain, */*"}}, n.forEach(["delete", "get", "head"], function (e) {
        l.headers[e] = {}
    }), n.forEach(["post", "put", "patch"], function (e) {
        l.headers[e] = n.merge(r)
    }), e.exports = l
}, function (e, t, i) {
    "use strict";
    var n = i(73);
    e.exports = function (e, t, i, o, r) {
        var s = new Error(e);
        return n(s, t, i, o, r)
    }
}, function (e, t) {
    e.exports = require("https")
}, function (e, t) {
    e.exports = require("zlib")
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(7), r = i(1), s = i(11), a = r.default.getLogger("MenuSkinNS");
    !function (e) {
        e.setStyle = function (e, t) {
            return n(this, void 0, void 0, function* () {
                if (a.information("setStyle", e, t), null !== e) {
                    const {WindowPreferenceNS: e} = yield Promise.resolve().then(() => i(65));
                    let t = {windowPreference: e.getWindowPreference()};
                    a.information("skinOpts", t)
                }
            })
        }, e.popEditableDefaultContextMenu = function (e, t, i) {
            return n(this, void 0, void 0, function* () {
                let i = yield o.asyncRemoteCall.getCurrentWebContents();
                i.once("context-menu", (r, l) => n(this, void 0, void 0, function* () {
                    if (a.verbose(r), l.isEditable) {
                        let n = [{
                            label: "撤销", enabled: l.editFlags.canUndo, click: () => {
                                i.undo()
                            }
                        }, {type: "separator"}, {
                            label: "剪切", enabled: l.editFlags.canCut, click: () => {
                                i.cut()
                            }
                        }, {
                            label: "复制", enabled: l.editFlags.canCopy, click: () => {
                                i.copy()
                            }
                        }, {
                            label: "粘贴",
                            enabled: l.editFlags.canPaste && s.ThunderUtil.isClipboardTextFormatAvailable(),
                            click: () => {
                                i.paste()
                            }
                        }, {
                            label: "删除", enabled: l.editFlags.canDelete, click: () => {
                                i.delete()
                            }
                        }, {type: "separator"}, {
                            label: "全选", enabled: l.editFlags.canSelectAll, click: () => {
                                i.selectAll()
                            }
                        }];
                        if (void 0 !== e && "function" == typeof e) {
                            let i = e(l);
                            void 0 !== i && i.length > 0 && (void 0 === t ? t = n.length : (t < 0 && (t = n.length + 1 + t) < 0 && (t = 0), t > n.length && (t = n.length)), n.splice(t, 0, ...i))
                        }
                        let r = yield(yield o.asyncRemoteCall.getMenu()).buildFromTemplate(n),
                            a = yield o.asyncRemoteCall.getCurrentWindow();
                        yield r.popup({window: a})
                    }
                }))
            })
        }
    }(t.MenuSkinNS || (t.MenuSkinNS = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(79), o = i(66);
    !function (e) {
        e.getWindowPreference = function (e = !1) {
            let t = o.default(), i = {};
            return t && t.colors && "string" == typeof t.colors.colorPrimaryControl1 && (i.hoverBackgroundColor = e ? parseInt(n.ColorUtilNS.rgbaStringToHexWith0xBegin(t.colors.colorPrimaryControl1), 16) : n.ColorUtilNS.rgbaStringToHexWith0xBegin(t.colors.colorPrimaryControl1)), i
        }
    }(t.WindowPreferenceNS || (t.WindowPreferenceNS = {}))
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(1), s = i(4), a = r.default.getLogger("GetSkinInfo");
    let l;
    (function () {
        return n(this, void 0, void 0, function* () {
            "renderer" === process.type ? (a.information("renderer process"), s.client.callServerFunction("GetSkinInfo").then(e => {
                l = e, a.information("send OnChangeSkin", e)
            }).catch(e => {
                a.warning(e)
            }), s.client.attachServerEvent("OnChangeSkin", (e, t) => {
                l = t, a.information("send OnChangeSkin", t)
            })) : "browser" === process.type && (a.information("main process"), o.ipcMain.on("OnChangeSkin", (e, t) => {
                a.information("OnChangeSkin", t), l = t
            }))
        })
    })().catch(e => {
        a.information(e)
    }), t.default = function () {
        return l
    }
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(68), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5);
    let s = class extends r.Vue {
        onOptionsChanged() {
            return o(this, void 0, void 0, function* () {
            })
        }

        get filterOptions() {
            return this.options.filter(e => "separator" !== e)
        }

        onSelect(e) {
            this.$emit("input", e.srcElement.value, !0)
        }

        mounted() {
            let e = this.$refs.selectNative;
            if (e) for (let t in this.filterOptions) if (String(this.filterOptions[t]) === this.value) {
                e.selectedIndex = t;
                break
            }
        }

        focusEdit() {
            if (this.$refs.select) {
                let e = this.$refs.select.$el.querySelector("input");
                null !== e && void 0 !== e && e.focus()
            }
        }
    };
    n([r.Prop()], s.prototype, "value", void 0), n([r.Prop({default: () => []})], s.prototype, "options", void 0), n([r.Prop({default: !1})], s.prototype, "useNative", void 0), n([r.Prop({default: "bottom"})], s.prototype, "position", void 0), n([r.Watch("options")], s.prototype, "onOptionsChanged", null), s = n([r.Component], s), t.default = s
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(70), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(7), a = i(5), l = i(15), c = i(99), u = i(4);
    let d = class extends a.Vue {
        constructor() {
            super(...arguments), this.attached = !1
        }

        created() {
            return o(this, void 0, void 0, function* () {
                let e = yield s.asyncRemoteCall.getCurrentWindow();
                (yield e.isVisible()) ? (r.ipcRenderer.send("dropdown-file-window-create", e.id, this.panel), window.addEventListener("blur", this.onBlur), this.attached = !0) : setTimeout(() => {
                    r.ipcRenderer.send("dropdown-file-window-create", e.id, this.panel), window.addEventListener("blur", this.onBlur), this.attached = !0
                }, 20)
            })
        }

        onBlur() {
            this.hideMenu()
        }

        destroyed() {
            this.attached && (this.attached = !1, window.removeEventListener("blur", this.onBlur))
        }

        handleMenuShow() {
            return o(this, void 0, void 0, function* () {
                l.XLStatNS.trackEvent("core_event", "create_task_panel_downloadpath_show");
                let e = this.$el.getBoundingClientRect(), t = yield s.asyncRemoteCall.getCurrentWindow(), i = [];
                if ("cloud" === this.dropOwner) {
                    let e = (yield u.client.callRemoteClientFunction("ThunderPanPluginWebview", "IpcGetRecentFolder"))[0];
                    if (e) {
                        for (let t of e) "" !== t.id && i.push({dir: t.name, alias: t.name, canDelete: !0, id: t.id});
                        i = i.slice(0, 4)
                    }
                    i.splice(0, 0, {dir: "我的云盘", alias: "我的云盘", canDelete: !1, id: ""})
                } else i = yield c.HistoryPathsNS.getLogicHistoryPaths(this.enablePrivateSpace, this.enableDelete, this.appendDirs);
                r.ipcRenderer.send("dropdown-file-window-show", t.id, !0, JSON.stringify({
                    bottom: e.bottom,
                    height: e.height,
                    left: e.left,
                    right: e.right,
                    top: e.top,
                    width: e.width
                }), i, this.dropOwner, this.enableDelete)
            })
        }

        hideMenu() {
            this.$refs.select && (this.$refs.select.menuVisible = !1)
        }

        focusEdit() {
            if (this.$refs.select) {
                let e = this.$refs.select.$el.querySelector("input");
                null !== e && void 0 !== e && e.focus()
            }
        }
    };
    n([a.Prop()], d.prototype, "value", void 0), n([a.Prop()], d.prototype, "panel", void 0), n([a.Prop()], d.prototype, "dropOwner", void 0), n([a.Prop()], d.prototype, "checked", void 0), n([a.Prop({default: () => []})], d.prototype, "appendDirs", void 0), n([a.Prop({default: !0})], d.prototype, "enablePrivateSpace", void 0), n([a.Prop({default: !0})], d.prototype, "enableDelete", void 0), d = n([a.Component], d), t.default = d
}, function (e, t, i) {
    "use strict";
    e.exports = function (e, t) {
        return function () {
            for (var i = new Array(arguments.length), n = 0; n < i.length; n++) i[n] = arguments[n];
            return e.apply(t, i)
        }
    }
}, function (e, t, i) {
    "use strict";
    var n = i(61);
    e.exports = function (e, t, i) {
        var o = i.config.validateStatus;
        i.status && o && !o(i.status) ? t(n("Request failed with status code " + i.status, i.config, null, i.request, i)) : e(i)
    }
}, function (e, t, i) {
    "use strict";
    e.exports = function (e, t, i, n, o) {
        return e.config = t, i && (e.code = i), e.request = n, e.response = o, e
    }
}, function (e, t, i) {
    "use strict";
    var n = i(10);

    function o(e) {
        return encodeURIComponent(e).replace(/%40/gi, "@").replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]")
    }

    e.exports = function (e, t, i) {
        if (!t) return e;
        var r;
        if (i) r = i(t); else if (n.isURLSearchParams(t)) r = t.toString(); else {
            var s = [];
            n.forEach(t, function (e, t) {
                null !== e && void 0 !== e && (n.isArray(e) ? t += "[]" : e = [e], n.forEach(e, function (e) {
                    n.isDate(e) ? e = e.toISOString() : n.isObject(e) && (e = JSON.stringify(e)), s.push(o(t) + "=" + o(e))
                }))
            }), r = s.join("&")
        }
        return r && (e += (-1 === e.indexOf("?") ? "?" : "&") + r), e
    }
}, function (e, t, i) {
    var n = i(35), o = i(56), r = i(62), s = i(98), a = i(76).Writable, l = i(113)("follow-redirects"),
        c = {GET: !0, HEAD: !0, OPTIONS: !0, TRACE: !0}, u = Object.create(null);

    function d(e, t) {
        a.call(this), e.headers = e.headers || {}, this._options = e, this._redirectCount = 0, this._requestBodyLength = 0, this._requestBodyBuffers = [], t && this.on("response", t);
        var i = this;
        if (this._onNativeResponse = function (e) {
            i._processResponse(e)
        }, !e.pathname && e.path) {
            var n = e.path.indexOf("?");
            n < 0 ? e.pathname = e.path : (e.pathname = e.path.substring(0, n), e.search = e.path.substring(n))
        }
        this._performRequest()
    }

    function h(e) {
        var t = {maxRedirects: 21, maxBodyLength: 10485760}, i = {};
        return Object.keys(e).forEach(function (o) {
            var r = o + ":", a = i[r] = e[o], c = t[o] = Object.create(a);
            c.request = function (e, o) {
                return "string" == typeof e ? (e = n.parse(e)).maxRedirects = t.maxRedirects : e = Object.assign({
                    protocol: r,
                    maxRedirects: t.maxRedirects,
                    maxBodyLength: t.maxBodyLength
                }, e), e.nativeProtocols = i, s.equal(e.protocol, r, "protocol mismatch"), l("options", e), new d(e, o)
            }, c.get = function (e, t) {
                var i = c.request(e, t);
                return i.end(), i
            }
        }), t
    }

    ["abort", "aborted", "error", "socket", "timeout"].forEach(function (e) {
        u[e] = function (t) {
            this._redirectable.emit(e, t)
        }
    }), d.prototype = Object.create(a.prototype), d.prototype.write = function (e, t, i) {
        this._requestBodyLength + e.length <= this._options.maxBodyLength ? (this._requestBodyLength += e.length, this._requestBodyBuffers.push({
            data: e,
            encoding: t
        }), this._currentRequest.write(e, t, i)) : (this.emit("error", new Error("Request body larger than maxBodyLength limit")), this.abort())
    }, d.prototype.end = function (e, t, i) {
        var n = this._currentRequest;
        e ? this.write(e, t, function () {
            n.end(null, null, i)
        }) : n.end(null, null, i)
    }, d.prototype.setHeader = function (e, t) {
        this._options.headers[e] = t, this._currentRequest.setHeader(e, t)
    }, d.prototype.removeHeader = function (e) {
        delete this._options.headers[e], this._currentRequest.removeHeader(e)
    }, ["abort", "flushHeaders", "getHeader", "setNoDelay", "setSocketKeepAlive", "setTimeout"].forEach(function (e) {
        d.prototype[e] = function (t, i) {
            return this._currentRequest[e](t, i)
        }
    }), ["aborted", "connection", "socket"].forEach(function (e) {
        Object.defineProperty(d.prototype, e, {
            get: function () {
                return this._currentRequest[e]
            }
        })
    }), d.prototype._performRequest = function () {
        var e = this._options.protocol, t = this._options.nativeProtocols[e];
        if (this._options.agents) {
            var i = e.substr(0, e.length - 1);
            this._options.agent = this._options.agents[i]
        }
        var o = this._currentRequest = t.request(this._options, this._onNativeResponse);
        for (var r in this._currentUrl = n.format(this._options), o._redirectable = this, u) r && o.on(r, u[r]);
        if (this._isRedirect) {
            var s = this._requestBodyBuffers;
            !function e() {
                if (0 !== s.length) {
                    var t = s.pop();
                    o.write(t.data, t.encoding, e)
                } else o.end()
            }()
        }
    }, d.prototype._processResponse = function (e) {
        var t = e.headers.location;
        if (t && !1 !== this._options.followRedirects && e.statusCode >= 300 && e.statusCode < 400) {
            if (++this._redirectCount > this._options.maxRedirects) return void this.emit("error", new Error("Max redirects exceeded."));
            var i, o = this._options.headers;
            if (307 !== e.statusCode && !(this._options.method in c)) for (i in this._options.method = "GET", this._requestBodyBuffers = [], o) /^content-/i.test(i) && delete o[i];
            if (!this._isRedirect) for (i in o) /^host$/i.test(i) && delete o[i];
            var r = n.resolve(this._currentUrl, t);
            l("redirecting to", r), Object.assign(this._options, n.parse(r)), this._isRedirect = !0, this._performRequest()
        } else e.responseUrl = this._currentUrl, this.emit("response", e), this._requestBodyBuffers = []
    }, e.exports = h({http: o, https: r}), e.exports.wrap = h
}, function (e, t) {
    e.exports = require("stream")
}, function (e, t, i) {
    "use strict";
    e.exports = function (e) {
        return !(!e || !e.__CANCEL__)
    }
}, function (e, t, i) {
    "use strict";

    function n(e) {
        this.message = e
    }

    n.prototype.toString = function () {
        return "Cancel" + (this.message ? ": " + this.message : "")
    }, n.prototype.__CANCEL__ = !0, e.exports = n
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        function t(e) {
            let t = e.toString(16).toUpperCase();
            return t.length < 2 && (t = "0" + t), t
        }

        function i(e, i, n, o) {
            return "0x" + t(o) + t(e) + t(i) + t(n)
        }

        e.rgbaStringToHexWith0xBegin = function (e) {
            if (void 0 !== e) {
                let t = e.split(",");
                return i(parseInt(t[0] || "0", 10), parseInt(t[1] || "0", 10), parseInt(t[2] || "0", 10), parseInt(t[3] || "255", 10))
            }
        }, e.colorNumberToHex = t, e.rgbaToHexWith0xBegin = i
    }(t.ColorUtilNS || (t.ColorUtilNS = {}))
}, function (e, t) {
    !function (e) {
        var t,
            i = '<svg><symbol id="td-icon-svg-file" viewBox="0 0 1204 1024"><path d="M180.705882 1024c-102.4 0-180.705882-78.305882-180.705882-180.705882V180.705882c0-102.4 78.305882-180.705882 180.705882-180.705882h240.941177c102.4 0 180.705882 78.305882 180.705882 180.705882h421.647059c102.4 0 180.705882 78.305882 180.705882 180.705883v481.882353c0 102.4-78.305882 180.705882-180.705882 180.705882H180.705882z" fill="#FFC25A" ></path><path d="M301.176471 361.411765h602.352941c66.258824 0 120.470588 54.211765 120.470588 120.470588v361.411765c0 66.258824-54.211765 120.470588-120.470588 120.470588H301.176471c-66.258824 0-120.470588-54.211765-120.470589-120.470588V481.882353c0-66.258824 54.211765-120.470588 120.470589-120.470588z" fill="#FFFFFF" ></path><path d="M180.705882 542.117647h843.294118c102.4 0 180.705882 78.305882 180.705882 180.705882v120.470589c0 102.4-78.305882 180.705882-180.705882 180.705882H180.705882c-102.4 0-180.705882-78.305882-180.705882-180.705882v-120.470589c0-102.4 78.305882-180.705882 180.705882-180.705882z" fill="#FFD68F" ></path></symbol></svg>',
            n = function (e, t) {
                t.firstChild ? function (e, t) {
                    t.parentNode.insertBefore(e, t)
                }(e, t.firstChild) : t.appendChild(e)
            };
        if ((t = document.getElementsByTagName("script"))[t.length - 1].getAttribute("data-injectcss") && !e.__iconfont__svg__cssinject__) {
            e.__iconfont__svg__cssinject__ = !0;
            try {
                document.write("<style>.svgfont {display: inline-block;width: 1em;height: 1em;fill: currentColor;vertical-align: -0.1em;font-size:16px;}</style>")
            } catch (e) {
                console && console.log(e)
            }
        }
        !function (t) {
            if (document.addEventListener) if (~["complete", "loaded", "interactive"].indexOf(document.readyState)) setTimeout(t, 0); else {
                var i = function () {
                    document.removeEventListener("DOMContentLoaded", i, !1), t()
                };
                document.addEventListener("DOMContentLoaded", i, !1)
            } else document.attachEvent && function (e, t) {
                var i = e.document, n = !1, o = function () {
                    n || (n = !0, t())
                }, r = function () {
                    try {
                        i.documentElement.doScroll("left")
                    } catch (e) {
                        return void setTimeout(r, 50)
                    }
                    o()
                };
                r(), i.onreadystatechange = function () {
                    "complete" == i.readyState && (i.onreadystatechange = null, o())
                }
            }(e, t)
        }(function () {
            var e, t;
            (e = document.createElement("div")).innerHTML = i, i = null, (t = e.getElementsByTagName("svg")[0]) && (t.setAttribute("aria-hidden", "true"), t.style.position = "absolute", t.style.width = 0, t.style.height = 0, t.style.overflow = "hidden", n(t, document.body))
        })
    }(window)
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(7), s = i(18);
    !function (e) {
        e.resizeToFitContent = function (e = 0, t = 0, i) {
            return n(this, void 0, void 0, function* () {
                let n = yield r.asyncRemoteCall.getCurrentWindow();
                if (e > 0 && t > 0) window.resizeTo(e, t); else {
                    let e = document.querySelector(".td-dialog");
                    window.resizeTo(e.offsetWidth, e.offsetHeight)
                }
                i && "function" == typeof i && i(), window.requestIdleCallback(() => {
                    n.show()
                })
            })
        }, e.autoAdaptScrollIntoView = function (e, t, i) {
            let n = t.scrollTop, o = t.getBoundingClientRect(), r = e.getBoundingClientRect(), s = o.bottom;
            void 0 !== i && "number" == typeof i && i > 0 && (s = o.top + i), r.top < o.top ? t.scrollTop = n - (o.top - r.top) : r.bottom > s && (t.scrollTop = n + (r.bottom - s))
        }, e.fitWindowPosInParent = function (e, t) {
            return n(this, void 0, void 0, function* () {
                e || (e = yield r.asyncRemoteCall.getCurrentWindow()), t || (t = yield e.getParentWindow());
                let i = (yield e.getNativeWindowHandle()).readUIntLE(0, 4),
                    n = (yield t.getNativeWindowHandle()).readUIntLE(0, 4);
                o.ipcRenderer.sendSync(s.ThunderChannelList.channelRMSetPosition, i, n)
            })
        }, e.getWindowsInParentCenterPos = function (e, t, i) {
            return n(this, void 0, void 0, function* () {
                i || "browser" === process.type || (i = yield r.asyncRemoteCall.getCurrentWindow());
                let n = "browser" !== process.type ? yield i.getPosition() : i.getPosition(),
                    s = "browser" !== process.type ? yield i.getSize() : i.getSize(),
                    a = "browser" !== process.type ? yield r.asyncRemoteCall.getScreen() : o.screen,
                    l = yield a.getCursorScreenPoint(), c = yield a.getDisplayNearestPoint(l), u = c.size.width,
                    d = c.size.height, h = s[0], p = s[1];
                n[0] + h > u && (h = u - n[0]), n[1] + p > d && (p = d - n[1]);
                let f = n[0] + (h - e) / 2, A = n[1] + (p - t) / 2;
                return f < 0 ? f = 0 : f > u - e && (f = u - e), A < 0 ? A = 0 : A > d - t && (A = d - t), [Math.round(f), Math.round(A)]
            })
        }, e.centerWnd = function (e, t, i) {
            do {
                if ("browser" !== process.type) break;
                if (!e || !t) break;
                let n = e.getNativeWindowHandle().readUIntLE(0, 4);
                if (!n) break;
                let r = t.getPosition(), s = t.getSize(), a = e.getSize(), l = o.screen.getCursorScreenPoint(),
                    c = o.screen.getDisplayNearestPoint(l), u = c.scaleFactor, d = c.size.width, h = c.size.height,
                    p = s[0], f = s[1];
                r[0] + p > d && (p = d - r[0]), r[1] + f > h && (f = h - r[1]);
                let A = r[0] + (p - a[0]) / 2, g = r[1] + (f - a[1]) / 2;
                A < 0 ? A = 0 : A > d - a[0] && (A = d - a[0]), g < 0 ? g = 0 : g > h - a[1] && (g = h - a[1]), i.setWindowPos(n, 0, A * u, g * u, 0, 0, 5)
            } while (0)
        }, e.bringWindowToTop = function (e) {
            return n(this, void 0, void 0, function* () {
                if (!e) {
                    let t = yield(yield r.asyncRemoteCall.getCurrentWindow()).getNativeWindowHandle();
                    e = t.readUIntLE(0, 4)
                }
                o.ipcRenderer.send(s.ThunderChannelList.channelMRBringWindowToTop, e)
            })
        }
    }(t.ThunderWindowNS || (t.ThunderWindowNS = {}))
}, function (e, t) {
    var i,
        n = [0, 26, 44, 70, 100, 134, 172, 196, 242, 292, 346, 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085, 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185, 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706];
    t.getSymbolSize = function (e) {
        if (!e) throw new Error('"version" cannot be null or undefined');
        if (e < 1 || e > 40) throw new Error('"version" should be in range from 1 to 40');
        return 4 * e + 17
    }, t.getSymbolTotalCodewords = function (e) {
        return n[e]
    }, t.getBCHDigit = function (e) {
        for (var t = 0; 0 !== e;) t++, e >>>= 1;
        return t
    }, t.setToSJISFunction = function (e) {
        if ("function" != typeof e) throw new Error('"toSJISFunc" is not a valid function.');
        i = e
    }, t.isKanjiModeEnabled = function () {
        return void 0 !== i
    }, t.toSJIS = function (e) {
        return i(e)
    }
}, function (e, t, i) {
    var n = i(182), o = i(183);
    t.NUMERIC = {id: "Numeric", bit: 1, ccBits: [10, 12, 14]}, t.ALPHANUMERIC = {
        id: "Alphanumeric",
        bit: 2,
        ccBits: [9, 11, 13]
    }, t.BYTE = {id: "Byte", bit: 4, ccBits: [8, 16, 16]}, t.KANJI = {
        id: "Kanji",
        bit: 8,
        ccBits: [8, 10, 12]
    }, t.MIXED = {bit: -1}, t.getCharCountIndicator = function (e, t) {
        if (!e.ccBits) throw new Error("Invalid mode: " + e);
        if (!n.isValid(t)) throw new Error("Invalid version: " + t);
        return t >= 1 && t < 10 ? e.ccBits[0] : t < 27 ? e.ccBits[1] : e.ccBits[2]
    }, t.getBestModeForData = function (e) {
        return o.testNumeric(e) ? t.NUMERIC : o.testAlphanumeric(e) ? t.ALPHANUMERIC : o.testKanji(e) ? t.KANJI : t.BYTE
    }, t.toString = function (e) {
        if (e && e.id) return e.id;
        throw new Error("Invalid mode")
    }, t.isValid = function (e) {
        return e && e.bit && e.ccBits
    }, t.from = function (e, i) {
        if (t.isValid(e)) return e;
        try {
            return function (e) {
                if ("string" != typeof e) throw new Error("Param is not a string");
                switch (e.toLowerCase()) {
                    case"numeric":
                        return t.NUMERIC;
                    case"alphanumeric":
                        return t.ALPHANUMERIC;
                    case"kanji":
                        return t.KANJI;
                    case"byte":
                        return t.BYTE;
                    default:
                        throw new Error("Unknown mode: " + e)
                }
            }(e)
        } catch (e) {
            return i
        }
    }
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return e.useNative ? i("select", {
            ref: "selectNative",
            staticClass: "xly-select",
            on: {change: e.onSelect}
        }, e._l(e.filterOptions, function (t) {
            return i("option", {key: t, domProps: {value: t}}, [e._v(e._s(t))])
        })) : i("td-select", e._g(e._b({
            ref: "select",
            attrs: {value: e.value, options: e.filterOptions, position: e.position}
        }, "td-select", e.$attrs, !1), e.$listeners), [e._t("suffix", null, {slot: "suffix"}), e._v(" "), e._t("append", null, {slot: "append"})], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement;
        return (e._self._c || t)("td-select", e._g(e._b({
            ref: "select",
            class: {"is-checked": e.checked},
            attrs: {value: e.value, "custom-menu-enabled": ""},
            on: {"menu-show": e.handleMenuShow}
        }, "td-select", e.$attrs, !1), e.$listeners), [e._t("prefix", null, {slot: "prefix"}), e._v(" "), e._t("suffix", null, {slot: "suffix"}), e._v(" "), e._t("append", null, {slot: "append"})], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, , , , , , , , , , , function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(97), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5), r = i(11);
    let s = class extends o.Vue {
        constructor() {
            super(...arguments), this.tipsText = "", this.isShowTips = !1, this.timerId = null
        }

        handleDocClick() {
            this.tipsText = "", this.isShowTips = !1
        }

        mounted() {
            document.addEventListener("mousedown", this.handleDocClick)
        }

        destroyed() {
            document.removeEventListener("mousedown", this.handleDocClick)
        }

        debounce(e, t) {
            this.timerId && clearTimeout(this.timerId), this.timerId = setTimeout(() => {
                this.timerId = null, e()
            }, t)
        }

        handleInputChangeDebounce(e) {
            this.debounce(() => {
                this.handleInputChange(e)
            }, 500)
        }

        handleInputChange(e) {
            let t = !0;
            do {
                if (this.isAlpha) {
                    if (e.length > 1) {
                        this.tipsText = "最大输入字符个数为1", this.isShowTips = !0, t = !1;
                        break
                    }
                    if (!r.ThunderUtil.isAlpha(e)) {
                        this.tipsText = "只能为字母", this.isShowTips = !0, t = !1;
                        break
                    }
                } else if (this.isNumber) {
                    if (!r.ThunderUtil.isDigital(e)) {
                        this.tipsText = "输入值必须为数字", this.isShowTips = !0, t = !1;
                        break
                    }
                    let i = Number(e);
                    if (void 0 !== this.min && null !== this.min && i < this.min) {
                        this.tipsText = "输入值必须大于等于" + this.min, this.isShowTips = !0, t = !1;
                        break
                    }
                    if (void 0 !== this.max && null !== this.max && i > this.max) {
                        this.tipsText = "输入值必须小于等于" + this.max, this.isShowTips = !0, t = !1;
                        break
                    }
                }
            } while (0);
            t ? this.$emit("input", e) : this.$emit("input", this.value, e)
        }
    };
    n([o.Prop({default: "top"})], s.prototype, "placement", void 0), n([o.Prop({})], s.prototype, "value", void 0), n([o.Prop({default: !1})], s.prototype, "isNumber", void 0), n([o.Prop({})], s.prototype, "max", void 0), n([o.Prop({})], s.prototype, "min", void 0), n([o.Prop({default: !1})], s.prototype, "isAlpha", void 0), s = n([o.Component], s), t.default = s
}, function (e, t) {
    e.exports = require("assert")
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(4), r = i(7), s = i(1).default.getLogger("path-selector"), a = "PathAndCategory",
        l = "historyDownloadPaths", c = 8;

    function u(e) {
        return n(this, void 0, void 0, function* () {
            s.information("SetConfigValue", e), yield o.client.callServerFunction("SetConfigValue", a, l, e), yield o.client.callServerFunction("SaveConfig")
        })
    }

    !function (e) {
        function t() {
            return n(this, void 0, void 0, function* () {
                return yield o.client.callServerFunction("GetConfigValue", a, l, [])
            })
        }

        e.getMaxHistoryPathsLen = function () {
            return c
        }, e.getHistoryPaths = t, e.addHistoryPaths = function (e) {
            return n(this, void 0, void 0, function* () {
                let i = yield t();
                do {
                    if (void 0 === e || null === e || "" === e) break;
                    if ("\\" === e[e.length - 1] && (e = e.slice(0, e.length - 1)), i.includes(e)) break;
                    i.length >= c && i.splice(0, 1), i.push(e), u(i).catch()
                } while (0)
            })
        }, e.deleteHistoryPath = function (e) {
            return n(this, void 0, void 0, function* () {
                let i = yield t();
                do {
                    if (void 0 === e || null === e || "" === e) break;
                    "\\" === e[e.length - 1] && (e = e.slice(0, e.length - 1));
                    let t = i.indexOf(e);
                    if (-1 === t) break;
                    i.splice(t, 1), u(i).catch()
                } while (0)
            })
        }, e.clearHistoryPaths = function () {
            return n(this, void 0, void 0, function* () {
                u([]).catch()
            })
        }, e.getLogicHistoryPaths = function (e = !0, i = !0, o) {
            return n(this, void 0, void 0, function* () {
                let n = [], s = yield r.asyncRemoteCall.getApp(), a = yield s.getPath("desktop"),
                    l = yield s.getPath("documents"), c = [a, l];
                n.push({dir: a, alias: "桌面", canDelete: !1}, {dir: l, alias: "我的文档", canDelete: !1});
                let u = yield t();
                if (void 0 !== u) {
                    let e = u.indexOf(a);
                    -1 !== e && u.splice(e, 1);
                    let t = u.indexOf(l);
                    if (-1 !== t && u.splice(t, 1), u.length > 0) for (let e of u) "\\" !== e[e.length - 1] && (e += "\\"), -1 === c.indexOf(e) && (c.push(e), n.push({
                        dir: e,
                        alias: e,
                        canDelete: i
                    }))
                }
                if (e) {
                    let e = "私人空间";
                    c.includes(e) || n.push({dir: e, alias: e, canDelete: !1})
                }
                if (o) for (let e = o.length - 1; e >= 0; e--) {
                    let t = o[e];
                    "\\" !== t[t.length - 1] && (t += "\\");
                    let r = c.indexOf(t);
                    -1 !== r ? n.unshift(n.splice(r, 1)[0]) : n.unshift({dir: t, alias: t, canDelete: i})
                }
                return n
            })
        }, e.getCloudHistoryPath = function () {
        }
    }(t.HistoryPathsNS || (t.HistoryPathsNS = {}))
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(36), r = i(19), s = i(17), a = i(1).default.getLogger("Thunder.base.tools-utilities"), l = i(2),
        c = i(9).default(l.join(__rootDir, "../bin/ThunderHelper.node"));
    !function (e) {
        function t(e) {
            return n(this, void 0, void 0, function* () {
                let t;
                return t = e && (yield s.FileSystemAWNS.existsAW(e)) ? new Promise(t => {
                    c.asyncCalcuteFileMD5(e, (e, i) => {
                        e ? (i = i.toUpperCase(), t(i)) : t(void 0)
                    })
                }) : new Promise(e => {
                    e(void 0)
                })
            })
        }

        e.genarateMd5 = function (e) {
            let t = void 0, i = o.createHash("md5");
            return null !== i && (t = i.update(e).digest("hex")), t
        }, e.matchFileMd5 = function (e, i) {
            return n(this, void 0, void 0, function* () {
                let n = !1, o = yield t(e);
                return void 0 !== o && o === i.toUpperCase() && (a.information("check full md5 sucessful"), n = !0), n
            })
        }, e.calculateFileMd5Ex = function (e) {
            return n(this, void 0, void 0, function* () {
                let t;
                if (e && (yield s.FileSystemAWNS.existsAW(e))) {
                    let i = r.createReadStream(e), n = o.createHash("md5");
                    i.on("data", e => {
                        n.update(e)
                    }), t = new Promise(e => {
                        i.on("end", () => {
                            let t = n.digest("hex");
                            t = t.toUpperCase(), e(t)
                        })
                    })
                } else t = new Promise(e => {
                    e(void 0)
                });
                return t
            })
        }, e.calculateFileMd5 = t, e.encryptBuffer = function (e, t) {
            let i = null;
            try {
                let n = o.createCipheriv("aes-128-ecb", t, ""), r = n.update(e), s = n.final();
                i = Buffer.concat([r, s])
            } catch (e) {
                a.warning("encryptBuffer", e)
            }
            return i
        }, e.decryptBuffer = function (e, t) {
            let i = null;
            try {
                let n = o.createDecipheriv("aes-128-ecb", t, ""), r = n.update(e), s = n.final();
                i = Buffer.concat([r, s])
            } catch (e) {
                a.warning("decryptBuffer", e)
            }
            return i
        }, e.encryptSha1Buffer = function (e) {
            let t = null;
            try {
                t = o.createHash("sha1").update(e).digest("hex")
            } catch (e) {
                a.warning("encryptSha1Buffer", e)
            }
            return t
        }, e.encryptHmacBuffer = function (e, t, i, n = "hex") {
            let r = null;
            try {
                r = o.createHmac(e, t).update(i, "utf8").digest(n)
            } catch (e) {
                a.warning("encryptSha1Buffer", e)
            }
            return r
        }, e.setForegroundWindow = function (e, t) {
            return n(this, void 0, void 0, function* () {
                if (null !== e && null !== t) {
                    let i = void 0, o = [];
                    "renderer" === process.type ? (i = yield t.getNativeWindowHandle(), o = yield t.getChildWindows()) : (i = t.getNativeWindowHandle(), o = t.getChildWindows());
                    let r = [];
                    for (let e = 0; e < o.length; ++e) {
                        let t = o[e], i = !1;
                        "renderer" === process.type ? (yield t.isDestroyed()) || (i = yield t.isAlwaysOnTop()) : t.isDestroyed() || (i = t.isAlwaysOnTop()), i && r.push(t)
                    }
                    let s = i.readUIntLE(0, 4);
                    e.setForegroundWindow(s) ? a.information("setForegroundWindow sucessful") : a.information("setForegroundWindow failed"), r.forEach(e => n(this, void 0, void 0, function* () {
                        "renderer" === process.type ? (yield e.isDestroyed()) || e.setAlwaysOnTop(!0).catch() : e.isDestroyed() || e.setAlwaysOnTop(!0)
                    }))
                }
            })
        }
    }(t.ToolsUtilitiesAWNS || (t.ToolsUtilitiesAWNS = {}))
}, function (e, t, i) {
    e.exports = i(40).Buffer
}, function (e, t, i) {
    e.exports = i(8)(26)
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(84), o = i(67);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\components\\select-native.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(10), o = i(71), r = i(106), s = i(60);

    function a(e) {
        var t = new r(e), i = o(r.prototype.request, t);
        return n.extend(i, r.prototype, t), n.extend(i, t), i
    }

    var l = a(s);
    l.Axios = r, l.create = function (e) {
        return a(n.merge(s, e))
    }, l.Cancel = i(78), l.CancelToken = i(122), l.isCancel = i(77), l.all = function (e) {
        return Promise.all(e)
    }, l.spread = i(123), e.exports = l, e.exports.default = l
}, function (e, t) {
    function i(e) {
        return !!e.constructor && "function" == typeof e.constructor.isBuffer && e.constructor.isBuffer(e)
    }

    /*!
 * Determine if an object is a Buffer
 *
 * @author   Feross Aboukhadijeh <https://feross.org>
 * @license  MIT
 */
    e.exports = function (e) {
        return null != e && (i(e) || function (e) {
            return "function" == typeof e.readFloatLE && "function" == typeof e.slice && i(e.slice(0, 0))
        }(e) || !!e._isBuffer)
    }
}, function (e, t, i) {
    "use strict";
    var n = i(60), o = i(10), r = i(117), s = i(118);

    function a(e) {
        this.defaults = e, this.interceptors = {request: new r, response: new r}
    }

    a.prototype.request = function (e) {
        "string" == typeof e && (e = o.merge({url: arguments[0]}, arguments[1])), (e = o.merge(n, {method: "get"}, this.defaults, e)).method = e.method.toLowerCase();
        var t = [s, void 0], i = Promise.resolve(e);
        for (this.interceptors.request.forEach(function (e) {
            t.unshift(e.fulfilled, e.rejected)
        }), this.interceptors.response.forEach(function (e) {
            t.push(e.fulfilled, e.rejected)
        }); t.length;) i = i.then(t.shift(), t.shift());
        return i
    }, o.forEach(["delete", "get", "head", "options"], function (e) {
        a.prototype[e] = function (t, i) {
            return this.request(o.merge(i || {}, {method: e, url: t}))
        }
    }), o.forEach(["post", "put", "patch"], function (e) {
        a.prototype[e] = function (t, i, n) {
            return this.request(o.merge(n || {}, {method: e, url: t, data: i}))
        }
    }), e.exports = a
}, function (e, t, i) {
    "use strict";
    var n = i(10);
    e.exports = function (e, t) {
        n.forEach(e, function (i, n) {
            n !== t && n.toUpperCase() === t.toUpperCase() && (e[t] = i, delete e[n])
        })
    }
}, function (e, t, i) {
    "use strict";
    var n = i(10), o = i(72), r = i(74), s = i(109), a = i(110), l = i(61),
        c = "undefined" != typeof window && window.btoa && window.btoa.bind(window) || i(111);
    e.exports = function (e) {
        return new Promise(function (t, u) {
            var d = e.data, h = e.headers;
            n.isFormData(d) && delete h["Content-Type"];
            var p = new XMLHttpRequest, f = "onreadystatechange", A = !1;
            if ("undefined" == typeof window || !window.XDomainRequest || "withCredentials" in p || a(e.url) || (p = new window.XDomainRequest, f = "onload", A = !0, p.onprogress = function () {
            }, p.ontimeout = function () {
            }), e.auth) {
                var g = e.auth.username || "", v = e.auth.password || "";
                h.Authorization = "Basic " + c(g + ":" + v)
            }
            if (p.open(e.method.toUpperCase(), r(e.url, e.params, e.paramsSerializer), !0), p.timeout = e.timeout, p[f] = function () {
                if (p && (4 === p.readyState || A) && (0 !== p.status || p.responseURL && 0 === p.responseURL.indexOf("file:"))) {
                    var i = "getAllResponseHeaders" in p ? s(p.getAllResponseHeaders()) : null, n = {
                        data: e.responseType && "text" !== e.responseType ? p.response : p.responseText,
                        status: 1223 === p.status ? 204 : p.status,
                        statusText: 1223 === p.status ? "No Content" : p.statusText,
                        headers: i,
                        config: e,
                        request: p
                    };
                    o(t, u, n), p = null
                }
            }, p.onerror = function () {
                u(l("Network Error", e, null, p)), p = null
            }, p.ontimeout = function () {
                u(l("timeout of " + e.timeout + "ms exceeded", e, "ECONNABORTED", p)), p = null
            }, n.isStandardBrowserEnv()) {
                var m = i(112),
                    C = (e.withCredentials || a(e.url)) && e.xsrfCookieName ? m.read(e.xsrfCookieName) : void 0;
                C && (h[e.xsrfHeaderName] = C)
            }
            if ("setRequestHeader" in p && n.forEach(h, function (e, t) {
                void 0 === d && "content-type" === t.toLowerCase() ? delete h[t] : p.setRequestHeader(t, e)
            }), e.withCredentials && (p.withCredentials = !0), e.responseType) try {
                p.responseType = e.responseType
            } catch (t) {
                if ("json" !== e.responseType) throw t
            }
            "function" == typeof e.onDownloadProgress && p.addEventListener("progress", e.onDownloadProgress), "function" == typeof e.onUploadProgress && p.upload && p.upload.addEventListener("progress", e.onUploadProgress), e.cancelToken && e.cancelToken.promise.then(function (e) {
                p && (p.abort(), u(e), p = null)
            }), void 0 === d && (d = null), p.send(d)
        })
    }
}, function (e, t, i) {
    "use strict";
    var n = i(10),
        o = ["age", "authorization", "content-length", "content-type", "etag", "expires", "from", "host", "if-modified-since", "if-unmodified-since", "last-modified", "location", "max-forwards", "proxy-authorization", "referer", "retry-after", "user-agent"];
    e.exports = function (e) {
        var t, i, r, s = {};
        return e ? (n.forEach(e.split("\n"), function (e) {
            if (r = e.indexOf(":"), t = n.trim(e.substr(0, r)).toLowerCase(), i = n.trim(e.substr(r + 1)), t) {
                if (s[t] && o.indexOf(t) >= 0) return;
                s[t] = "set-cookie" === t ? (s[t] ? s[t] : []).concat([i]) : s[t] ? s[t] + ", " + i : i
            }
        }), s) : s
    }
}, function (e, t, i) {
    "use strict";
    var n = i(10);
    e.exports = n.isStandardBrowserEnv() ? function () {
        var e, t = /(msie|trident)/i.test(navigator.userAgent), i = document.createElement("a");

        function o(e) {
            var n = e;
            return t && (i.setAttribute("href", n), n = i.href), i.setAttribute("href", n), {
                href: i.href,
                protocol: i.protocol ? i.protocol.replace(/:$/, "") : "",
                host: i.host,
                search: i.search ? i.search.replace(/^\?/, "") : "",
                hash: i.hash ? i.hash.replace(/^#/, "") : "",
                hostname: i.hostname,
                port: i.port,
                pathname: "/" === i.pathname.charAt(0) ? i.pathname : "/" + i.pathname
            }
        }

        return e = o(window.location.href), function (t) {
            var i = n.isString(t) ? o(t) : t;
            return i.protocol === e.protocol && i.host === e.host
        }
    }() : function () {
        return !0
    }
}, function (e, t, i) {
    "use strict";
    var n = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

    function o() {
        this.message = "String contains an invalid character"
    }

    o.prototype = new Error, o.prototype.code = 5, o.prototype.name = "InvalidCharacterError", e.exports = function (e) {
        for (var t, i, r = String(e), s = "", a = 0, l = n; r.charAt(0 | a) || (l = "=", a % 1); s += l.charAt(63 & t >> 8 - a % 1 * 8)) {
            if ((i = r.charCodeAt(a += .75)) > 255) throw new o;
            t = t << 8 | i
        }
        return s
    }
}, function (e, t, i) {
    "use strict";
    var n = i(10);
    e.exports = n.isStandardBrowserEnv() ? {
        write: function (e, t, i, o, r, s) {
            var a = [];
            a.push(e + "=" + encodeURIComponent(t)), n.isNumber(i) && a.push("expires=" + new Date(i).toGMTString()), n.isString(o) && a.push("path=" + o), n.isString(r) && a.push("domain=" + r), !0 === s && a.push("secure"), document.cookie = a.join("; ")
        }, read: function (e) {
            var t = document.cookie.match(new RegExp("(^|;\\s*)(" + e + ")=([^;]*)"));
            return t ? decodeURIComponent(t[3]) : null
        }, remove: function (e) {
            this.write(e, "", Date.now() - 864e5)
        }
    } : {
        write: function () {
        }, read: function () {
            return null
        }, remove: function () {
        }
    }
}, function (e, t, i) {
    function n() {
        var e;
        try {
            e = t.storage.debug
        } catch (e) {
        }
        return !e && "undefined" != typeof process && "env" in process && (e = process.env.DEBUG), e
    }

    (t = e.exports = i(114)).log = function () {
        return "object" == typeof console && console.log && Function.prototype.apply.call(console.log, console, arguments)
    }, t.formatArgs = function (e) {
        var i = this.useColors;
        if (e[0] = (i ? "%c" : "") + this.namespace + (i ? " %c" : " ") + e[0] + (i ? "%c " : " ") + "+" + t.humanize(this.diff), !i) return;
        var n = "color: " + this.color;
        e.splice(1, 0, n, "color: inherit");
        var o = 0, r = 0;
        e[0].replace(/%[a-zA-Z%]/g, function (e) {
            "%%" !== e && "%c" === e && (r = ++o)
        }), e.splice(r, 0, n)
    }, t.save = function (e) {
        try {
            null == e ? t.storage.removeItem("debug") : t.storage.debug = e
        } catch (e) {
        }
    }, t.load = n, t.useColors = function () {
        if ("undefined" != typeof window && window.process && "renderer" === window.process.type) return !0;
        if ("undefined" != typeof navigator && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) return !1;
        return "undefined" != typeof document && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || "undefined" != typeof window && window.console && (window.console.firebug || window.console.exception && window.console.table) || "undefined" != typeof navigator && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || "undefined" != typeof navigator && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)
    }, t.storage = "undefined" != typeof chrome && void 0 !== chrome.storage ? chrome.storage.local : function () {
        try {
            return window.localStorage
        } catch (e) {
        }
    }(), t.colors = ["#0000CC", "#0000FF", "#0033CC", "#0033FF", "#0066CC", "#0066FF", "#0099CC", "#0099FF", "#00CC00", "#00CC33", "#00CC66", "#00CC99", "#00CCCC", "#00CCFF", "#3300CC", "#3300FF", "#3333CC", "#3333FF", "#3366CC", "#3366FF", "#3399CC", "#3399FF", "#33CC00", "#33CC33", "#33CC66", "#33CC99", "#33CCCC", "#33CCFF", "#6600CC", "#6600FF", "#6633CC", "#6633FF", "#66CC00", "#66CC33", "#9900CC", "#9900FF", "#9933CC", "#9933FF", "#99CC00", "#99CC33", "#CC0000", "#CC0033", "#CC0066", "#CC0099", "#CC00CC", "#CC00FF", "#CC3300", "#CC3333", "#CC3366", "#CC3399", "#CC33CC", "#CC33FF", "#CC6600", "#CC6633", "#CC9900", "#CC9933", "#CCCC00", "#CCCC33", "#FF0000", "#FF0033", "#FF0066", "#FF0099", "#FF00CC", "#FF00FF", "#FF3300", "#FF3333", "#FF3366", "#FF3399", "#FF33CC", "#FF33FF", "#FF6600", "#FF6633", "#FF9900", "#FF9933", "#FFCC00", "#FFCC33"], t.formatters.j = function (e) {
        try {
            return JSON.stringify(e)
        } catch (e) {
            return "[UnexpectedJSONParseError]: " + e.message
        }
    }, t.enable(n())
}, function (e, t, i) {
    function n(e) {
        var i;

        function n() {
            if (n.enabled) {
                var e = n, o = +new Date, r = o - (i || o);
                e.diff = r, e.prev = i, e.curr = o, i = o;
                for (var s = new Array(arguments.length), a = 0; a < s.length; a++) s[a] = arguments[a];
                s[0] = t.coerce(s[0]), "string" != typeof s[0] && s.unshift("%O");
                var l = 0;
                s[0] = s[0].replace(/%([a-zA-Z%])/g, function (i, n) {
                    if ("%%" === i) return i;
                    l++;
                    var o = t.formatters[n];
                    if ("function" == typeof o) {
                        var r = s[l];
                        i = o.call(e, r), s.splice(l, 1), l--
                    }
                    return i
                }), t.formatArgs.call(e, s), (n.log || t.log || console.log.bind(console)).apply(e, s)
            }
        }

        return n.namespace = e, n.enabled = t.enabled(e), n.useColors = t.useColors(), n.color = function (e) {
            var i, n = 0;
            for (i in e) n = (n << 5) - n + e.charCodeAt(i), n |= 0;
            return t.colors[Math.abs(n) % t.colors.length]
        }(e), n.destroy = o, "function" == typeof t.init && t.init(n), t.instances.push(n), n
    }

    function o() {
        var e = t.instances.indexOf(this);
        return -1 !== e && (t.instances.splice(e, 1), !0)
    }

    (t = e.exports = n.debug = n.default = n).coerce = function (e) {
        return e instanceof Error ? e.stack || e.message : e
    }, t.disable = function () {
        t.enable("")
    }, t.enable = function (e) {
        var i;
        t.save(e), t.names = [], t.skips = [];
        var n = ("string" == typeof e ? e : "").split(/[\s,]+/), o = n.length;
        for (i = 0; i < o; i++) n[i] && ("-" === (e = n[i].replace(/\*/g, ".*?"))[0] ? t.skips.push(new RegExp("^" + e.substr(1) + "$")) : t.names.push(new RegExp("^" + e + "$")));
        for (i = 0; i < t.instances.length; i++) {
            var r = t.instances[i];
            r.enabled = t.enabled(r.namespace)
        }
    }, t.enabled = function (e) {
        if ("*" === e[e.length - 1]) return !0;
        var i, n;
        for (i = 0, n = t.skips.length; i < n; i++) if (t.skips[i].test(e)) return !1;
        for (i = 0, n = t.names.length; i < n; i++) if (t.names[i].test(e)) return !0;
        return !1
    }, t.humanize = i(115), t.instances = [], t.names = [], t.skips = [], t.formatters = {}
}, function (e, t) {
    var i = 1e3, n = 60 * i, o = 60 * n, r = 24 * o, s = 365.25 * r;

    function a(e, t, i) {
        if (!(e < t)) return e < 1.5 * t ? Math.floor(e / t) + " " + i : Math.ceil(e / t) + " " + i + "s"
    }

    e.exports = function (e, t) {
        t = t || {};
        var l, c = typeof e;
        if ("string" === c && e.length > 0) return function (e) {
            if ((e = String(e)).length > 100) return;
            var t = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);
            if (!t) return;
            var a = parseFloat(t[1]);
            switch ((t[2] || "ms").toLowerCase()) {
                case"years":
                case"year":
                case"yrs":
                case"yr":
                case"y":
                    return a * s;
                case"days":
                case"day":
                case"d":
                    return a * r;
                case"hours":
                case"hour":
                case"hrs":
                case"hr":
                case"h":
                    return a * o;
                case"minutes":
                case"minute":
                case"mins":
                case"min":
                case"m":
                    return a * n;
                case"seconds":
                case"second":
                case"secs":
                case"sec":
                case"s":
                    return a * i;
                case"milliseconds":
                case"millisecond":
                case"msecs":
                case"msec":
                case"ms":
                    return a;
                default:
                    return
            }
        }(e);
        if ("number" === c && !1 === isNaN(e)) return t.long ? a(l = e, r, "day") || a(l, o, "hour") || a(l, n, "minute") || a(l, i, "second") || l + " ms" : function (e) {
            if (e >= r) return Math.round(e / r) + "d";
            if (e >= o) return Math.round(e / o) + "h";
            if (e >= n) return Math.round(e / n) + "m";
            if (e >= i) return Math.round(e / i) + "s";
            return e + "ms"
        }(e);
        throw new Error("val is not a non-empty string or a valid number. val=" + JSON.stringify(e))
    }
}, function (e) {
    e.exports = {
        _args: [["axios@0.18.0", "D:\\thunder11\\trunk\\build\\app"]],
        _from: "axios@0.18.0",
        _id: "axios@0.18.0",
        _inBundle: !1,
        _integrity: "sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI=",
        _location: "/axios",
        _phantomChildren: {},
        _requested: {
            type: "version",
            registry: !0,
            raw: "axios@0.18.0",
            name: "axios",
            escapedName: "axios",
            rawSpec: "0.18.0",
            saveSpec: null,
            fetchSpec: "0.18.0"
        },
        _requiredBy: ["/", "/@types/axios", "/@xunlei/thunderx-login-main"],
        _resolved: "http://xnpm.repo.xunlei.cn/axios/-/axios-0.18.0.tgz",
        _spec: "0.18.0",
        _where: "D:\\thunder11\\trunk\\build\\app",
        author: {name: "Matt Zabriskie"},
        browser: {"./lib/adapters/http.js": "./lib/adapters/xhr.js"},
        bugs: {url: "https://github.com/axios/axios/issues"},
        bundlesize: [{path: "./dist/axios.min.js", threshold: "5kB"}],
        dependencies: {"follow-redirects": "^1.3.0", "is-buffer": "^1.1.5"},
        description: "Promise based HTTP client for the browser and node.js",
        devDependencies: {
            bundlesize: "^0.5.7",
            coveralls: "^2.11.9",
            "es6-promise": "^4.0.5",
            grunt: "^1.0.1",
            "grunt-banner": "^0.6.0",
            "grunt-cli": "^1.2.0",
            "grunt-contrib-clean": "^1.0.0",
            "grunt-contrib-nodeunit": "^1.0.0",
            "grunt-contrib-watch": "^1.0.0",
            "grunt-eslint": "^19.0.0",
            "grunt-karma": "^2.0.0",
            "grunt-ts": "^6.0.0-beta.3",
            "grunt-webpack": "^1.0.18",
            "istanbul-instrumenter-loader": "^1.0.0",
            "jasmine-core": "^2.4.1",
            karma: "^1.3.0",
            "karma-chrome-launcher": "^2.0.0",
            "karma-coverage": "^1.0.0",
            "karma-firefox-launcher": "^1.0.0",
            "karma-jasmine": "^1.0.2",
            "karma-jasmine-ajax": "^0.1.13",
            "karma-opera-launcher": "^1.0.0",
            "karma-safari-launcher": "^1.0.0",
            "karma-sauce-launcher": "^1.1.0",
            "karma-sinon": "^1.0.5",
            "karma-sourcemap-loader": "^0.3.7",
            "karma-webpack": "^1.7.0",
            "load-grunt-tasks": "^3.5.2",
            minimist: "^1.2.0",
            sinon: "^1.17.4",
            typescript: "^2.0.3",
            "url-search-params": "^0.6.1",
            webpack: "^1.13.1",
            "webpack-dev-server": "^1.14.1"
        },
        homepage: "https://github.com/axios/axios",
        keywords: ["xhr", "http", "ajax", "promise", "node"],
        license: "MIT",
        main: "index.js",
        name: "axios",
        repository: {type: "git", url: "git+https://github.com/axios/axios.git"},
        scripts: {
            build: "NODE_ENV=production grunt build",
            coveralls: "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
            examples: "node ./examples/server.js",
            postversion: "git push && git push --tags",
            preversion: "npm test",
            start: "node ./sandbox/server.js",
            test: "grunt test && bundlesize",
            version: "npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json"
        },
        typings: "./index.d.ts",
        version: "0.18.0"
    }
}, function (e, t, i) {
    "use strict";
    var n = i(10);

    function o() {
        this.handlers = []
    }

    o.prototype.use = function (e, t) {
        return this.handlers.push({fulfilled: e, rejected: t}), this.handlers.length - 1
    }, o.prototype.eject = function (e) {
        this.handlers[e] && (this.handlers[e] = null)
    }, o.prototype.forEach = function (e) {
        n.forEach(this.handlers, function (t) {
            null !== t && e(t)
        })
    }, e.exports = o
}, function (e, t, i) {
    "use strict";
    var n = i(10), o = i(119), r = i(77), s = i(60), a = i(120), l = i(121);

    function c(e) {
        e.cancelToken && e.cancelToken.throwIfRequested()
    }

    e.exports = function (e) {
        return c(e), e.baseURL && !a(e.url) && (e.url = l(e.baseURL, e.url)), e.headers = e.headers || {}, e.data = o(e.data, e.headers, e.transformRequest), e.headers = n.merge(e.headers.common || {}, e.headers[e.method] || {}, e.headers || {}), n.forEach(["delete", "get", "head", "post", "put", "patch", "common"], function (t) {
            delete e.headers[t]
        }), (e.adapter || s.adapter)(e).then(function (t) {
            return c(e), t.data = o(t.data, t.headers, e.transformResponse), t
        }, function (t) {
            return r(t) || (c(e), t && t.response && (t.response.data = o(t.response.data, t.response.headers, e.transformResponse))), Promise.reject(t)
        })
    }
}, function (e, t, i) {
    "use strict";
    var n = i(10);
    e.exports = function (e, t, i) {
        return n.forEach(i, function (i) {
            e = i(e, t)
        }), e
    }
}, function (e, t, i) {
    "use strict";
    e.exports = function (e) {
        return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)
    }
}, function (e, t, i) {
    "use strict";
    e.exports = function (e, t) {
        return t ? e.replace(/\/+$/, "") + "/" + t.replace(/^\/+/, "") : e
    }
}, function (e, t, i) {
    "use strict";
    var n = i(78);

    function o(e) {
        if ("function" != typeof e) throw new TypeError("executor must be a function.");
        var t;
        this.promise = new Promise(function (e) {
            t = e
        });
        var i = this;
        e(function (e) {
            i.reason || (i.reason = new n(e), t(i.reason))
        })
    }

    o.prototype.throwIfRequested = function () {
        if (this.reason) throw this.reason
    }, o.source = function () {
        var e;
        return {
            token: new o(function (t) {
                e = t
            }), cancel: e
        }
    }, e.exports = o
}, function (e, t, i) {
    "use strict";
    e.exports = function (e) {
        return function (t) {
            return e.apply(null, t)
        }
    }
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(1), r = i(4), s = i(41), a = o.default.getLogger("Thunder.ShouldLogin");
    t.default = function (e = !1, t = !1, i) {
        return n(this, void 0, void 0, function* () {
            let n, o = null;
            try {
                let l = yield r.client.callServerFunction("IsLogined"),
                    c = yield r.client.callServerFunction("GetUserID");
                l ? (a.information("is logined"), n = Promise.resolve(c)) : (n = new Promise((i, n) => {
                    let r = -1;
                    if (r = s.NativeCallModule.nativeCall.AttachNativeEvent("OnUserLogin", e => {
                        let t = Date.now();
                        a.information("On UserLogin", e, t, o), o && Math.floor(t - o) > 3e5 ? i("") : i(e), -1 !== r && (s.NativeCallModule.nativeCall.DetachNativeEvent("OnUserLogin", r), r = -1)
                    }), !e) {
                        let e = s.NativeCallModule.nativeCall.AttachNativeEvent("OnLoginWndClose", n => {
                            do {
                                if ("close" === n) {
                                    if (i(""), !t && -1 !== r) {
                                        s.NativeCallModule.nativeCall.DetachNativeEvent("OnUserLogin", r), r = -1;
                                        break
                                    }
                                } else if ("suc" === n && -1 !== r) break;
                                t && -1 !== r && (s.NativeCallModule.nativeCall.DetachNativeEvent("OnUserLogin", r), r = -1)
                            } while (0);
                            s.NativeCallModule.nativeCall.DetachNativeEvent("OnLoginWndClose", e)
                        })
                    }
                }), e || (o = Date.now(), r.client.callServerFunction("ShowLoginDlg", i).catch(e => {
                    a.warning(e)
                })))
            } catch (e) {
                a.warning(e), n = Promise.resolve("")
            }
            return n
        })
    }
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(2), r = i(16), s = i(22);
    let a = null;
    const l = i(1).default.getLogger("url.helper");
    !function (e) {
        function t(e) {
            let t = !0;
            if ("string" == typeof e) if (40 === e.length || 32 === e.length) {
                for (let i = 0; i < e.length; i++) if (e.charCodeAt(i) > 127) {
                    t = !1;
                    break
                }
            } else t = !1; else t = !1;
            return t
        }

        function c(e, i = !0) {
            i = void 0 === i || i;
            let n = !1;
            do {
                if ("string" != typeof e || "" === e) break;
                let o = e.trim();
                if ("" === o) break;
                if (s.ThunderHelper.getTaskTypeFromUrl(o) === r.DownloadKernel.TaskType.Unkown) {
                    if (!i) break;
                    t(o) && (n = !0)
                } else n = !0;
                n || o.match(/^file:\/\/\//) && (n = !0)
            } while (0);
            return n
        }

        e.isMagnetCode = t, e.fixMagnetUrl = function (e) {
            let i = "";
            do {
                if ("string" != typeof e || "" === e) break;
                if ("" === (i = e.trim())) break;
                s.ThunderHelper.getTaskTypeFromUrl(i) === r.DownloadKernel.TaskType.Unkown && t(i) && (i = "magnet:?xt=urn:btih:" + i)
            } while (0);
            return i
        }, e.isUrlValid = c, e.isBirdKey = function (e) {
            return e ? e.match(/#[Xx]([0-9a-zA-Z])+#/g) : null
        }, e.isYunFetchBackTask = function (e) {
            return e ? e.match(/#\$ThunderPanFetchBack:([\s\S]+)\$#/) : null
        }, e.isCustomProtocol = function (e) {
            return n(this, void 0, void 0, function* () {
                let t = !1;
                null === a && (a = yield Promise.resolve().then(() => i(35)));
                let n = a.parse(e);
                do {
                    if (null === n || void 0 === n) break;
                    let e = n.protocol;
                    if ("magnet:" === e) {
                        t = !0;
                        break
                    }
                    if ("thunder:" === e) {
                        t = !0;
                        break
                    }
                    if ("ed2k:" === e) {
                        t = !0;
                        break
                    }
                } while (0);
                return t
            })
        }, e.isP2spOrEmuleUrl = function (e) {
            let t = !1;
            do {
                if (null === e || void 0 === e || "" === e) break;
                let i = e.trim();
                if ("" === i) break;
                let n = s.ThunderHelper.getTaskTypeFromUrl(i);
                if (n === r.DownloadKernel.TaskType.P2sp || n === r.DownloadKernel.TaskType.Emule) {
                    t = !0;
                    break
                }
            } while (0);
            return t
        }, e.isSupportUrl = function (e) {
            e = e.toLowerCase();
            let t = !1;
            do {
                if ("http://" === e.substr(0, "http://".length)) {
                    t = !0;
                    break
                }
                if ("https://" === e.substr(0, "https://".length)) {
                    t = !0;
                    break
                }
                if ("ftp://" === e.substr(0, "ftp://".length)) {
                    t = !0;
                    break
                }
                if ("ed2k://" === e.substr(0, "ed2k://".length)) {
                    t = !0;
                    break
                }
                if ("thunder://" === e.substr(0, "thunder://".length)) {
                    t = !0;
                    break
                }
                if ("magnet:?" === e.substr(0, "magnet:?".length)) {
                    t = !0;
                    break
                }
            } while (0);
            return t
        };
        let u = ".edu;.gov;.mil;.hk;.tw;.com.tw;.com.tw;.aero;.biz;.coop;.info;.museum;.name;.pro;";
        u += ".com;.cn;.xin;.net;.top;.xyz;.wang;.shop;.site;.club;.cc;.fun;.online;.biz;.red;.link;.ltd;.mobi;.info;.org;", u += ".com.cn;.net.cn;.org.cn;.gov.cn;.name;.vip;.work;.tv;.co;.kim;.group;.tech;.store;.ren;.ink;.pub;.live;.wiki;.design;";
        const d = (u += ".me").split(";");

        function h(e) {
            let t = !1;
            do {
                if (void 0 === e || null === e || "" === e) break;
                if (-1 !== d.indexOf(e)) {
                    t = !0;
                    break
                }
            } while (0);
            return t
        }

        function p(e) {
            let t = null;
            do {
                if (void 0 === e || null === e) break;
                if ("" === (e = e.trim())) break;
                let i = /^(?:([A-Za-z]+):)?(\/{0,3})([0-9.\-A-Za-z]+)(?::(\d+))?(?:\/([^?#]*))?(?:\?([^#]*))?(?:#(.*))?$/.exec(e);
                if (null === i) break;
                l.information("url parse result ", i), t = {};
                let n = ["url", "scheme", "slash", "host", "port", "path", "query", "hash"];
                for (let e = 0; e < n.length; e++) t[n[e]] = i[e];
                l.information("url parse", t)
            } while (0);
            return t
        }

        e.isUsualDomainSuffix = h, e.urlParse = p, e.isUrl = function (e) {
            let t = !1, i = e;
            do {
                if (void 0 === e || null === e) break;
                if (c(e, !1)) {
                    t = !0;
                    break
                }
                if (e.trim().match(/^file:\/\/\//)) {
                    t = !0;
                    break
                }
                let n = p(e);
                if (null === n) {
                    l.information("url parse failed");
                    break
                }
                if (void 0 === n.host || null === n.host) break;
                if (void 0 !== n.scheme) {
                    t = !0;
                    break
                }
                let r = n.host.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/);
                if (r) {
                    if (l.information("url parse is ip", r), Number(r[1]) <= 0 || Number(r[1]) > 255) {
                        t = !1;
                        break
                    }
                    if (Number(r[2]) < 0 || Number(r[2]) > 255) {
                        t = !1;
                        break
                    }
                    if (Number(r[4]) < 0 || Number(r[4]) > 255) {
                        t = !1;
                        break
                    }
                    if (Number(r[4]) < 0 || Number(r[4]) > 255) {
                        t = !1;
                        break
                    }
                    t = !0, void 0 === n.scheme && void 0 !== n.port && (i = `http://${e}`);
                    break
                }
                if (n.host.match(/\.{2,}/)) {
                    l.information("url parse has multi dot"), t = !1;
                    break
                }
                let s = o.extname(n.host);
                if ("" === s) break;
                if (h(s)) {
                    t = !0;
                    break
                }
            } while (0);
            return l.information("url parse isUrl", t), {ret: t, suggest: i}
        }, e.isFileNameValid = function (e) {
            let t = !1;
            do {
                if (void 0 === e) break;
                if (null === e) break;
                if ("" === (e = e.trim())) break;
                if ("." === e[0]) break;
                if (e.match(/[\/\\"<>\?\*|]/)) break;
                t = !0
            } while (0);
            return t
        }, e.isSuffixNeedDownload = function (e) {
            let t = !0;
            do {
                if (void 0 === e) break;
                if ("" === e || "." === e) break;
                if (e = e.toLowerCase(), -1 !== ["txt", "url", "html", "htm", "mht", "nfo"].indexOf(e)) {
                    t = !1;
                    break
                }
            } while (0);
            return t
        }
    }(t.URLHelperNS || (t.URLHelperNS = {}))
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(4);
    !function (e) {
        e.getValue = function (e, t, i) {
            return n(this, void 0, void 0, function* () {
                return yield o.client.callServerFunction("GetConfigValue", e, t, i)
            })
        }, e.setValue = function (e, t, i) {
            return n(this, void 0, void 0, function* () {
                yield o.client.callServerFunction("SetConfigValue", e, t, i)
            })
        }
    }(t.ConfigHelperNS || (t.ConfigHelperNS = {}))
}, function (e, t, i) {
    "use strict";
    e.exports = {
        PNG_SIGNATURE: [137, 80, 78, 71, 13, 10, 26, 10],
        TYPE_IHDR: 1229472850,
        TYPE_IEND: 1229278788,
        TYPE_IDAT: 1229209940,
        TYPE_PLTE: 1347179589,
        TYPE_tRNS: 1951551059,
        TYPE_gAMA: 1732332865,
        COLORTYPE_GRAYSCALE: 0,
        COLORTYPE_PALETTE: 1,
        COLORTYPE_COLOR: 2,
        COLORTYPE_ALPHA: 4,
        COLORTYPE_PALETTE_COLOR: 3,
        COLORTYPE_COLOR_ALPHA: 6,
        COLORTYPE_TO_BPP_MAP: {0: 1, 2: 3, 3: 1, 4: 2, 6: 4},
        GAMMA_DIVISION: 1e5
    }
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(7);
    !function (e) {
        let t;
        !function (e) {
            e.Info = "info", e.Warning = "warning", e.Error = "error", e.Success = "success"
        }(t = e.ConfirmType || (e.ConfirmType = {})), e.confirm = function (e, t = {}) {
            return n(this, void 0, void 0, function* () {
                let i = String(Math.random()).replace(/\D/, "");
                o.ipcRenderer.send("message-box-confirm-create", {options: e, dialogConf: t, boxId: i});
                let n = yield r.asyncRemoteCall.getIpcMain();
                return n.once(`message-box-init-${i}`, t => {
                    t.sender.send("message-box-init-reply", {popType: "confirm", options: e})
                }), new Promise(e => {
                    n.once(`message-box-resolve-${i}`, (t, i, n) => {
                        e({action: i, checkboxChecked: n})
                    })
                })
            })
        }, e.pop = function (e, t = {}) {
            return n(this, void 0, void 0, function* () {
                let i = String(Math.random()).replace(/\D/, ""), n = e.parentId;
                o.ipcRenderer.send("message-box-pop-create", {dialogConf: t, boxId: i, parentId: n});
                let s = yield r.asyncRemoteCall.getIpcMain();
                return s.once(`message-box-init-${i}`, t => {
                    t.sender.send("message-box-init-reply", {popType: "message-box", options: e})
                }), new Promise(e => {
                    s.once(`message-box-resolve-${i}`, (t, i, n) => {
                        e({action: i, formData: n})
                    })
                })
            })
        }, e.custom = function (e, t = {}, i = {}) {
            return n(this, void 0, void 0, function* () {
                let n = String(Math.random()).replace(/\D/, "");
                o.ipcRenderer.send("message-box-custom-create", JSON.parse(JSON.stringify({
                    popType: e,
                    dialogConf: i,
                    boxId: n,
                    options: t
                })));
                let s = yield r.asyncRemoteCall.getIpcMain();
                return s.once(`message-box-init-${n}`, n => {
                    n.sender.send("message-box-init-reply", JSON.parse(JSON.stringify({
                        popType: e,
                        options: t,
                        dialogConf: i
                    })))
                }), new Promise(e => {
                    s.once(`message-box-resolve-${n}`, (t, i, n) => {
                        e({action: i, args: n})
                    })
                })
            })
        }, e.customIndividuation = function (e, t = {}, i = {}) {
            return n(this, void 0, void 0, function* () {
                let n = String(Math.random()).replace(/\D/, "");
                return o.ipcRenderer.send("message-box-individuation-create", {
                    popType: e,
                    dialogConf: i,
                    boxId: n,
                    options: t
                }), (yield r.asyncRemoteCall.getIpcMain()).once(`message-box-init-${n}`, n => {
                    n.sender.send("message-box-init-reply", {popType: e, options: t, dialogConf: i})
                }), new Promise(e => {
                    o.ipcRenderer.once(`message-box-resolve-${n}`, (t, i, n) => {
                        e({action: i, args: n})
                    })
                })
            })
        }
    }(t.MessageBox || (t.MessageBox = {}))
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-tooltip", {
            attrs: {
                content: e.tipsText,
                visible: e.isShowTips,
                placement: e.placement
            }
        }, [e._t("default"), e._v(" "), i("td-input", e._b({
            attrs: {
                value: e.value,
                isNumber: e.isNumber,
                max: e.max,
                min: e.min,
                isAlpha: e.isAlpha
            }, on: {input: e.handleInputChangeDebounce}
        }, "td-input", e.$attrs, !1))], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, , , , , , function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(85), o = i(69);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\components\\select-window.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(4), r = i(1), s = i(100), a = i(6), l = r.default.getLogger("FetchRes"), c = {
        mock: "http://easy-mock.com/mock/59f0652c1bd72e7a888988ab/sl",
        test: "http://test.api-shoulei-ssl.xunlei.com",
        prod: "http://api-shoulei-ssl.xunlei.com"
    };

    function u(e) {
        return (e = (e = encodeURIComponent(e)).replace(/\(/g, "%29")).replace(/\)/g, "%28")
    }

    function d({url: e, data: t, method: r = "get"}, c = "prod") {
        return n(this, arguments, void 0, function* () {
            l.information("fetchFromApiProxy", arguments);
            try {
                const n = yield Promise.all([o.client.callServerFunction("GetUserID"), o.client.callServerFunction("GetSessionID"), o.client.callServerFunction("GetPeerID")]), [d, h, p] = n;
                l.information(n);
                let f = {
                    _h: Object.assign({
                        "Account-Id": d,
                        "Peer-Id": p,
                        "User-Id": d,
                        "Session-Id": h,
                        "App-Type": "pc_xunlei"
                    }, t && t._h || {})
                };
                t && t._h && delete t._h, t && (t.peer_id = p);
                let A = {
                    accesskey: "pc.xunlei",
                    nonce: Math.floor(99999999 * Math.random()).toString(),
                    timestamp: Math.floor((new Date).getTime() / 1e3).toString()
                }, g = {};
                "get" === r && t && (g = t, t = null);
                for (let e in g) a.isObject(g[e]) || (A[e] = g[e]);
                let v = [];
                for (let e in A) v.push(u(e) + "%3D" + u(A[e]));
                v.sort();
                let m = u(e), C = r.toUpperCase() + "&" + m + "&", y = "";
                for (let e = 0; e < v.length - 1; ++e) y += v[e] + "%26";
                let w, b = C + (y += v[v.length - 1]);
                !t || "post" !== r && "put" !== r || (b += "%26" + JSON.stringify(t)), l.information("message: ", b), w = "test" === c ? "c9879c94a55474304cca0abafb867653" : "89917368930f3fea5bafebe704d6b623";
                let I = s.ToolsUtilitiesAWNS.encryptHmacBuffer("sha1", w, b, "base64");
                I = (I = I.replace(/\+/g, "-")).replace(/\//g, "_");
                let E = e + "?";
                for (let e in A) E += u(e) + "=" + u(A[e]) + "&";
                E += "sig=" + I, l.information("fetchFromApiProxy method", r, ", uri", E, ", data", t, ", headers", f._h);
                const x = yield i(38);
                return x.defaults.adapter = i(25), x.defaults.headers["Content-Type"] = "post" === r ? "application/json" : "application/x-www-form-urlencoded", x.request({
                    method: r,
                    url: E,
                    data: t,
                    headers: f._h
                }).then(e => (l.information("fetchFromApiProxy success", e), e)).catch(e => (l.information("fetchFromApiProxy failed", e), {error: e}))
            } catch (e) {
                return {error: e}
            }
        })
    }

    function h({url: e, data: t, method: i = "get"}, r = "prod") {
        return n(this, void 0, void 0, function* () {
            let n = c[r], s = yield o.client.callServerFunction("GetValue", "ConfigFetchInterface", "TestServer", 0);
            return 1 === s && (n = c[r = "test"]), l.information("当前fetchSlRes 是否测试服:", s, " 远程地址:", n), d({
                url: `${n}${e}`,
                data: t,
                method: i
            }, r)
        })
    }

    t.fetchFromApiProxy = d, t.fetchSlRes = h, t.fetchPCRes = function ({
                                                                            url: e,
                                                                            data: t,
                                                                            method: i = "get"
                                                                        }, o = "prod") {
        return n(this, void 0, void 0, function* () {
            return h({url: e, data: t, method: i}, o)
        })
    }, t.fetchPCRequest = function ({url: e, data: t, method: r = "get"}, s = "prod") {
        return n(this, void 0, void 0, function* () {
            let n = c[s], a = yield o.client.callServerFunction("GetValue", "ConfigFetchInterface", "TestServer", 0);
            1 === a && (n = c[s = "test"]), l.information("当前fetchPCRequest 是否测试服:", a, " 远程地址:", n);
            let u = {_h: Object.assign({}, t && t._h || {})};
            t && t._h && delete t._h;
            const d = yield i(38);
            d.defaults.adapter = i(25), d.defaults.headers["Content-Type"] = "post" === r ? "application/json" : "application/x-www-form-urlencoded";
            try {
                return d.request({
                    method: r,
                    url: `${n}${e}`,
                    params: "get" === r && t ? t : {},
                    data: "post" === r && t ? t : {},
                    headers: u._h
                }).then(e => (l.information("fetchRequest success", e), e)).catch(e => (l.information("fetchRequest fail", e), {error: e}))
            } catch (e) {
                return {error: e}
            }
        })
    }, t.fetchRequest = function ({url: e, data: t, method: o = "get"}) {
        return n(this, arguments, void 0, function* () {
            l.information("fetchRequest", arguments);
            try {
                const n = yield i(38);
                return n.defaults.adapter = i(25), n.defaults.headers["Content-Type"] = "post" === o ? "application/json" : "application/x-www-form-urlencoded", n.request({
                    method: o,
                    url: e,
                    params: "get" === o && t ? t : {},
                    data: "post" === o && t ? t : {}
                }).then(e => (l.information("fetchRequest success", e), e)).catch(e => (l.information("fetchRequest fail", e), {error: e}))
            } catch (e) {
                return {error: e}
            }
        })
    }
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        e.formatDate = function (e, t) {
            /(y+)/.test(t) && (t = t.replace(RegExp.$1, (e.getFullYear() + "").substr(4 - RegExp.$1.length)));
            let i = {
                "M+": e.getMonth() + 1,
                "d+": e.getDate(),
                "h+": e.getHours(),
                "m+": e.getMinutes(),
                "s+": e.getSeconds()
            };
            for (let e in i) {
                let n = i[e] + "";
                new RegExp(`(${e})`).test(t) && (t = t.replace(RegExp.$1, 1 === RegExp.$1.length ? n : ("00" + (n = n)).substr(n.length)))
            }
            var n;
            if (/(f+)/.test(t)) {
                let i = e.getMilliseconds() + "";
                t = t.replace(RegExp.$1, ("000" + i).substr(i.length))
            }
            return t
        }, e.formatSeconds = function (e) {
            let t = "";
            do {
                if (e <= 0) {
                    t = "00:00:00";
                    break
                }
                let i = Math.floor(e / 3600), n = Math.floor(e / 60) % 60, o = Math.floor(e % 60);
                t = i < 10 ? "0" + i + ":" : i + ":", t += n < 10 ? "0" + n + ":" : n + ":", t += o < 10 ? "0" + o : "" + o
            } while (0);
            return t
        }, e.formatSecondsCustom = function (e) {
            let t = "";
            do {
                if (e <= 0) {
                    t = "00:00:00";
                    break
                }
                let i = Math.floor(e / 3600), n = Math.floor(e / 60) % 60, o = Math.floor(e % 60);
                if (i <= 99) t = i < 10 ? "0" + i + ":" : i + ":", t += n < 10 ? "0" + n + ":" : n + ":", t += o < 10 ? "0" + o : "" + o; else {
                    let i = Math.floor(e / 86400);
                    t = `剩${i = i > 999 ? 999 : i}天`
                }
            } while (0);
            return t
        }, e.convertTimeToMinutes = function (e, t, i) {
            return 3600 * e + 60 * t + i
        }, e.convertMinuteToTime = function (e) {
            return [Math.floor(e / 3600), Math.floor(e / 60 % 60), Math.floor(e % 60)]
        }
    }(t.TimeHelperNS || (t.TimeHelperNS = {}))
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(2), o = i(1), r = i(16), s = i(43), a = i(22), l = i(9), c = o.default.getLogger("ThunderNewTask"),
        u = l.default(n.join(__rootDir, "../bin/ThunderHelper.node")),
        d = ".asf;.avi;.exe;.iso;.mp3;.mpeg;.mpg;.mpga;.ra;.rar;.rm;.rmvb;.tar;.wma;.wmp;.wmv;\n  .mov;.zip;.3gp;.chm;.mdf;.torrent;.jar;.msi;.arj;.bin;.dll;.psd;.hqx;.sit;.lzh;.gz;.tgz;.xlsx;.xls;.doc;.docx;.ppt;\n  .pptx;.flv;.swf;.mkv;.tp;.ts;.flac;.ape;.wav;.aac;.txt;.dat;.7z;.ttf;.bat;.xv;.xvx;.pdf;.mp4;.apk;.ipa;.epub;.mobi;\n  .deb;.sisx;.cab;.pxl;.dmg;.msu;",
        h = ".a;.a3m;.a3w;.a4m;.a4p;.a4w;.a5w;.aam;.aas;.abf;.abk;.abs;.ace;.acm;.acp;.act;.ad;\n  .ada;.adb;.adf;.adi;.adm;.adp;.adr;.ads;.af2;.af3;.afm;.ai;.aif;.aifc;.aiff;.aim;.ais;.akw;.alb;.all;.ams;.anc;.ani;\n  .ans;.ant;.api;.aps;.ari;.arj;.art;.asa;.asc;.asd;.ase;.asf;.asm;.aso;.asp;.asv;.asx;.atw;.au;.avb;.avi;.avr;.avs;\n  .awd;.awr;.axx;.bak;.bas;.bat;.bdf;.bgl;.bi;.bif;.biff;.bin;.bk;.bk$;.bks;.bmk;.bmp;.book;.brx;.bsp;.btm;.bud;.bun;\n  .bw;.bwv;.c;.cab;.cad;.cal;.cap;.cas;.cb;.cc;.ccb;.cch;.cco;.cct;.cda;.cdf;.cdi;.cdm;.cdr;.cdt;.cdx;.cfg;.cgi;.cgm;\n  .chk;.chm;.chr;.cif;.cil;.class;.cll;.clp;.cls;.cmf;.cmv;.cmx;.cnf;.cnm;.cnt;.cod;.com;.cpl;.cpo;.cpp;.cpr;.cpt;.cpx;\n  .crd;.crp;.crt;.csc;.csp;.cst;.csv;.ctl;.cur;.cv;.cxx;.dat;.db;.dbc;.dbf;.dbx;.dcm;.dcs;.dct;.dcu;.dcx;.dem;.der;.dewf;\n  .dib;.dic;.dif;.dig;.dir;.diz;.dlg;.dll;.dls;.dmd;.dmf;.doc;.dot;.draw;.drv;.drw;.dsf;.dsg;.dsm;.dsp;.dsq;.dsw;.dtd;\n  .dun;.dv;.dxf;.dxr;.eda;.edd;.emd;.emf;.eml;.ephtml;.eps;.exe;.fav;.fax;.fcd;.fdf;.ffa;.ffk;.ffl;.ffo;.fif;.fla;.flc;\n  .fm;.fml;.fng;.fnk;.fon;.fot;.frt;.frx;.ftg;.fts;.gal;.gdb;.gdm;.gem;.gen;.getright;.gfi;.gfx;.gho;.gif;.gim;.gix;.gkh;\n  .gks;.gl;.gna;.gnt;.gnx;.gra;.grf;.grp;.hcom;.hgl;.hlp;.hpj;.hpp;.hst;.ht;.htm;.html;.htt;.htx;.icb;.icc;.icl;.icm;.ico;\n  .idd;.idf;.idq;.idx;.iff;.iges;.igf;.ilbm;.ima;.inf;.ini;.inrs;.ins;.int;.iqy;.iso;.ist;.isu;.iwc;.j62;.jar;.java;.jbf;\n  .jff;.jfif;.jif;.jmp;.jpe;.jpeg;.jpg;.js;.jsp;.jtf;.k25;.kar;.kdc;.key;.kfx;.kiz;.kkw;.kmp;.kqp;.lab;.lbm;.lbt;.lbx;.ldb;\n  .ldl;.leg;.lft;.lgo;.lha;.lib;.lin;.lis;.llx;.lnk;.log;.lst;.lu;.lyr;.lzh;.lzs;.m1v;.m3u;.mad;.maf;.mam;.map;.maq;.mar;.mat;\n  .mb1;.mbx;.mcr;.mdb;.mde;.mdl;.mdn;.mdw;.mdz;.mic;.mid;.mim;.mime;.mli;.mme;.mng;.mnu;.mod;.mov;.mp2;.mp3;.mpa;.mpe;.mpeg;\n  .mpg;.mpp;.mpr;.msg;.msi;.msn;.msp;.mst;.mtm;.nan;.nap;.ncb;.ncd;.ncf;.nff;.nft;.nil;.nist;.nls;.nlu;.ntx;.nwc;.nws;.obj;\n  .ocx;.ods;.ofn;.oft;.olb;.ole;.oogl;.opo;.p65;.pab;.part;.pas;.pbd;.pbl;.pbm;.pbr;.pcd;.pcl;.pcm;.pdd;.pdf;.pfm;.pgl;.pgm;\n  .ph;.php;.php3;.phtml;.pic;.pjt;.pjx;.pkg;.pli;.png;.pot;.ppa;.ppf;.ppm;.pps;.ppt;.prf;.prg;.prj;.prn;.prt;.psd;.psp;.pst;\n  .pwz;.qic;.qif;.qlb;.qry;.qtp;.qtx;.qw;.ra;.ram;.rar;.rdf;.reg;.rep;.res;.rft;.rgb;.rm;.rmd;.rpt;.rtf;.rul;.rvp;.s;.sav;.sbl;\n  .scc;.scf;.scp;.scr;.sct;.scx;.sdt;.sdv;.sdx;.sep;.sfd;.sfi;.sfr;.sfx;.sgi;.sgml;.shg;.shtml;.shw;.sig;.ska;.skl;.sl;.spl;\n  .sqc;.sqr;.str;.swa;.swf;.sys;.syw;.taz;.tga;.theme;.thn;.tif;.tiff;.tig;.tlb;.tmp;.tol;.tpl;.trm;.trn;.ttf;.txt;.txw;.udf;\n  .ult;.url;.use;.uwf;.vbp;.vbp;.vbw;.vbw;.vbx;.vbx;.vct;.vcx;.vda;.vda;.vir;.vir;.viv;.vqf;.vsd;.vsd;.vsl;.vsl;.vss;.vss;.vst;\n  .vst;.vsw;.vsw;.vxd;.vxd;.w3l;.wab;.wad;.wav;.wbk;.wcm;.wdb;.wfm;.wfn;.wil;.wiz;.wll;.wmf;.wow;.wp;.wpd;.wpf;.wpg;.wps;.wpt;.wr1;\n  .wrk;.wrl;.wrz;.x;.x16;.x32;.xar;.xbm;.xi;.xla;.xlb;.xlc;.xld;.xlk;.xll;.xlm;.xls;.xlt;.xlv;.xlw;.xnk;.xpm;.xwd;.xwf;.yal;.z;.zap;.zip;";
    !function (e) {
        function t(e) {
            let t = !1;
            do {
                if (void 0 === e || null === e) break;
                if ("" === e || "." === e) break;
                if (d.indexOf(e) > -1) {
                    t = !0;
                    break
                }
            } while (0);
            return t
        }

        function i(e) {
            let t = !1;
            do {
                if (void 0 === e || null === e) break;
                if ("" === e) break;
                if (e.match(/[\/\\"<>\?\*|]/)) break;
                t = !0
            } while (0);
            return t
        }

        function o(e) {
            let i = !1;
            do {
                if (void 0 === e || null === e) break;
                if ("" === e || "." === e) break;
                let n = s.TaskUtilHelper.getTaskFileType(void 0, e);
                if (n === s.TaskUtilHelper.FileExtType.Video || n === s.TaskUtilHelper.FileExtType.Music || n === s.TaskUtilHelper.FileExtType.Pic) {
                    i = !0;
                    break
                }
                i = t(e)
            } while (0);
            return i
        }

        function l(e) {
            let t = !1, r = n.parse(e);
            return t = i(r.name) && o(r.ext)
        }

        function p(e) {
            let t = {};
            do {
                if (void 0 === e || null === e) break;
                c.information("parseDynamicUrlArgs");
                let i = /([^&=?]+)=([^&]*)/g;
                for (; i.exec(e);) t[RegExp.$1] = RegExp.$2;
                c.information("parseDynamicUrlArgs ret ", t)
            } while (0);
            return t
        }

        function f(e) {
            let t = {pageFileName: void 0, args: void 0};
            do {
                if (void 0 === e || null === e) break;
                c.information("parseDynamicUrlPath"), e.match(/[\/]?([^?]*)\?([^\s]*)/) ? (t.pageFileName = RegExp.$1, t.args = RegExp.$2) : (t.pageFileName = e, t.args = ""), c.information("parseDynamicUrlPath ret", t)
            } while (0);
            return t
        }

        function A(e) {
            let t = "";
            do {
                if (void 0 === e || null === e) break;
                let i = f(e);
                if (void 0 !== i.args) {
                    let e = p(i.args);
                    for (let i in e) {
                        let n = e[i];
                        if (l(n)) {
                            t = n;
                            break
                        }
                    }
                }
                void 0 !== i.pageFileName && l(i.pageFileName) && (t = i.pageFileName)
            } while (0);
            return t
        }

        function g(e) {
            let t = [];
            do {
                if (void 0 === e || null === e) break;
                let i = A(e);
                if ("" !== i && !t.includes(i)) {
                    let e = v(i);
                    t.push(e)
                }
                let n = v(e);
                t.includes(n) || t.push(n)
            } while (0);
            return t
        }

        function v(e) {
            return u.parseFileNameFromP2spUrlPath(e)
        }

        function m(e) {
            return u.isThunderPrivateUrl(e)
        }

        function C(e) {
            return u.parseEd2kUrl(e)
        }

        function y(e) {
            return u.parseUrl(e)
        }

        e.isDownloadFileExtName = t, e.isIllegalFileName = i, e.isGoodFileExtName = o, e.isUsualFileExtName = function (e) {
            let t = !1;
            do {
                if (void 0 === e || null === e) break;
                if ("" === e || "." === e) break;
                if (o(e)) {
                    t = !0;
                    break
                }
                if (h.indexOf(e) > -1) {
                    t = !0;
                    break
                }
            } while (0);
            return t
        }, e.isGoodFileName = l, e.parseDynamicUrlArgs = p, e.parseDynamicUrlPath = f, e.parseFileNameFromDynamicUrlPath = A, e.getFileNameListFromUrlPath = g, e.getNameFromUrl = function (e) {
            let t = "index.html", i = a.ThunderHelper.getTaskTypeFromUrl(e);
            if (i === r.DownloadKernel.TaskType.P2sp) {
                let i = y(e);
                if (i) {
                    let e = g(i.fullPath);
                    e.length > 0 && (t = e[0])
                } else {
                    let i = /:\/\/.*?\[.+?\].*(\/.+)/.exec(e);
                    if (i && i[1]) {
                        let e = g(i[1]);
                        e.length > 0 && (t = e[0])
                    }
                }
            } else i === r.DownloadKernel.TaskType.Emule && (t = C(e).fileName);
            return t.replace(/[*?/\\:|<>\"]/g, "_")
        }, e.parseFileNameFromP2spUrlPath = v, e.isThunderPrivateUrl = m, e.parseThunderPrivateUrl = function (e) {
            let t = {url: e, codePage: -1};
            return m(e) && (t = u.parseThunderPrivateUrl(e)), t
        }, e.parseEd2kUrl = C, e.parseUrl = y, e.parseMagnetUrl = function (e) {
            return u.parseMagnetUrl(e)
        }, e.makeUrl = function (e) {
            return u.makeUrl(e)
        }
    }(t.ParseUrlFileNameNS || (t.ParseUrlFileNameNS = {}))
}, , , , function (e, t) {
    function i(e) {
        if ("string" != typeof e) throw new Error("Color should be defined as hex string");
        var t = e.slice().replace("#", "").split("");
        if (t.length < 3 || 5 === t.length || t.length > 8) throw new Error("Invalid hex color: " + e);
        3 !== t.length && 4 !== t.length || (t = Array.prototype.concat.apply([], t.map(function (e) {
            return [e, e]
        }))), 6 === t.length && t.push("F", "F");
        var i = parseInt(t.join(""), 16);
        return {r: i >> 24 & 255, g: i >> 16 & 255, b: i >> 8 & 255, a: 255 & i, hex: "#" + t.slice(0, 6).join("")}
    }

    t.getOptions = function (e) {
        e || (e = {}), e.color || (e.color = {});
        var t = void 0 === e.margin || null === e.margin || e.margin < 0 ? 4 : e.margin,
            n = e.width && e.width >= 21 ? e.width : void 0, o = e.scale || 4;
        return {
            width: n,
            scale: n ? 4 : o,
            margin: t,
            color: {dark: i(e.color.dark || "#000000ff"), light: i(e.color.light || "#ffffffff")},
            type: e.type,
            rendererOpts: e.rendererOpts || {}
        }
    }, t.getScale = function (e, t) {
        return t.width && t.width >= e + 2 * t.margin ? t.width / (e + 2 * t.margin) : t.scale
    }, t.getImageWidth = function (e, i) {
        var n = t.getScale(e, i);
        return Math.floor((e + 2 * i.margin) * n)
    }, t.qrToImageData = function (e, i, n) {
        for (var o = i.modules.size, r = i.modules.data, s = t.getScale(o, n), a = Math.floor((o + 2 * n.margin) * s), l = n.margin * s, c = [n.color.light, n.color.dark], u = 0; u < a; u++) for (var d = 0; d < a; d++) {
            var h = 4 * (u * a + d), p = n.color.light;
            if (u >= l && d >= l && u < a - l && d < a - l) p = c[r[Math.floor((u - l) / s) * o + Math.floor((d - l) / s)] ? 1 : 0];
            e[h++] = p.r, e[h++] = p.g, e[h++] = p.b, e[h] = p.a
        }
    }
}, , , , , , , function (e, t) {
    e.exports = function (e) {
        return e.webpackPolyfill || (e.deprecate = function () {
        }, e.paths = [], e.children || (e.children = []), Object.defineProperty(e, "loaded", {
            enumerable: !0,
            get: function () {
                return e.l
            }
        }), Object.defineProperty(e, "id", {
            enumerable: !0, get: function () {
                return e.i
            }
        }), e.webpackPolyfill = 1), e
    }
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(129), o = i(96);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\views\\limit-input.vue", t.default = a.exports
}, , , , , , , function (e, t) {
    t.L = {bit: 1}, t.M = {bit: 0}, t.Q = {bit: 3}, t.H = {bit: 2}, t.isValid = function (e) {
        return e && void 0 !== e.bit && e.bit >= 0 && e.bit < 4
    }, t.from = function (e, i) {
        if (t.isValid(e)) return e;
        try {
            return function (e) {
                if ("string" != typeof e) throw new Error("Param is not a string");
                switch (e.toLowerCase()) {
                    case"l":
                    case"low":
                        return t.L;
                    case"m":
                    case"medium":
                        return t.M;
                    case"q":
                    case"quartile":
                        return t.Q;
                    case"h":
                    case"high":
                        return t.H;
                    default:
                        throw new Error("Unknown EC Level: " + e)
                }
            }(e)
        } catch (e) {
            return i
        }
    }
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        let t;
        !function (e) {
            e[e.Default = 0] = "Default", e[e.Vip = 1] = "Vip"
        }(t = e.SkinType || (e.SkinType = {})), e.defaultSkinInfo = {
            type: t.Default,
            id: 1,
            name: "默认皮肤"
        }, e.vipSkinInfo = {type: t.Vip, id: 2, name: "会员皮肤"}, e.cacheDir = `${__profilesDir}/suspension-skin`
    }(t.SuspensionSkinHelperNS || (t.SuspensionSkinHelperNS = {}))
}, function (e, t, i) {
    e.exports = i(8)(135)
}, , , function (e, t, i) {
    e.exports = i(8)(29)
}, , , function (e, t, i) {
    e.exports = i(476)
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(617), o = i(300);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(747);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-select.vue", t.default = a.exports
}, , , , , , function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(14);
    t.default = class {
        constructor() {
            this.emitter = null, this.emitter = new n.EventEmitter
        }

        attachOnceListener(e, t) {
            this.emitter.once(e, t)
        }

        attachListener(e, t) {
            this.emitter.addListener(e, t)
        }

        prependListener(e, t) {
            this.emitter.prependListener(e, t)
        }

        prependOnceListener(e, t) {
            this.emitter.prependOnceListener(e, t)
        }

        detachListener(e, t) {
            this.emitter.removeListener(e, t)
        }

        fireEvent(e, ...t) {
            return this.emitter.emit(e, ...t)
        }

        setMaxListeners(e) {
            this.emitter.setMaxListeners(e)
        }
    }
}, , , , , , , , function (e, t, i) {
    var n = i(101), o = i(82), r = i(157), s = i(479), a = i(480), l = i(481), c = i(482), u = i(483), d = i(181),
        h = i(484), p = i(487), f = i(488), A = i(83), g = i(489), v = i(184);

    function m(e, t, i) {
        var n, o, r = e.size, s = f.getEncodedBits(t, i);
        for (n = 0; n < 15; n++) o = 1 == (s >> n & 1), n < 6 ? e.set(n, 8, o, !0) : n < 8 ? e.set(n + 1, 8, o, !0) : e.set(r - 15 + n, 8, o, !0), n < 8 ? e.set(8, r - n - 1, o, !0) : n < 9 ? e.set(8, 15 - n - 1 + 1, o, !0) : e.set(8, 15 - n - 1, o, !0);
        e.set(r - 8, 8, 1, !0)
    }

    function C(e, t, i) {
        var r = new s;
        i.forEach(function (t) {
            r.put(t.mode.bit, 4), r.put(t.getLength(), A.getCharCountIndicator(t.mode, e)), t.write(r)
        });
        var a = 8 * (o.getSymbolTotalCodewords(e) - d.getTotalCodewordsCount(e, t));
        for (r.getLengthInBits() + 4 <= a && r.put(0, 4); r.getLengthInBits() % 8 != 0;) r.putBit(0);
        for (var l = (a - r.getLengthInBits()) / 8, c = 0; c < l; c++) r.put(c % 2 ? 17 : 236, 8);
        return function (e, t, i) {
            for (var r = o.getSymbolTotalCodewords(t), s = d.getTotalCodewordsCount(t, i), a = r - s, l = d.getBlocksCount(t, i), c = l - r % l, u = Math.floor(r / l), p = Math.floor(a / l), f = p + 1, A = u - p, g = new h(A), v = 0, m = new Array(l), C = new Array(l), y = 0, w = new n(e.buffer), b = 0; b < l; b++) {
                var I = b < c ? p : f;
                m[b] = w.slice(v, v + I), C[b] = g.encode(m[b]), v += I, y = Math.max(y, I)
            }
            var E, x, k = new n(r), S = 0;
            for (E = 0; E < y; E++) for (x = 0; x < l; x++) E < m[x].length && (k[S++] = m[x][E]);
            for (E = 0; E < A; E++) for (x = 0; x < l; x++) k[S++] = C[x][E];
            return k
        }(r, e, t)
    }

    function y(e, t, i, n) {
        var r;
        if (v(e)) r = g.fromArray(e); else {
            if ("string" != typeof e) throw new Error("Invalid data");
            var s = t;
            if (!s) {
                var d = g.rawSplit(e);
                s = p.getBestVersionForData(d, i)
            }
            r = g.fromString(e, s || 40)
        }
        var h = p.getBestVersionForData(r, i);
        if (!h) throw new Error("The amount of data is too big to be stored in a QR Code");
        if (t) {
            if (t < h) throw new Error("\nThe chosen QR Code version cannot contain this amount of data.\nMinimum version required to store current data is: " + h + ".\n")
        } else t = h;
        var f = C(t, i, r), A = o.getSymbolSize(t), y = new a(A);
        return function (e, t) {
            for (var i = e.size, n = c.getPositions(t), o = 0; o < n.length; o++) for (var r = n[o][0], s = n[o][1], a = -1; a <= 7; a++) if (!(r + a <= -1 || i <= r + a)) for (var l = -1; l <= 7; l++) s + l <= -1 || i <= s + l || (a >= 0 && a <= 6 && (0 === l || 6 === l) || l >= 0 && l <= 6 && (0 === a || 6 === a) || a >= 2 && a <= 4 && l >= 2 && l <= 4 ? e.set(r + a, s + l, !0, !0) : e.set(r + a, s + l, !1, !0))
        }(y, t), function (e) {
            for (var t = e.size, i = 8; i < t - 8; i++) {
                var n = i % 2 == 0;
                e.set(i, 6, n, !0), e.set(6, i, n, !0)
            }
        }(y), function (e, t) {
            for (var i = l.getPositions(t), n = 0; n < i.length; n++) for (var o = i[n][0], r = i[n][1], s = -2; s <= 2; s++) for (var a = -2; a <= 2; a++) -2 === s || 2 === s || -2 === a || 2 === a || 0 === s && 0 === a ? e.set(o + s, r + a, !0, !0) : e.set(o + s, r + a, !1, !0)
        }(y, t), m(y, i, 0), t >= 7 && function (e, t) {
            for (var i, n, o, r = e.size, s = p.getEncodedBits(t), a = 0; a < 18; a++) i = Math.floor(a / 3), n = a % 3 + r - 8 - 3, o = 1 == (s >> a & 1), e.set(i, n, o, !0), e.set(n, i, o, !0)
        }(y, t), function (e, t) {
            for (var i = e.size, n = -1, o = i - 1, r = 7, s = 0, a = i - 1; a > 0; a -= 2) for (6 === a && a--; ;) {
                for (var l = 0; l < 2; l++) if (!e.isReserved(o, a - l)) {
                    var c = !1;
                    s < t.length && (c = 1 == (t[s] >>> r & 1)), e.set(o, a - l, c), -1 == --r && (s++, r = 7)
                }
                if ((o += n) < 0 || i <= o) {
                    o -= n, n = -n;
                    break
                }
            }
        }(y, f), isNaN(n) && (n = u.getBestMask(y, m.bind(null, y, i))), u.applyMask(n, y), m(y, i, n), {
            modules: y,
            version: t,
            errorCorrectionLevel: i,
            maskPattern: n,
            segments: r
        }
    }

    t.create = function (e, t) {
        if (void 0 === e || "" === e) throw new Error("No input text");
        var i, n, s = r.M;
        return void 0 !== t && (s = r.from(t.errorCorrectionLevel, r.M), i = p.from(t.version), n = u.from(t.maskPattern), t.toSJISFunc && o.setToSJISFunction(t.toSJISFunc)), y(e, i, s, n)
    }
}, function (e, t, i) {
    var n = i(157),
        o = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 4, 1, 2, 4, 4, 2, 4, 4, 4, 2, 4, 6, 5, 2, 4, 6, 6, 2, 5, 8, 8, 4, 5, 8, 8, 4, 5, 8, 11, 4, 8, 10, 11, 4, 9, 12, 16, 4, 9, 16, 16, 6, 10, 12, 18, 6, 10, 17, 16, 6, 11, 16, 19, 6, 13, 18, 21, 7, 14, 21, 25, 8, 16, 20, 25, 8, 17, 23, 25, 9, 17, 23, 34, 9, 18, 25, 30, 10, 20, 27, 32, 12, 21, 29, 35, 12, 23, 34, 37, 12, 25, 34, 40, 13, 26, 35, 42, 14, 28, 38, 45, 15, 29, 40, 48, 16, 31, 43, 51, 17, 33, 45, 54, 18, 35, 48, 57, 19, 37, 51, 60, 19, 38, 53, 63, 20, 40, 56, 66, 21, 43, 59, 70, 22, 45, 62, 74, 24, 47, 65, 77, 25, 49, 68, 81],
        r = [7, 10, 13, 17, 10, 16, 22, 28, 15, 26, 36, 44, 20, 36, 52, 64, 26, 48, 72, 88, 36, 64, 96, 112, 40, 72, 108, 130, 48, 88, 132, 156, 60, 110, 160, 192, 72, 130, 192, 224, 80, 150, 224, 264, 96, 176, 260, 308, 104, 198, 288, 352, 120, 216, 320, 384, 132, 240, 360, 432, 144, 280, 408, 480, 168, 308, 448, 532, 180, 338, 504, 588, 196, 364, 546, 650, 224, 416, 600, 700, 224, 442, 644, 750, 252, 476, 690, 816, 270, 504, 750, 900, 300, 560, 810, 960, 312, 588, 870, 1050, 336, 644, 952, 1110, 360, 700, 1020, 1200, 390, 728, 1050, 1260, 420, 784, 1140, 1350, 450, 812, 1200, 1440, 480, 868, 1290, 1530, 510, 924, 1350, 1620, 540, 980, 1440, 1710, 570, 1036, 1530, 1800, 570, 1064, 1590, 1890, 600, 1120, 1680, 1980, 630, 1204, 1770, 2100, 660, 1260, 1860, 2220, 720, 1316, 1950, 2310, 750, 1372, 2040, 2430];
    t.getBlocksCount = function (e, t) {
        switch (t) {
            case n.L:
                return o[4 * (e - 1) + 0];
            case n.M:
                return o[4 * (e - 1) + 1];
            case n.Q:
                return o[4 * (e - 1) + 2];
            case n.H:
                return o[4 * (e - 1) + 3];
            default:
                return
        }
    }, t.getTotalCodewordsCount = function (e, t) {
        switch (t) {
            case n.L:
                return r[4 * (e - 1) + 0];
            case n.M:
                return r[4 * (e - 1) + 1];
            case n.Q:
                return r[4 * (e - 1) + 2];
            case n.H:
                return r[4 * (e - 1) + 3];
            default:
                return
        }
    }
}, function (e, t) {
    t.isValid = function (e) {
        return !isNaN(e) && e >= 1 && e <= 40
    }
}, function (e, t) {
    var i = "(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",
        n = "(?:(?![A-Z0-9 $%*+\\-./:]|" + (i = i.replace(/u/g, "\\u")) + ")(?:.|[\r\n]))+";
    t.KANJI = new RegExp(i, "g"), t.BYTE_KANJI = new RegExp("[^A-Z0-9 $%*+\\-./:]+", "g"), t.BYTE = new RegExp(n, "g"), t.NUMERIC = new RegExp("[0-9]+", "g"), t.ALPHANUMERIC = new RegExp("[A-Z $%*+\\-./:]+", "g");
    var o = new RegExp("^" + i + "$"), r = new RegExp("^[0-9]+$"), s = new RegExp("^[A-Z0-9 $%*+\\-./:]+$");
    t.testKanji = function (e) {
        return o.test(e)
    }, t.testNumeric = function (e) {
        return r.test(e)
    }, t.testAlphanumeric = function (e) {
        return s.test(e)
    }
}, function (e, t) {
    var i = {}.toString;
    e.exports = Array.isArray || function (e) {
        return "[object Array]" == i.call(e)
    }
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(76), r = e.exports = function () {
        o.call(this), this._buffers = [], this._buffered = 0, this._reads = [], this._paused = !1, this._encoding = "utf8", this.writable = !0
    };
    n.inherits(r, o), r.prototype.read = function (e, t) {
        this._reads.push({length: Math.abs(e), allowLess: e < 0, func: t}), process.nextTick(function () {
            this._process(), this._paused && this._reads.length > 0 && (this._paused = !1, this.emit("drain"))
        }.bind(this))
    }, r.prototype.write = function (e, t) {
        return this.writable ? (i = Buffer.isBuffer(e) ? e : new Buffer(e, t || this._encoding), this._buffers.push(i), this._buffered += i.length, this._process(), this._reads && 0 === this._reads.length && (this._paused = !0), this.writable && !this._paused) : (this.emit("error", new Error("Stream not writable")), !1);
        var i
    }, r.prototype.end = function (e, t) {
        e && this.write(e, t), this.writable = !1, this._buffers && (0 === this._buffers.length ? this._end() : (this._buffers.push(null), this._process()))
    }, r.prototype.destroySoon = r.prototype.end, r.prototype._end = function () {
        this._reads.length > 0 && this.emit("error", new Error("There are some read requests waiting on finished stream")), this.destroy()
    }, r.prototype.destroy = function () {
        this._buffers && (this.writable = !1, this._reads = null, this._buffers = null, this.emit("close"))
    }, r.prototype._processReadAllowingLess = function (e) {
        this._reads.shift();
        var t = this._buffers[0];
        t.length > e.length ? (this._buffered -= e.length, this._buffers[0] = t.slice(e.length), e.func.call(this, t.slice(0, e.length))) : (this._buffered -= t.length, this._buffers.shift(), e.func.call(this, t))
    }, r.prototype._processRead = function (e) {
        this._reads.shift();
        for (var t = 0, i = 0, n = new Buffer(e.length); t < e.length;) {
            var o = this._buffers[i++], r = Math.min(o.length, e.length - t);
            o.copy(n, t, 0, r), t += r, r !== o.length && (this._buffers[--i] = o.slice(r))
        }
        i > 0 && this._buffers.splice(0, i), this._buffered -= e.length, e.func.call(this, n)
    }, r.prototype._process = function () {
        try {
            for (; this._buffered > 0 && this._reads && this._reads.length > 0;) {
                var e = this._reads[0];
                if (e.allowLess) this._processReadAllowingLess(e); else {
                    if (!(this._buffered >= e.length)) break;
                    this._processRead(e)
                }
            }
            this._buffers && this._buffers.length > 0 && null === this._buffers[0] && this._end()
        } catch (e) {
            this.emit("error", e)
        }
    }
}, function (e, t, i) {
    "use strict";
    var n = i(187), o = i(188);

    function r(e, t, i) {
        var n = e * t;
        return 8 !== i && (n = Math.ceil(n / (8 / i))), n
    }

    var s = e.exports = function (e, t) {
        var i = e.width, o = e.height, s = e.interlace, a = e.bpp, l = e.depth;
        if (this.read = t.read, this.write = t.write, this.complete = t.complete, this._imageIndex = 0, this._images = [], s) for (var c = n.getImagePasses(i, o), u = 0; u < c.length; u++) this._images.push({
            byteWidth: r(c[u].width, a, l),
            height: c[u].height,
            lineIndex: 0
        }); else this._images.push({byteWidth: r(i, a, l), height: o, lineIndex: 0});
        this._xComparison = 8 === l ? a : 16 === l ? 2 * a : 1
    };
    s.prototype.start = function () {
        this.read(this._images[this._imageIndex].byteWidth + 1, this._reverseFilterLine.bind(this))
    }, s.prototype._unFilterType1 = function (e, t, i) {
        for (var n = this._xComparison, o = n - 1, r = 0; r < i; r++) {
            var s = e[1 + r], a = r > o ? t[r - n] : 0;
            t[r] = s + a
        }
    }, s.prototype._unFilterType2 = function (e, t, i) {
        for (var n = this._lastLine, o = 0; o < i; o++) {
            var r = e[1 + o], s = n ? n[o] : 0;
            t[o] = r + s
        }
    }, s.prototype._unFilterType3 = function (e, t, i) {
        for (var n = this._xComparison, o = n - 1, r = this._lastLine, s = 0; s < i; s++) {
            var a = e[1 + s], l = r ? r[s] : 0, c = s > o ? t[s - n] : 0, u = Math.floor((c + l) / 2);
            t[s] = a + u
        }
    }, s.prototype._unFilterType4 = function (e, t, i) {
        for (var n = this._xComparison, r = n - 1, s = this._lastLine, a = 0; a < i; a++) {
            var l = e[1 + a], c = s ? s[a] : 0, u = a > r ? t[a - n] : 0, d = a > r && s ? s[a - n] : 0, h = o(u, c, d);
            t[a] = l + h
        }
    }, s.prototype._reverseFilterLine = function (e) {
        var t, i = e[0], n = this._images[this._imageIndex], o = n.byteWidth;
        if (0 === i) t = e.slice(1, o + 1); else switch (t = new Buffer(o), i) {
            case 1:
                this._unFilterType1(e, t, o);
                break;
            case 2:
                this._unFilterType2(e, t, o);
                break;
            case 3:
                this._unFilterType3(e, t, o);
                break;
            case 4:
                this._unFilterType4(e, t, o);
                break;
            default:
                throw new Error("Unrecognised filter type - " + i)
        }
        this.write(t), n.lineIndex++, n.lineIndex >= n.height ? (this._lastLine = null, this._imageIndex++, n = this._images[this._imageIndex]) : this._lastLine = t, n ? this.read(n.byteWidth + 1, this._reverseFilterLine.bind(this)) : (this._lastLine = null, this.complete())
    }
}, function (e, t, i) {
    "use strict";
    var n = [{x: [0], y: [0]}, {x: [4], y: [0]}, {x: [0, 4], y: [4]}, {x: [2, 6], y: [0, 4]}, {
        x: [0, 2, 4, 6],
        y: [2, 6]
    }, {x: [1, 3, 5, 7], y: [0, 2, 4, 6]}, {x: [0, 1, 2, 3, 4, 5, 6, 7], y: [1, 3, 5, 7]}];
    t.getImagePasses = function (e, t) {
        for (var i = [], o = e % 8, r = t % 8, s = (e - o) / 8, a = (t - r) / 8, l = 0; l < n.length; l++) {
            for (var c = n[l], u = s * c.x.length, d = a * c.y.length, h = 0; h < c.x.length && c.x[h] < o; h++) u++;
            for (h = 0; h < c.y.length && c.y[h] < r; h++) d++;
            u > 0 && d > 0 && i.push({width: u, height: d, index: l})
        }
        return i
    }, t.getInterlaceIterator = function (e) {
        return function (t, i, o) {
            var r = t % n[o].x.length, s = (t - r) / n[o].x.length * 8 + n[o].x[r], a = i % n[o].y.length;
            return 4 * s + ((i - a) / n[o].y.length * 8 + n[o].y[a]) * e * 4
        }
    }
}, function (e, t, i) {
    "use strict";
    e.exports = function (e, t, i) {
        var n = e + t - i, o = Math.abs(n - e), r = Math.abs(n - t), s = Math.abs(n - i);
        return o <= r && o <= s ? e : r <= s ? t : i
    }
}, function (e, t, i) {
    "use strict";
    var n = i(127), o = i(190), r = e.exports = function (e, t) {
        this._options = e, e.checkCRC = !1 !== e.checkCRC, this._hasIHDR = !1, this._hasIEND = !1, this._palette = [], this._colorType = 0, this._chunks = {}, this._chunks[n.TYPE_IHDR] = this._handleIHDR.bind(this), this._chunks[n.TYPE_IEND] = this._handleIEND.bind(this), this._chunks[n.TYPE_IDAT] = this._handleIDAT.bind(this), this._chunks[n.TYPE_PLTE] = this._handlePLTE.bind(this), this._chunks[n.TYPE_tRNS] = this._handleTRNS.bind(this), this._chunks[n.TYPE_gAMA] = this._handleGAMA.bind(this), this.read = t.read, this.error = t.error, this.metadata = t.metadata, this.gamma = t.gamma, this.transColor = t.transColor, this.palette = t.palette, this.parsed = t.parsed, this.inflateData = t.inflateData, this.finished = t.finished
    };
    r.prototype.start = function () {
        this.read(n.PNG_SIGNATURE.length, this._parseSignature.bind(this))
    }, r.prototype._parseSignature = function (e) {
        for (var t = n.PNG_SIGNATURE, i = 0; i < t.length; i++) if (e[i] !== t[i]) return void this.error(new Error("Invalid file signature"));
        this.read(8, this._parseChunkBegin.bind(this))
    }, r.prototype._parseChunkBegin = function (e) {
        for (var t = e.readUInt32BE(0), i = e.readUInt32BE(4), r = "", s = 4; s < 8; s++) r += String.fromCharCode(e[s]);
        var a = Boolean(32 & e[4]);
        if (this._hasIHDR || i === n.TYPE_IHDR) {
            if (this._crc = new o, this._crc.write(new Buffer(r)), this._chunks[i]) return this._chunks[i](t);
            a ? this.read(t + 4, this._skipChunk.bind(this)) : this.error(new Error("Unsupported critical chunk type " + r))
        } else this.error(new Error("Expected IHDR on beggining"))
    }, r.prototype._skipChunk = function () {
        this.read(8, this._parseChunkBegin.bind(this))
    }, r.prototype._handleChunkEnd = function () {
        this.read(4, this._parseChunkEnd.bind(this))
    }, r.prototype._parseChunkEnd = function (e) {
        var t = e.readInt32BE(0), i = this._crc.crc32();
        this._options.checkCRC && i !== t ? this.error(new Error("Crc error - " + t + " - " + i)) : this._hasIEND || this.read(8, this._parseChunkBegin.bind(this))
    }, r.prototype._handleIHDR = function (e) {
        this.read(e, this._parseIHDR.bind(this))
    }, r.prototype._parseIHDR = function (e) {
        this._crc.write(e);
        var t = e.readUInt32BE(0), i = e.readUInt32BE(4), o = e[8], r = e[9], s = e[10], a = e[11], l = e[12];
        if (8 === o || 4 === o || 2 === o || 1 === o || 16 === o) if (r in n.COLORTYPE_TO_BPP_MAP) if (0 === s) if (0 === a) if (0 === l || 1 === l) {
            this._colorType = r;
            var c = n.COLORTYPE_TO_BPP_MAP[this._colorType];
            this._hasIHDR = !0, this.metadata({
                width: t,
                height: i,
                depth: o,
                interlace: Boolean(l),
                palette: Boolean(r & n.COLORTYPE_PALETTE),
                color: Boolean(r & n.COLORTYPE_COLOR),
                alpha: Boolean(r & n.COLORTYPE_ALPHA),
                bpp: c,
                colorType: r
            }), this._handleChunkEnd()
        } else this.error(new Error("Unsupported interlace method")); else this.error(new Error("Unsupported filter method")); else this.error(new Error("Unsupported compression method")); else this.error(new Error("Unsupported color type")); else this.error(new Error("Unsupported bit depth " + o))
    }, r.prototype._handlePLTE = function (e) {
        this.read(e, this._parsePLTE.bind(this))
    }, r.prototype._parsePLTE = function (e) {
        this._crc.write(e);
        for (var t = Math.floor(e.length / 3), i = 0; i < t; i++) this._palette.push([e[3 * i], e[3 * i + 1], e[3 * i + 2], 255]);
        this.palette(this._palette), this._handleChunkEnd()
    }, r.prototype._handleTRNS = function (e) {
        this.read(e, this._parseTRNS.bind(this))
    }, r.prototype._parseTRNS = function (e) {
        if (this._crc.write(e), this._colorType === n.COLORTYPE_PALETTE_COLOR) {
            if (0 === this._palette.length) return void this.error(new Error("Transparency chunk must be after palette"));
            if (e.length > this._palette.length) return void this.error(new Error("More transparent colors than palette size"));
            for (var t = 0; t < e.length; t++) this._palette[t][3] = e[t];
            this.palette(this._palette)
        }
        this._colorType === n.COLORTYPE_GRAYSCALE && this.transColor([e.readUInt16BE(0)]), this._colorType === n.COLORTYPE_COLOR && this.transColor([e.readUInt16BE(0), e.readUInt16BE(2), e.readUInt16BE(4)]), this._handleChunkEnd()
    }, r.prototype._handleGAMA = function (e) {
        this.read(e, this._parseGAMA.bind(this))
    }, r.prototype._parseGAMA = function (e) {
        this._crc.write(e), this.gamma(e.readUInt32BE(0) / n.GAMMA_DIVISION), this._handleChunkEnd()
    }, r.prototype._handleIDAT = function (e) {
        this.read(-e, this._parseIDAT.bind(this, e))
    }, r.prototype._parseIDAT = function (e, t) {
        if (this._crc.write(t), this._colorType === n.COLORTYPE_PALETTE_COLOR && 0 === this._palette.length) throw new Error("Expected palette not found");
        this.inflateData(t);
        var i = e - t.length;
        i > 0 ? this._handleIDAT(i) : this._handleChunkEnd()
    }, r.prototype._handleIEND = function (e) {
        this.read(e, this._parseIEND.bind(this))
    }, r.prototype._parseIEND = function (e) {
        this._crc.write(e), this._hasIEND = !0, this._handleChunkEnd(), this.finished && this.finished()
    }
}, function (e, t, i) {
    "use strict";
    var n = [];
    !function () {
        for (var e = 0; e < 256; e++) {
            for (var t = e, i = 0; i < 8; i++) 1 & t ? t = 3988292384 ^ t >>> 1 : t >>>= 1;
            n[e] = t
        }
    }();
    var o = e.exports = function () {
        this._crc = -1
    };
    o.prototype.write = function (e) {
        for (var t = 0; t < e.length; t++) this._crc = n[255 & (this._crc ^ e[t])] ^ this._crc >>> 8;
        return !0
    }, o.prototype.crc32 = function () {
        return -1 ^ this._crc
    }, o.crc32 = function (e) {
        for (var t = -1, i = 0; i < e.length; i++) t = n[255 & (t ^ e[i])] ^ t >>> 8;
        return -1 ^ t
    }
}, function (e, t, i) {
    "use strict";
    var n = i(187), o = {
        1: {0: 0, 1: 0, 2: 0, 3: 255},
        2: {0: 0, 1: 0, 2: 0, 3: 1},
        3: {0: 0, 1: 1, 2: 2, 3: 255},
        4: {0: 0, 1: 1, 2: 2, 3: 3}
    };

    function r(e, t, i, n, r, s) {
        for (var a = e.width, l = e.height, c = e.index, u = 0; u < l; u++) for (var d = 0; d < a; d++) {
            for (var h = i(d, u, c), p = 0; p < 4; p++) {
                var f = o[n][p];
                if (255 === f) t[h + p] = 255; else {
                    var A = f + s;
                    if (A === r.length) throw new Error("Ran out of data");
                    t[h + p] = r[A]
                }
            }
            s += n
        }
        return s
    }

    function s(e, t, i, n, r, s) {
        for (var a = e.width, l = e.height, c = e.index, u = 0; u < l; u++) {
            for (var d = 0; d < a; d++) for (var h = r.get(n), p = i(d, u, c), f = 0; f < 4; f++) {
                var A = o[n][f];
                t[p + f] = 255 !== A ? h[A] : s
            }
            r.resetAfterLine()
        }
    }

    t.dataToBitMap = function (e, t) {
        var i, o = t.width, a = t.height, l = t.depth, c = t.bpp, u = t.interlace;
        if (8 !== l) var d = function (e, t) {
            var i = [], n = 0;

            function o() {
                if (n === e.length) throw new Error("Ran out of data");
                var o, r, s, a, l, c, u, d, h = e[n];
                switch (n++, t) {
                    default:
                        throw new Error("unrecognised depth");
                    case 16:
                        u = e[n], n++, i.push((h << 8) + u);
                        break;
                    case 4:
                        u = 15 & h, d = h >> 4, i.push(d, u);
                        break;
                    case 2:
                        l = 3 & h, c = h >> 2 & 3, u = h >> 4 & 3, d = h >> 6 & 3, i.push(d, u, c, l);
                        break;
                    case 1:
                        o = 1 & h, r = h >> 1 & 1, s = h >> 2 & 1, a = h >> 3 & 1, l = h >> 4 & 1, c = h >> 5 & 1, u = h >> 6 & 1, d = h >> 7 & 1, i.push(d, u, c, l, a, s, r, o)
                }
            }

            return {
                get: function (e) {
                    for (; i.length < e;) o();
                    var t = i.slice(0, e);
                    return i = i.slice(e), t
                }, resetAfterLine: function () {
                    i.length = 0
                }, end: function () {
                    if (n !== e.length) throw new Error("extra data found")
                }
            }
        }(e, l);
        i = l <= 8 ? new Buffer(o * a * 4) : new Uint16Array(o * a * 4);
        var h, p, f = Math.pow(2, l) - 1, A = 0;
        if (u) h = n.getImagePasses(o, a), p = n.getInterlaceIterator(o, a); else {
            var g = 0;
            p = function () {
                var e = g;
                return g += 4, e
            }, h = [{width: o, height: a}]
        }
        for (var v = 0; v < h.length; v++) 8 === l ? A = r(h[v], i, p, c, e, A) : s(h[v], i, p, c, d, f);
        if (8 === l) {
            if (A !== e.length) throw new Error("extra data found")
        } else d.end();
        return i
    }
}, function (e, t, i) {
    "use strict";
    e.exports = function (e, t) {
        var i = t.depth, n = t.width, o = t.height, r = t.colorType, s = t.transColor, a = t.palette, l = e;
        return 3 === r ? function (e, t, i, n, o) {
            for (var r = 0, s = 0; s < n; s++) for (var a = 0; a < i; a++) {
                var l = o[e[r]];
                if (!l) throw new Error("index " + e[r] + " not in palette");
                for (var c = 0; c < 4; c++) t[r + c] = l[c];
                r += 4
            }
        }(e, l, n, o, a) : (s && function (e, t, i, n, o) {
            for (var r = 0, s = 0; s < n; s++) for (var a = 0; a < i; a++) {
                var l = !1;
                if (1 === o.length ? o[0] === e[r] && (l = !0) : o[0] === e[r] && o[1] === e[r + 1] && o[2] === e[r + 2] && (l = !0), l) for (var c = 0; c < 4; c++) t[r + c] = 0;
                r += 4
            }
        }(e, l, n, o, s), 8 !== i && (16 === i && (l = new Buffer(n * o * 4)), function (e, t, i, n, o) {
            for (var r = Math.pow(2, o) - 1, s = 0, a = 0; a < n; a++) for (var l = 0; l < i; l++) {
                for (var c = 0; c < 4; c++) t[s + c] = Math.floor(255 * e[s + c] / r + .5);
                s += 4
            }
        }(e, l, n, o, i))), l
    }
}, function (e, t, i) {
    "use strict";
    var n = i(127), o = i(190), r = i(500), s = i(501), a = i(63), l = e.exports = function (e) {
        if (this._options = e, e.deflateChunkSize = e.deflateChunkSize || 32768, e.deflateLevel = null != e.deflateLevel ? e.deflateLevel : 9, e.deflateStrategy = null != e.deflateStrategy ? e.deflateStrategy : 3, e.inputHasAlpha = null == e.inputHasAlpha || e.inputHasAlpha, e.deflateFactory = e.deflateFactory || a.createDeflate, e.bitDepth = e.bitDepth || 8, e.colorType = "number" == typeof e.colorType ? e.colorType : n.COLORTYPE_COLOR_ALPHA, e.inputColorType = "number" == typeof e.inputColorType ? e.inputColorType : n.COLORTYPE_COLOR_ALPHA, -1 === [n.COLORTYPE_GRAYSCALE, n.COLORTYPE_COLOR, n.COLORTYPE_COLOR_ALPHA, n.COLORTYPE_ALPHA].indexOf(e.colorType)) throw new Error("option color type:" + e.colorType + " is not supported at present");
        if (-1 === [n.COLORTYPE_GRAYSCALE, n.COLORTYPE_COLOR, n.COLORTYPE_COLOR_ALPHA, n.COLORTYPE_ALPHA].indexOf(e.inputColorType)) throw new Error("option input color type:" + e.inputColorType + " is not supported at present");
        if (8 !== e.bitDepth && 16 !== e.bitDepth) throw new Error("option bit depth:" + e.bitDepth + " is not supported at present")
    };
    l.prototype.getDeflateOptions = function () {
        return {
            chunkSize: this._options.deflateChunkSize,
            level: this._options.deflateLevel,
            strategy: this._options.deflateStrategy
        }
    }, l.prototype.createDeflate = function () {
        return this._options.deflateFactory(this.getDeflateOptions())
    }, l.prototype.filterData = function (e, t, i) {
        var o = r(e, t, i, this._options), a = n.COLORTYPE_TO_BPP_MAP[this._options.colorType];
        return s(o, t, i, this._options, a)
    }, l.prototype._packChunk = function (e, t) {
        var i = t ? t.length : 0, n = new Buffer(i + 12);
        return n.writeUInt32BE(i, 0), n.writeUInt32BE(e, 4), t && t.copy(n, 8), n.writeInt32BE(o.crc32(n.slice(4, n.length - 4)), n.length - 4), n
    }, l.prototype.packGAMA = function (e) {
        var t = new Buffer(4);
        return t.writeUInt32BE(Math.floor(e * n.GAMMA_DIVISION), 0), this._packChunk(n.TYPE_gAMA, t)
    }, l.prototype.packIHDR = function (e, t) {
        var i = new Buffer(13);
        return i.writeUInt32BE(e, 0), i.writeUInt32BE(t, 4), i[8] = this._options.bitDepth, i[9] = this._options.colorType, i[10] = 0, i[11] = 0, i[12] = 0, this._packChunk(n.TYPE_IHDR, i)
    }, l.prototype.packIDAT = function (e) {
        return this._packChunk(n.TYPE_IDAT, e)
    }, l.prototype.packIEND = function () {
        return this._packChunk(n.TYPE_IEND, null)
    }
}, function (e, t, i) {
    "use strict";
    var n = e.exports = function (e) {
        this._buffer = e, this._reads = []
    };
    n.prototype.read = function (e, t) {
        this._reads.push({length: Math.abs(e), allowLess: e < 0, func: t})
    }, n.prototype.process = function () {
        for (; this._reads.length > 0 && this._buffer.length;) {
            var e = this._reads[0];
            if (!this._buffer.length || !(this._buffer.length >= e.length || e.allowLess)) break;
            this._reads.shift();
            var t = this._buffer;
            this._buffer = t.slice(e.length), e.func.call(this, t.slice(0, e.length))
        }
        return this._reads.length > 0 ? new Error("There are some read requests waitng on finished stream") : this._buffer.length > 0 ? new Error("unrecognised content at end of stream") : void 0
    }
}, function (e, t, i) {
    var n = i(142);

    function o(e, t) {
        var i = e.a / 255, n = t + '="' + e.hex + '"';
        return i < 1 ? n + " " + t + '-opacity="' + i.toFixed(2).slice(1) + '"' : n
    }

    function r(e, t, i) {
        var n = e + t;
        return void 0 !== i && (n += " " + i), n
    }

    t.render = function (e, t, i) {
        var s = n.getOptions(t), a = e.modules.size, l = e.modules.data, c = a + 2 * s.margin,
            u = s.color.light.a ? "<path " + o(s.color.light, "fill") + ' d="M0 0h' + c + "v" + c + 'H0z"/>' : "",
            d = "<path " + o(s.color.dark, "stroke") + ' d="' + function (e, t, i) {
                for (var n = "", o = 0, s = !1, a = 0, l = 0; l < e.length; l++) {
                    var c = Math.floor(l % t), u = Math.floor(l / t);
                    c || s || (s = !0), e[l] ? (a++, l > 0 && c > 0 && e[l - 1] || (n += s ? r("M", c + i, .5 + u + i) : r("m", o, 0), o = 0, s = !1), c + 1 < t && e[l + 1] || (n += r("h", a), a = 0)) : o++
                }
                return n
            }(l, a, s.margin) + '"/>', h = 'viewBox="0 0 ' + c + " " + c + '"',
            p = '<svg xmlns="http://www.w3.org/2000/svg" ' + (s.width ? 'width="' + s.width + '" height="' + s.width + '" ' : "") + h + ' shape-rendering="crispEdges">' + u + d + "</svg>\n";
        return "function" == typeof i && i(null, p), p
    }
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(136), r = i(128), s = i(4), a = i(124), l = i(1).default.getLogger("ThunderBirdKey");
    var c;
    !function (e) {
        e[e.ShowUI_Decoding = 0] = "ShowUI_Decoding", e[e.ShowUI_Creating = 1] = "ShowUI_Creating", e[e.ShowUI_DecodeFailed = 2] = "ShowUI_DecodeFailed", e[e.ShowUI_CreateFailed = 3] = "ShowUI_CreateFailed", e[e.ShowUI_CreateSucc = 4] = "ShowUI_CreateSucc", e[e.ShowUI_CreateSuccDis = 5] = "ShowUI_CreateSuccDis"
    }(c = t.ShowType || (t.ShowType = {}));

    class u {
        constructor() {
            this.lastBirdKey = []
        }

        static GetInstance() {
            return u.instance || (u.instance = new u), u.instance
        }

        setLastBirdKey(e) {
            if (e && 0 !== e.length) {
                this.lastBirdKey = [];
                for (let t = 0; t < e.length; t++) this.lastBirdKey.push(e[t])
            }
        }

        getLastBirdKey() {
            return this.lastBirdKey
        }

        isSameBirdKey(e) {
            if (!this.lastBirdKey) return !1;
            if (e.length !== this.lastBirdKey.length) return !1;
            let t = 0;
            for (let i = 0; i < e.length; i++) e[i] === this.lastBirdKey[i] && t++;
            return t === e.length
        }
    }

    function d(e, t, i, n) {
        let r = {url: "/dlj_create", data: {url: e, "Chat-Version": 2}, method: "post"};
        return "string" == typeof i && (r.data.type = i), t && (r.data.uid = t), "string" == typeof n && (r.data.passwd = n), o.fetchSlRes(r)
    }

    function h(e, t, i) {
        return d(e, t, i)
    }

    u.instance = null, t.encodeBirdKey = d, t.setBirdKeyPriority = function (e, t, i = !1) {
        return o.fetchSlRes({url: "/dlj/option", data: {url: e, priority: i, "Chat-Version": 2}, method: "put"})
    }, t.queryBirdKeyInfo = h, t.getUserNameByID = function (e) {
        return o.fetchSlRes({url: "/user_info/pc_info", data: {uid: e}})
    }, t.decodeBirdKey = function (e) {
        return n(this, void 0, void 0, function* () {
            let t = yield s.client.callServerFunction("GetThunderVersion");
            return o.fetchSlRes({
                url: "/dlj/bird_key",
                data: {_h: {"Chat-Version": 2, "Version-Name": t}, key: e.toLowerCase()},
                method: "get"
            })
        })
    }, t.openBirdKeyEncodeDialog = function (e, t) {
        return n(this, void 0, void 0, function* () {
            let i = function (e, t) {
                l.information("弹出生成迅雷口令面板,begin,url=", e), r.MessageBox.custom("BirdKeyShow", {
                    showType: c.ShowUI_Creating,
                    url: e,
                    statData: t
                }, {modal: !1}).catch(e => {
                    l.information("弹出生成迅雷口令面板,error=", e)
                }), l.information("弹出生成迅雷口令面板,end")
            };
            l.information("调用promise IsLogined 函数 Begin");
            let o = yield s.client.callServerFunction("IsLogined");
            l.information("调用promise IsLogined 函数 End, isLogined=", o), o ? i(e, t) : h(e).then(o => n(this, void 0, void 0, function* () {
                if ("object" != typeof o) return Promise.resolve();
                if (!o.data) return Promise.resolve();
                if ("encrypted" === o.data.type) {
                    let n = yield a.default(!1, !0, "birdkey");
                    if (!n || "" === n) return;
                    i(e, t)
                } else i(e, t);
                return Promise.resolve()
            })).catch(e => {
                l.information("调用queryBirdKeyInfo 接口异常 error=", e)
            })
        })
    }, t.openBirdKeyDecodeDialog = function (e, t) {
        r.MessageBox.custom("BirdKeyShow", {
            showType: c.ShowUI_Decoding,
            birdkeyChars: e,
            statData: t
        }, {modal: !1}).catch()
    }, t.saveVestUrlToConfig = function (e, t) {
        let i = t ? "vestURL" : "commonUrl";
        s.client.callServerFunction("GetValue", "BirdKeyVest", i, []).then(t => {
            let n = t || [];
            "" !== e && -1 === n.join().indexOf(e) && (n.push(e), s.client.callServerFunction("SetValue", "BirdKeyVest", i, n).catch())
        }).catch()
    }, t.isVestUrl = function (e, t) {
        return n(this, void 0, void 0, function* () {
            let i = yield s.client.callServerFunction("GetValue", "BirdKeyVest", t, []);
            return "" !== e && -1 !== (i || []).join().indexOf(e)
        })
    }, t.getBirdKeyMgr = function () {
        return u.GetInstance()
    }
}, , , , function (e, t, i) {
    "use strict";
    var n = i(1002);
    i.n(n).a
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(628), o = i(294);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-tip.vue", t.default = a.exports
}, function (e, t, i) {
    e.exports = i(8)(27)
}, function (e, t, i) {
    (function (e) {
        var i;
        !function () {
            var n = "object" == typeof self && self.self === self && self || "object" == typeof global && global.global === global && global || this || {},
                o = n._, r = Array.prototype, s = Object.prototype,
                a = "undefined" != typeof Symbol ? Symbol.prototype : null, l = r.push, c = r.slice, u = s.toString,
                d = s.hasOwnProperty, h = Array.isArray, p = Object.keys, f = Object.create, A = function () {
                }, g = function (e) {
                    return e instanceof g ? e : this instanceof g ? void (this._wrapped = e) : new g(e)
                };
            void 0 === t || t.nodeType ? n._ = g : (void 0 !== e && !e.nodeType && e.exports && (t = e.exports = g), t._ = g), g.VERSION = "1.9.1";
            var v, m = function (e, t, i) {
                if (void 0 === t) return e;
                switch (null == i ? 3 : i) {
                    case 1:
                        return function (i) {
                            return e.call(t, i)
                        };
                    case 3:
                        return function (i, n, o) {
                            return e.call(t, i, n, o)
                        };
                    case 4:
                        return function (i, n, o, r) {
                            return e.call(t, i, n, o, r)
                        }
                }
                return function () {
                    return e.apply(t, arguments)
                }
            }, C = function (e, t, i) {
                return g.iteratee !== v ? g.iteratee(e, t) : null == e ? g.identity : g.isFunction(e) ? m(e, t, i) : g.isObject(e) && !g.isArray(e) ? g.matcher(e) : g.property(e)
            };
            g.iteratee = v = function (e, t) {
                return C(e, t, 1 / 0)
            };
            var y = function (e, t) {
                return t = null == t ? e.length - 1 : +t, function () {
                    for (var i = Math.max(arguments.length - t, 0), n = Array(i), o = 0; o < i; o++) n[o] = arguments[o + t];
                    switch (t) {
                        case 0:
                            return e.call(this, n);
                        case 1:
                            return e.call(this, arguments[0], n);
                        case 2:
                            return e.call(this, arguments[0], arguments[1], n)
                    }
                    var r = Array(t + 1);
                    for (o = 0; o < t; o++) r[o] = arguments[o];
                    return r[t] = n, e.apply(this, r)
                }
            }, w = function (e) {
                if (!g.isObject(e)) return {};
                if (f) return f(e);
                A.prototype = e;
                var t = new A;
                return A.prototype = null, t
            }, b = function (e) {
                return function (t) {
                    return null == t ? void 0 : t[e]
                }
            }, I = function (e, t) {
                return null != e && d.call(e, t)
            }, E = function (e, t) {
                for (var i = t.length, n = 0; n < i; n++) {
                    if (null == e) return;
                    e = e[t[n]]
                }
                return i ? e : void 0
            }, x = Math.pow(2, 53) - 1, k = b("length"), S = function (e) {
                var t = k(e);
                return "number" == typeof t && t >= 0 && t <= x
            };
            g.each = g.forEach = function (e, t, i) {
                var n, o;
                if (t = m(t, i), S(e)) for (n = 0, o = e.length; n < o; n++) t(e[n], n, e); else {
                    var r = g.keys(e);
                    for (n = 0, o = r.length; n < o; n++) t(e[r[n]], r[n], e)
                }
                return e
            }, g.map = g.collect = function (e, t, i) {
                t = C(t, i);
                for (var n = !S(e) && g.keys(e), o = (n || e).length, r = Array(o), s = 0; s < o; s++) {
                    var a = n ? n[s] : s;
                    r[s] = t(e[a], a, e)
                }
                return r
            };
            var D = function (e) {
                return function (t, i, n, o) {
                    var r = arguments.length >= 3;
                    return function (t, i, n, o) {
                        var r = !S(t) && g.keys(t), s = (r || t).length, a = e > 0 ? 0 : s - 1;
                        for (o || (n = t[r ? r[a] : a], a += e); a >= 0 && a < s; a += e) {
                            var l = r ? r[a] : a;
                            n = i(n, t[l], l, t)
                        }
                        return n
                    }(t, m(i, o, 4), n, r)
                }
            };
            g.reduce = g.foldl = g.inject = D(1), g.reduceRight = g.foldr = D(-1), g.find = g.detect = function (e, t, i) {
                var n = (S(e) ? g.findIndex : g.findKey)(e, t, i);
                if (void 0 !== n && -1 !== n) return e[n]
            }, g.filter = g.select = function (e, t, i) {
                var n = [];
                return t = C(t, i), g.each(e, function (e, i, o) {
                    t(e, i, o) && n.push(e)
                }), n
            }, g.reject = function (e, t, i) {
                return g.filter(e, g.negate(C(t)), i)
            }, g.every = g.all = function (e, t, i) {
                t = C(t, i);
                for (var n = !S(e) && g.keys(e), o = (n || e).length, r = 0; r < o; r++) {
                    var s = n ? n[r] : r;
                    if (!t(e[s], s, e)) return !1
                }
                return !0
            }, g.some = g.any = function (e, t, i) {
                t = C(t, i);
                for (var n = !S(e) && g.keys(e), o = (n || e).length, r = 0; r < o; r++) {
                    var s = n ? n[r] : r;
                    if (t(e[s], s, e)) return !0
                }
                return !1
            }, g.contains = g.includes = g.include = function (e, t, i, n) {
                return S(e) || (e = g.values(e)), ("number" != typeof i || n) && (i = 0), g.indexOf(e, t, i) >= 0
            }, g.invoke = y(function (e, t, i) {
                var n, o;
                return g.isFunction(t) ? o = t : g.isArray(t) && (n = t.slice(0, -1), t = t[t.length - 1]), g.map(e, function (e) {
                    var r = o;
                    if (!r) {
                        if (n && n.length && (e = E(e, n)), null == e) return;
                        r = e[t]
                    }
                    return null == r ? r : r.apply(e, i)
                })
            }), g.pluck = function (e, t) {
                return g.map(e, g.property(t))
            }, g.where = function (e, t) {
                return g.filter(e, g.matcher(t))
            }, g.findWhere = function (e, t) {
                return g.find(e, g.matcher(t))
            }, g.max = function (e, t, i) {
                var n, o, r = -1 / 0, s = -1 / 0;
                if (null == t || "number" == typeof t && "object" != typeof e[0] && null != e) for (var a = 0, l = (e = S(e) ? e : g.values(e)).length; a < l; a++) null != (n = e[a]) && n > r && (r = n); else t = C(t, i), g.each(e, function (e, i, n) {
                    ((o = t(e, i, n)) > s || o === -1 / 0 && r === -1 / 0) && (r = e, s = o)
                });
                return r
            }, g.min = function (e, t, i) {
                var n, o, r = 1 / 0, s = 1 / 0;
                if (null == t || "number" == typeof t && "object" != typeof e[0] && null != e) for (var a = 0, l = (e = S(e) ? e : g.values(e)).length; a < l; a++) null != (n = e[a]) && n < r && (r = n); else t = C(t, i), g.each(e, function (e, i, n) {
                    ((o = t(e, i, n)) < s || o === 1 / 0 && r === 1 / 0) && (r = e, s = o)
                });
                return r
            }, g.shuffle = function (e) {
                return g.sample(e, 1 / 0)
            }, g.sample = function (e, t, i) {
                if (null == t || i) return S(e) || (e = g.values(e)), e[g.random(e.length - 1)];
                var n = S(e) ? g.clone(e) : g.values(e), o = k(n);
                t = Math.max(Math.min(t, o), 0);
                for (var r = o - 1, s = 0; s < t; s++) {
                    var a = g.random(s, r), l = n[s];
                    n[s] = n[a], n[a] = l
                }
                return n.slice(0, t)
            }, g.sortBy = function (e, t, i) {
                var n = 0;
                return t = C(t, i), g.pluck(g.map(e, function (e, i, o) {
                    return {value: e, index: n++, criteria: t(e, i, o)}
                }).sort(function (e, t) {
                    var i = e.criteria, n = t.criteria;
                    if (i !== n) {
                        if (i > n || void 0 === i) return 1;
                        if (i < n || void 0 === n) return -1
                    }
                    return e.index - t.index
                }), "value")
            };
            var B = function (e, t) {
                return function (i, n, o) {
                    var r = t ? [[], []] : {};
                    return n = C(n, o), g.each(i, function (t, o) {
                        var s = n(t, o, i);
                        e(r, t, s)
                    }), r
                }
            };
            g.groupBy = B(function (e, t, i) {
                I(e, i) ? e[i].push(t) : e[i] = [t]
            }), g.indexBy = B(function (e, t, i) {
                e[i] = t
            }), g.countBy = B(function (e, t, i) {
                I(e, i) ? e[i]++ : e[i] = 1
            });
            var P = /[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;
            g.toArray = function (e) {
                return e ? g.isArray(e) ? c.call(e) : g.isString(e) ? e.match(P) : S(e) ? g.map(e, g.identity) : g.values(e) : []
            }, g.size = function (e) {
                return null == e ? 0 : S(e) ? e.length : g.keys(e).length
            }, g.partition = B(function (e, t, i) {
                e[i ? 0 : 1].push(t)
            }, !0), g.first = g.head = g.take = function (e, t, i) {
                return null == e || e.length < 1 ? null == t ? void 0 : [] : null == t || i ? e[0] : g.initial(e, e.length - t)
            }, g.initial = function (e, t, i) {
                return c.call(e, 0, Math.max(0, e.length - (null == t || i ? 1 : t)))
            }, g.last = function (e, t, i) {
                return null == e || e.length < 1 ? null == t ? void 0 : [] : null == t || i ? e[e.length - 1] : g.rest(e, Math.max(0, e.length - t))
            }, g.rest = g.tail = g.drop = function (e, t, i) {
                return c.call(e, null == t || i ? 1 : t)
            }, g.compact = function (e) {
                return g.filter(e, Boolean)
            };
            var M = function (e, t, i, n) {
                for (var o = (n = n || []).length, r = 0, s = k(e); r < s; r++) {
                    var a = e[r];
                    if (S(a) && (g.isArray(a) || g.isArguments(a))) if (t) for (var l = 0, c = a.length; l < c;) n[o++] = a[l++]; else M(a, t, i, n), o = n.length; else i || (n[o++] = a)
                }
                return n
            };
            g.flatten = function (e, t) {
                return M(e, t, !1)
            }, g.without = y(function (e, t) {
                return g.difference(e, t)
            }), g.uniq = g.unique = function (e, t, i, n) {
                g.isBoolean(t) || (n = i, i = t, t = !1), null != i && (i = C(i, n));
                for (var o = [], r = [], s = 0, a = k(e); s < a; s++) {
                    var l = e[s], c = i ? i(l, s, e) : l;
                    t && !i ? (s && r === c || o.push(l), r = c) : i ? g.contains(r, c) || (r.push(c), o.push(l)) : g.contains(o, l) || o.push(l)
                }
                return o
            }, g.union = y(function (e) {
                return g.uniq(M(e, !0, !0))
            }), g.intersection = function (e) {
                for (var t = [], i = arguments.length, n = 0, o = k(e); n < o; n++) {
                    var r = e[n];
                    if (!g.contains(t, r)) {
                        var s;
                        for (s = 1; s < i && g.contains(arguments[s], r); s++) ;
                        s === i && t.push(r)
                    }
                }
                return t
            }, g.difference = y(function (e, t) {
                return t = M(t, !0, !0), g.filter(e, function (e) {
                    return !g.contains(t, e)
                })
            }), g.unzip = function (e) {
                for (var t = e && g.max(e, k).length || 0, i = Array(t), n = 0; n < t; n++) i[n] = g.pluck(e, n);
                return i
            }, g.zip = y(g.unzip), g.object = function (e, t) {
                for (var i = {}, n = 0, o = k(e); n < o; n++) t ? i[e[n]] = t[n] : i[e[n][0]] = e[n][1];
                return i
            };
            var R = function (e) {
                return function (t, i, n) {
                    i = C(i, n);
                    for (var o = k(t), r = e > 0 ? 0 : o - 1; r >= 0 && r < o; r += e) if (i(t[r], r, t)) return r;
                    return -1
                }
            };
            g.findIndex = R(1), g.findLastIndex = R(-1), g.sortedIndex = function (e, t, i, n) {
                for (var o = (i = C(i, n, 1))(t), r = 0, s = k(e); r < s;) {
                    var a = Math.floor((r + s) / 2);
                    i(e[a]) < o ? r = a + 1 : s = a
                }
                return r
            };
            var T = function (e, t, i) {
                return function (n, o, r) {
                    var s = 0, a = k(n);
                    if ("number" == typeof r) e > 0 ? s = r >= 0 ? r : Math.max(r + a, s) : a = r >= 0 ? Math.min(r + 1, a) : r + a + 1; else if (i && r && a) return n[r = i(n, o)] === o ? r : -1;
                    if (o != o) return (r = t(c.call(n, s, a), g.isNaN)) >= 0 ? r + s : -1;
                    for (r = e > 0 ? s : a - 1; r >= 0 && r < a; r += e) if (n[r] === o) return r;
                    return -1
                }
            };
            g.indexOf = T(1, g.findIndex, g.sortedIndex), g.lastIndexOf = T(-1, g.findLastIndex), g.range = function (e, t, i) {
                null == t && (t = e || 0, e = 0), i || (i = t < e ? -1 : 1);
                for (var n = Math.max(Math.ceil((t - e) / i), 0), o = Array(n), r = 0; r < n; r++, e += i) o[r] = e;
                return o
            }, g.chunk = function (e, t) {
                if (null == t || t < 1) return [];
                for (var i = [], n = 0, o = e.length; n < o;) i.push(c.call(e, n, n += t));
                return i
            };
            var Q = function (e, t, i, n, o) {
                if (!(n instanceof t)) return e.apply(i, o);
                var r = w(e.prototype), s = e.apply(r, o);
                return g.isObject(s) ? s : r
            };
            g.bind = y(function (e, t, i) {
                if (!g.isFunction(e)) throw new TypeError("Bind must be called on a function");
                var n = y(function (o) {
                    return Q(e, n, t, this, i.concat(o))
                });
                return n
            }), g.partial = y(function (e, t) {
                var i = g.partial.placeholder, n = function () {
                    for (var o = 0, r = t.length, s = Array(r), a = 0; a < r; a++) s[a] = t[a] === i ? arguments[o++] : t[a];
                    for (; o < arguments.length;) s.push(arguments[o++]);
                    return Q(e, n, this, this, s)
                };
                return n
            }), g.partial.placeholder = g, g.bindAll = y(function (e, t) {
                var i = (t = M(t, !1, !1)).length;
                if (i < 1) throw new Error("bindAll must be passed function names");
                for (; i--;) {
                    var n = t[i];
                    e[n] = g.bind(e[n], e)
                }
            }), g.memoize = function (e, t) {
                var i = function (n) {
                    var o = i.cache, r = "" + (t ? t.apply(this, arguments) : n);
                    return I(o, r) || (o[r] = e.apply(this, arguments)), o[r]
                };
                return i.cache = {}, i
            }, g.delay = y(function (e, t, i) {
                return setTimeout(function () {
                    return e.apply(null, i)
                }, t)
            }), g.defer = g.partial(g.delay, g, 1), g.throttle = function (e, t, i) {
                var n, o, r, s, a = 0;
                i || (i = {});
                var l = function () {
                    a = !1 === i.leading ? 0 : g.now(), n = null, s = e.apply(o, r), n || (o = r = null)
                }, c = function () {
                    var c = g.now();
                    a || !1 !== i.leading || (a = c);
                    var u = t - (c - a);
                    return o = this, r = arguments, u <= 0 || u > t ? (n && (clearTimeout(n), n = null), a = c, s = e.apply(o, r), n || (o = r = null)) : n || !1 === i.trailing || (n = setTimeout(l, u)), s
                };
                return c.cancel = function () {
                    clearTimeout(n), a = 0, n = o = r = null
                }, c
            }, g.debounce = function (e, t, i) {
                var n, o, r = function (t, i) {
                    n = null, i && (o = e.apply(t, i))
                }, s = y(function (s) {
                    if (n && clearTimeout(n), i) {
                        var a = !n;
                        n = setTimeout(r, t), a && (o = e.apply(this, s))
                    } else n = g.delay(r, t, this, s);
                    return o
                });
                return s.cancel = function () {
                    clearTimeout(n), n = null
                }, s
            }, g.wrap = function (e, t) {
                return g.partial(t, e)
            }, g.negate = function (e) {
                return function () {
                    return !e.apply(this, arguments)
                }
            }, g.compose = function () {
                var e = arguments, t = e.length - 1;
                return function () {
                    for (var i = t, n = e[t].apply(this, arguments); i--;) n = e[i].call(this, n);
                    return n
                }
            }, g.after = function (e, t) {
                return function () {
                    if (--e < 1) return t.apply(this, arguments)
                }
            }, g.before = function (e, t) {
                var i;
                return function () {
                    return --e > 0 && (i = t.apply(this, arguments)), e <= 1 && (t = null), i
                }
            }, g.once = g.partial(g.before, 2), g.restArguments = y;
            var N = !{toString: null}.propertyIsEnumerable("toString"),
                O = ["valueOf", "isPrototypeOf", "toString", "propertyIsEnumerable", "hasOwnProperty", "toLocaleString"],
                j = function (e, t) {
                    var i = O.length, n = e.constructor, o = g.isFunction(n) && n.prototype || s, r = "constructor";
                    for (I(e, r) && !g.contains(t, r) && t.push(r); i--;) (r = O[i]) in e && e[r] !== o[r] && !g.contains(t, r) && t.push(r)
                };
            g.keys = function (e) {
                if (!g.isObject(e)) return [];
                if (p) return p(e);
                var t = [];
                for (var i in e) I(e, i) && t.push(i);
                return N && j(e, t), t
            }, g.allKeys = function (e) {
                if (!g.isObject(e)) return [];
                var t = [];
                for (var i in e) t.push(i);
                return N && j(e, t), t
            }, g.values = function (e) {
                for (var t = g.keys(e), i = t.length, n = Array(i), o = 0; o < i; o++) n[o] = e[t[o]];
                return n
            }, g.mapObject = function (e, t, i) {
                t = C(t, i);
                for (var n = g.keys(e), o = n.length, r = {}, s = 0; s < o; s++) {
                    var a = n[s];
                    r[a] = t(e[a], a, e)
                }
                return r
            }, g.pairs = function (e) {
                for (var t = g.keys(e), i = t.length, n = Array(i), o = 0; o < i; o++) n[o] = [t[o], e[t[o]]];
                return n
            }, g.invert = function (e) {
                for (var t = {}, i = g.keys(e), n = 0, o = i.length; n < o; n++) t[e[i[n]]] = i[n];
                return t
            }, g.functions = g.methods = function (e) {
                var t = [];
                for (var i in e) g.isFunction(e[i]) && t.push(i);
                return t.sort()
            };
            var F = function (e, t) {
                return function (i) {
                    var n = arguments.length;
                    if (t && (i = Object(i)), n < 2 || null == i) return i;
                    for (var o = 1; o < n; o++) for (var r = arguments[o], s = e(r), a = s.length, l = 0; l < a; l++) {
                        var c = s[l];
                        t && void 0 !== i[c] || (i[c] = r[c])
                    }
                    return i
                }
            };
            g.extend = F(g.allKeys), g.extendOwn = g.assign = F(g.keys), g.findKey = function (e, t, i) {
                t = C(t, i);
                for (var n, o = g.keys(e), r = 0, s = o.length; r < s; r++) if (t(e[n = o[r]], n, e)) return n
            };
            var K, U, L = function (e, t, i) {
                return t in i
            };
            g.pick = y(function (e, t) {
                var i = {}, n = t[0];
                if (null == e) return i;
                g.isFunction(n) ? (t.length > 1 && (n = m(n, t[1])), t = g.allKeys(e)) : (n = L, t = M(t, !1, !1), e = Object(e));
                for (var o = 0, r = t.length; o < r; o++) {
                    var s = t[o], a = e[s];
                    n(a, s, e) && (i[s] = a)
                }
                return i
            }), g.omit = y(function (e, t) {
                var i, n = t[0];
                return g.isFunction(n) ? (n = g.negate(n), t.length > 1 && (i = t[1])) : (t = g.map(M(t, !1, !1), String), n = function (e, i) {
                    return !g.contains(t, i)
                }), g.pick(e, n, i)
            }), g.defaults = F(g.allKeys, !0), g.create = function (e, t) {
                var i = w(e);
                return t && g.extendOwn(i, t), i
            }, g.clone = function (e) {
                return g.isObject(e) ? g.isArray(e) ? e.slice() : g.extend({}, e) : e
            }, g.tap = function (e, t) {
                return t(e), e
            }, g.isMatch = function (e, t) {
                var i = g.keys(t), n = i.length;
                if (null == e) return !n;
                for (var o = Object(e), r = 0; r < n; r++) {
                    var s = i[r];
                    if (t[s] !== o[s] || !(s in o)) return !1
                }
                return !0
            }, K = function (e, t, i, n) {
                if (e === t) return 0 !== e || 1 / e == 1 / t;
                if (null == e || null == t) return !1;
                if (e != e) return t != t;
                var o = typeof e;
                return ("function" === o || "object" === o || "object" == typeof t) && U(e, t, i, n)
            }, U = function (e, t, i, n) {
                e instanceof g && (e = e._wrapped), t instanceof g && (t = t._wrapped);
                var o = u.call(e);
                if (o !== u.call(t)) return !1;
                switch (o) {
                    case"[object RegExp]":
                    case"[object String]":
                        return "" + e == "" + t;
                    case"[object Number]":
                        return +e != +e ? +t != +t : 0 == +e ? 1 / +e == 1 / t : +e == +t;
                    case"[object Date]":
                    case"[object Boolean]":
                        return +e == +t;
                    case"[object Symbol]":
                        return a.valueOf.call(e) === a.valueOf.call(t)
                }
                var r = "[object Array]" === o;
                if (!r) {
                    if ("object" != typeof e || "object" != typeof t) return !1;
                    var s = e.constructor, l = t.constructor;
                    if (s !== l && !(g.isFunction(s) && s instanceof s && g.isFunction(l) && l instanceof l) && "constructor" in e && "constructor" in t) return !1
                }
                i = i || [], n = n || [];
                for (var c = i.length; c--;) if (i[c] === e) return n[c] === t;
                if (i.push(e), n.push(t), r) {
                    if ((c = e.length) !== t.length) return !1;
                    for (; c--;) if (!K(e[c], t[c], i, n)) return !1
                } else {
                    var d, h = g.keys(e);
                    if (c = h.length, g.keys(t).length !== c) return !1;
                    for (; c--;) if (d = h[c], !I(t, d) || !K(e[d], t[d], i, n)) return !1
                }
                return i.pop(), n.pop(), !0
            }, g.isEqual = function (e, t) {
                return K(e, t)
            }, g.isEmpty = function (e) {
                return null == e || (S(e) && (g.isArray(e) || g.isString(e) || g.isArguments(e)) ? 0 === e.length : 0 === g.keys(e).length)
            }, g.isElement = function (e) {
                return !(!e || 1 !== e.nodeType)
            }, g.isArray = h || function (e) {
                return "[object Array]" === u.call(e)
            }, g.isObject = function (e) {
                var t = typeof e;
                return "function" === t || "object" === t && !!e
            }, g.each(["Arguments", "Function", "String", "Number", "Date", "RegExp", "Error", "Symbol", "Map", "WeakMap", "Set", "WeakSet"], function (e) {
                g["is" + e] = function (t) {
                    return u.call(t) === "[object " + e + "]"
                }
            }), g.isArguments(arguments) || (g.isArguments = function (e) {
                return I(e, "callee")
            });
            var z = n.document && n.document.childNodes;
            "function" != typeof /./ && "object" != typeof Int8Array && "function" != typeof z && (g.isFunction = function (e) {
                return "function" == typeof e || !1
            }), g.isFinite = function (e) {
                return !g.isSymbol(e) && isFinite(e) && !isNaN(parseFloat(e))
            }, g.isNaN = function (e) {
                return g.isNumber(e) && isNaN(e)
            }, g.isBoolean = function (e) {
                return !0 === e || !1 === e || "[object Boolean]" === u.call(e)
            }, g.isNull = function (e) {
                return null === e
            }, g.isUndefined = function (e) {
                return void 0 === e
            }, g.has = function (e, t) {
                if (!g.isArray(t)) return I(e, t);
                for (var i = t.length, n = 0; n < i; n++) {
                    var o = t[n];
                    if (null == e || !d.call(e, o)) return !1;
                    e = e[o]
                }
                return !!i
            }, g.noConflict = function () {
                return n._ = o, this
            }, g.identity = function (e) {
                return e
            }, g.constant = function (e) {
                return function () {
                    return e
                }
            }, g.noop = function () {
            }, g.property = function (e) {
                return g.isArray(e) ? function (t) {
                    return E(t, e)
                } : b(e)
            }, g.propertyOf = function (e) {
                return null == e ? function () {
                } : function (t) {
                    return g.isArray(t) ? E(e, t) : e[t]
                }
            }, g.matcher = g.matches = function (e) {
                return e = g.extendOwn({}, e), function (t) {
                    return g.isMatch(t, e)
                }
            }, g.times = function (e, t, i) {
                var n = Array(Math.max(0, e));
                t = m(t, i, 1);
                for (var o = 0; o < e; o++) n[o] = t(o);
                return n
            }, g.random = function (e, t) {
                return null == t && (t = e, e = 0), e + Math.floor(Math.random() * (t - e + 1))
            }, g.now = Date.now || function () {
                return (new Date).getTime()
            };
            var Y = {"&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#x27;", "`": "&#x60;"},
                G = g.invert(Y), H = function (e) {
                    var t = function (t) {
                        return e[t]
                    }, i = "(?:" + g.keys(e).join("|") + ")", n = RegExp(i), o = RegExp(i, "g");
                    return function (e) {
                        return e = null == e ? "" : "" + e, n.test(e) ? e.replace(o, t) : e
                    }
                };
            g.escape = H(Y), g.unescape = H(G), g.result = function (e, t, i) {
                g.isArray(t) || (t = [t]);
                var n = t.length;
                if (!n) return g.isFunction(i) ? i.call(e) : i;
                for (var o = 0; o < n; o++) {
                    var r = null == e ? void 0 : e[t[o]];
                    void 0 === r && (r = i, o = n), e = g.isFunction(r) ? r.call(e) : r
                }
                return e
            };
            var J = 0;
            g.uniqueId = function (e) {
                var t = ++J + "";
                return e ? e + t : t
            }, g.templateSettings = {
                evaluate: /<%([\s\S]+?)%>/g,
                interpolate: /<%=([\s\S]+?)%>/g,
                escape: /<%-([\s\S]+?)%>/g
            };
            var W = /(.)^/, V = {"'": "'", "\\": "\\", "\r": "r", "\n": "n", "\u2028": "u2028", "\u2029": "u2029"},
                q = /\\|'|\r|\n|\u2028|\u2029/g, Z = function (e) {
                    return "\\" + V[e]
                };
            g.template = function (e, t, i) {
                !t && i && (t = i), t = g.defaults({}, t, g.templateSettings);
                var n,
                    o = RegExp([(t.escape || W).source, (t.interpolate || W).source, (t.evaluate || W).source].join("|") + "|$", "g"),
                    r = 0, s = "__p+='";
                e.replace(o, function (t, i, n, o, a) {
                    return s += e.slice(r, a).replace(q, Z), r = a + t.length, i ? s += "'+\n((__t=(" + i + "))==null?'':_.escape(__t))+\n'" : n ? s += "'+\n((__t=(" + n + "))==null?'':__t)+\n'" : o && (s += "';\n" + o + "\n__p+='"), t
                }), s += "';\n", t.variable || (s = "with(obj||{}){\n" + s + "}\n"), s = "var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n" + s + "return __p;\n";
                try {
                    n = new Function(t.variable || "obj", "_", s)
                } catch (e) {
                    throw e.source = s, e
                }
                var a = function (e) {
                    return n.call(this, e, g)
                }, l = t.variable || "obj";
                return a.source = "function(" + l + "){\n" + s + "}", a
            }, g.chain = function (e) {
                var t = g(e);
                return t._chain = !0, t
            };
            var X = function (e, t) {
                return e._chain ? g(t).chain() : t
            };
            g.mixin = function (e) {
                return g.each(g.functions(e), function (t) {
                    var i = g[t] = e[t];
                    g.prototype[t] = function () {
                        var e = [this._wrapped];
                        return l.apply(e, arguments), X(this, i.apply(g, e))
                    }
                }), g
            }, g.mixin(g), g.each(["pop", "push", "reverse", "shift", "sort", "splice", "unshift"], function (e) {
                var t = r[e];
                g.prototype[e] = function () {
                    var i = this._wrapped;
                    return t.apply(i, arguments), "shift" !== e && "splice" !== e || 0 !== i.length || delete i[0], X(this, i)
                }
            }), g.each(["concat", "join", "slice"], function (e) {
                var t = r[e];
                g.prototype[e] = function () {
                    return X(this, t.apply(this._wrapped, arguments))
                }
            }), g.prototype.value = function () {
                return this._wrapped
            }, g.prototype.valueOf = g.prototype.toJSON = g.prototype.value, g.prototype.toString = function () {
                return String(this._wrapped)
            }, void 0 === (i = function () {
                return g
            }.apply(t, [])) || (e.exports = i)
        }()
    }).call(this, i(149)(e))
}, , function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(615), o = i(296);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-button.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(618), o = i(302);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-input.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(619), o = i(308);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-text.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1083);
    i.n(n).a
}, , function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(162), o = i.n(n), r = i(102), s = i.n(r), a = /%[sdj%]/g, l = function () {
    };

    function c() {
        for (var e = arguments.length, t = Array(e), i = 0; i < e; i++) t[i] = arguments[i];
        var n = 1, o = t[0], r = t.length;
        if ("function" == typeof o) return o.apply(null, t.slice(1));
        if ("string" == typeof o) {
            for (var s = String(o).replace(a, function (e) {
                if ("%%" === e) return "%";
                if (n >= r) return e;
                switch (e) {
                    case"%s":
                        return String(t[n++]);
                    case"%d":
                        return Number(t[n++]);
                    case"%j":
                        try {
                            return JSON.stringify(t[n++])
                        } catch (e) {
                            return "[Circular]"
                        }
                        break;
                    default:
                        return e
                }
            }), l = t[n]; n < r; l = t[++n]) s += " " + l;
            return s
        }
        return o
    }

    function u(e, t) {
        return void 0 === e || null === e || (!("array" !== t || !Array.isArray(e) || e.length) || !(!function (e) {
            return "string" === e || "url" === e || "hex" === e || "email" === e || "pattern" === e
        }(t) || "string" != typeof e || e))
    }

    function d(e, t, i) {
        var n = 0, o = e.length;
        !function r(s) {
            if (s && s.length) i(s); else {
                var a = n;
                n += 1, a < o ? t(e[a], r) : i([])
            }
        }([])
    }

    function h(e, t, i, n) {
        if (t.first) return d(function (e) {
            var t = [];
            return Object.keys(e).forEach(function (i) {
                t.push.apply(t, e[i])
            }), t
        }(e), i, n);
        var o = t.firstFields || [];
        !0 === o && (o = Object.keys(e));
        var r = Object.keys(e), s = r.length, a = 0, l = [], c = function (e) {
            l.push.apply(l, e), ++a === s && n(l)
        };
        r.forEach(function (t) {
            var n = e[t];
            -1 !== o.indexOf(t) ? d(n, i, c) : function (e, t, i) {
                var n = [], o = 0, r = e.length;

                function s(e) {
                    n.push.apply(n, e), ++o === r && i(n)
                }

                e.forEach(function (e) {
                    t(e, s)
                })
            }(n, i, c)
        })
    }

    function p(e) {
        return function (t) {
            return t && t.message ? (t.field = t.field || e.fullField, t) : {message: t, field: t.field || e.fullField}
        }
    }

    function f(e, t) {
        if (t) for (var i in t) if (t.hasOwnProperty(i)) {
            var n = t[i];
            "object" === (void 0 === n ? "undefined" : s()(n)) && "object" === s()(e[i]) ? e[i] = o()({}, e[i], n) : e[i] = n
        }
        return e
    }

    var A = function (e, t, i, n, o, r) {
        !e.required || i.hasOwnProperty(e.field) && !u(t, r || e.type) || n.push(c(o.messages.required, e.fullField))
    };
    var g = function (e, t, i, n, o) {
        (/^\s+$/.test(t) || "" === t) && n.push(c(o.messages.whitespace, e.fullField))
    }, v = {
        email: /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
        url: new RegExp("^(?!mailto:)(?:(?:http|https|ftp)://|//)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[0-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))|localhost)(?::\\d{2,5})?(?:(/|\\?|#)[^\\s]*)?$", "i"),
        hex: /^#?([a-f0-9]{6}|[a-f0-9]{3})$/i
    }, m = {
        integer: function (e) {
            return m.number(e) && parseInt(e, 10) === e
        }, float: function (e) {
            return m.number(e) && !m.integer(e)
        }, array: function (e) {
            return Array.isArray(e)
        }, regexp: function (e) {
            if (e instanceof RegExp) return !0;
            try {
                return !!new RegExp(e)
            } catch (e) {
                return !1
            }
        }, date: function (e) {
            return "function" == typeof e.getTime && "function" == typeof e.getMonth && "function" == typeof e.getYear
        }, number: function (e) {
            return !isNaN(e) && "number" == typeof e
        }, object: function (e) {
            return "object" === (void 0 === e ? "undefined" : s()(e)) && !m.array(e)
        }, method: function (e) {
            return "function" == typeof e
        }, email: function (e) {
            return "string" == typeof e && !!e.match(v.email) && e.length < 255
        }, url: function (e) {
            return "string" == typeof e && !!e.match(v.url)
        }, hex: function (e) {
            return "string" == typeof e && !!e.match(v.hex)
        }
    };
    var C = "enum";
    var y = {
        required: A, whitespace: g, type: function (e, t, i, n, o) {
            if (e.required && void 0 === t) A(e, t, i, n, o); else {
                var r = e.type;
                ["integer", "float", "array", "regexp", "object", "method", "email", "number", "date", "url", "hex"].indexOf(r) > -1 ? m[r](t) || n.push(c(o.messages.types[r], e.fullField, e.type)) : r && (void 0 === t ? "undefined" : s()(t)) !== e.type && n.push(c(o.messages.types[r], e.fullField, e.type))
            }
        }, range: function (e, t, i, n, o) {
            var r = "number" == typeof e.len, s = "number" == typeof e.min, a = "number" == typeof e.max, l = t,
                u = null, d = "number" == typeof t, h = "string" == typeof t, p = Array.isArray(t);
            if (d ? u = "number" : h ? u = "string" : p && (u = "array"), !u) return !1;
            p && (l = t.length), h && (l = t.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "_").length), r ? l !== e.len && n.push(c(o.messages[u].len, e.fullField, e.len)) : s && !a && l < e.min ? n.push(c(o.messages[u].min, e.fullField, e.min)) : a && !s && l > e.max ? n.push(c(o.messages[u].max, e.fullField, e.max)) : s && a && (l < e.min || l > e.max) && n.push(c(o.messages[u].range, e.fullField, e.min, e.max))
        }, enum: function (e, t, i, n, o) {
            e[C] = Array.isArray(e[C]) ? e[C] : [], -1 === e[C].indexOf(t) && n.push(c(o.messages[C], e.fullField, e[C].join(", ")))
        }, pattern: function (e, t, i, n, o) {
            e.pattern && (e.pattern instanceof RegExp ? (e.pattern.lastIndex = 0, e.pattern.test(t) || n.push(c(o.messages.pattern.mismatch, e.fullField, t, e.pattern))) : "string" == typeof e.pattern && (new RegExp(e.pattern).test(t) || n.push(c(o.messages.pattern.mismatch, e.fullField, t, e.pattern))))
        }
    };
    var w = "enum";
    var b = function (e, t, i, n, o) {
        var r = e.type, s = [];
        if (e.required || !e.required && n.hasOwnProperty(e.field)) {
            if (u(t, r) && !e.required) return i();
            y.required(e, t, n, s, o, r), u(t, r) || y.type(e, t, n, s, o)
        }
        i(s)
    }, I = {
        string: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t, "string") && !e.required) return i();
                y.required(e, t, n, r, o, "string"), u(t, "string") || (y.type(e, t, n, r, o), y.range(e, t, n, r, o), y.pattern(e, t, n, r, o), !0 === e.whitespace && y.whitespace(e, t, n, r, o))
            }
            i(r)
        }, method: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                y.required(e, t, n, r, o), void 0 !== t && y.type(e, t, n, r, o)
            }
            i(r)
        }, number: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                y.required(e, t, n, r, o), void 0 !== t && (y.type(e, t, n, r, o), y.range(e, t, n, r, o))
            }
            i(r)
        }, boolean: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                y.required(e, t, n, r, o), void 0 !== t && y.type(e, t, n, r, o)
            }
            i(r)
        }, regexp: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                y.required(e, t, n, r, o), u(t) || y.type(e, t, n, r, o)
            }
            i(r)
        }, integer: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                y.required(e, t, n, r, o), void 0 !== t && (y.type(e, t, n, r, o), y.range(e, t, n, r, o))
            }
            i(r)
        }, float: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                y.required(e, t, n, r, o), void 0 !== t && (y.type(e, t, n, r, o), y.range(e, t, n, r, o))
            }
            i(r)
        }, array: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t, "array") && !e.required) return i();
                y.required(e, t, n, r, o, "array"), u(t, "array") || (y.type(e, t, n, r, o), y.range(e, t, n, r, o))
            }
            i(r)
        }, object: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                y.required(e, t, n, r, o), void 0 !== t && y.type(e, t, n, r, o)
            }
            i(r)
        }, enum: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                y.required(e, t, n, r, o), t && y[w](e, t, n, r, o)
            }
            i(r)
        }, pattern: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t, "string") && !e.required) return i();
                y.required(e, t, n, r, o), u(t, "string") || y.pattern(e, t, n, r, o)
            }
            i(r)
        }, date: function (e, t, i, n, o) {
            var r = [];
            if (e.required || !e.required && n.hasOwnProperty(e.field)) {
                if (u(t) && !e.required) return i();
                if (y.required(e, t, n, r, o), !u(t)) {
                    var s = void 0;
                    s = "number" == typeof t ? new Date(t) : t, y.type(e, s, n, r, o), s && y.range(e, s.getTime(), n, r, o)
                }
            }
            i(r)
        }, url: b, hex: b, email: b, required: function (e, t, i, n, o) {
            var r = [], a = Array.isArray(t) ? "array" : void 0 === t ? "undefined" : s()(t);
            y.required(e, t, n, r, o, a), i(r)
        }
    };

    function E() {
        return {
            default: "Validation error on field %s",
            required: "%s is required",
            enum: "%s must be one of %s",
            whitespace: "%s cannot be empty",
            date: {
                format: "%s date %s is invalid for format %s",
                parse: "%s date could not be parsed, %s is invalid ",
                invalid: "%s date %s is invalid"
            },
            types: {
                string: "%s is not a %s",
                method: "%s is not a %s (function)",
                array: "%s is not an %s",
                object: "%s is not an %s",
                number: "%s is not a %s",
                date: "%s is not a %s",
                boolean: "%s is not a %s",
                integer: "%s is not an %s",
                float: "%s is not a %s",
                regexp: "%s is not a valid %s",
                email: "%s is not a valid %s",
                url: "%s is not a valid %s",
                hex: "%s is not a valid %s"
            },
            string: {
                len: "%s must be exactly %s characters",
                min: "%s must be at least %s characters",
                max: "%s cannot be longer than %s characters",
                range: "%s must be between %s and %s characters"
            },
            number: {
                len: "%s must equal %s",
                min: "%s cannot be less than %s",
                max: "%s cannot be greater than %s",
                range: "%s must be between %s and %s"
            },
            array: {
                len: "%s must be exactly %s in length",
                min: "%s cannot be less than %s in length",
                max: "%s cannot be greater than %s in length",
                range: "%s must be between %s and %s in length"
            },
            pattern: {mismatch: "%s value %s does not match pattern %s"},
            clone: function () {
                var e = JSON.parse(JSON.stringify(this));
                return e.clone = this.clone, e
            }
        }
    }

    var x = E();

    function k(e) {
        this.rules = null, this._messages = x, this.define(e)
    }

    k.prototype = {
        messages: function (e) {
            return e && (this._messages = f(E(), e)), this._messages
        }, define: function (e) {
            if (!e) throw new Error("Cannot configure a schema with no rules");
            if ("object" !== (void 0 === e ? "undefined" : s()(e)) || Array.isArray(e)) throw new Error("Rules must be an object");
            this.rules = {};
            var t = void 0, i = void 0;
            for (t in e) e.hasOwnProperty(t) && (i = e[t], this.rules[t] = Array.isArray(i) ? i : [i])
        }, validate: function (e) {
            var t = this, i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, n = arguments[2],
                r = e, a = i, u = n;
            if ("function" == typeof a && (u = a, a = {}), this.rules && 0 !== Object.keys(this.rules).length) {
                if (a.messages) {
                    var d = this.messages();
                    d === x && (d = E()), f(d, a.messages), a.messages = d
                } else a.messages = this.messages();
                var A = void 0, g = void 0, v = {};
                (a.keys || Object.keys(this.rules)).forEach(function (i) {
                    A = t.rules[i], g = r[i], A.forEach(function (n) {
                        var s = n;
                        "function" == typeof s.transform && (r === e && (r = o()({}, r)), g = r[i] = s.transform(g)), (s = "function" == typeof s ? {validator: s} : o()({}, s)).validator = t.getValidationMethod(s), s.field = i, s.fullField = s.fullField || i, s.type = t.getType(s), s.validator && (v[i] = v[i] || [], v[i].push({
                            rule: s,
                            value: g,
                            source: r,
                            field: i
                        }))
                    })
                });
                var m = {};
                h(v, a, function (e, t) {
                    var i = e.rule,
                        n = !("object" !== i.type && "array" !== i.type || "object" !== s()(i.fields) && "object" !== s()(i.defaultField));

                    function r(e, t) {
                        return o()({}, t, {fullField: i.fullField + "." + e})
                    }

                    function u() {
                        var s = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [];
                        if (Array.isArray(s) || (s = [s]), s.length && l("async-validator:", s), s.length && i.message && (s = [].concat(i.message)), s = s.map(p(i)), a.first && s.length) return m[i.field] = 1, t(s);
                        if (n) {
                            if (i.required && !e.value) return s = i.message ? [].concat(i.message).map(p(i)) : a.error ? [a.error(i, c(a.messages.required, i.field))] : [], t(s);
                            var u = {};
                            if (i.defaultField) for (var d in e.value) e.value.hasOwnProperty(d) && (u[d] = i.defaultField);
                            for (var h in u = o()({}, u, e.rule.fields)) if (u.hasOwnProperty(h)) {
                                var f = Array.isArray(u[h]) ? u[h] : [u[h]];
                                u[h] = f.map(r.bind(null, h))
                            }
                            var A = new k(u);
                            A.messages(a.messages), e.rule.options && (e.rule.options.messages = a.messages, e.rule.options.error = a.error), A.validate(e.value, e.rule.options || a, function (e) {
                                t(e && e.length ? s.concat(e) : e)
                            })
                        } else t(s)
                    }

                    n = n && (i.required || !i.required && e.value), i.field = e.field;
                    var d = i.validator(i, e.value, u, e.source, a);
                    d && d.then && d.then(function () {
                        return u()
                    }, function (e) {
                        return u(e)
                    })
                }, function (e) {
                    !function (e) {
                        var t, i = void 0, n = void 0, o = [], r = {};
                        for (i = 0; i < e.length; i++) t = e[i], Array.isArray(t) ? o = o.concat.apply(o, t) : o.push(t);
                        if (o.length) for (i = 0; i < o.length; i++) r[n = o[i].field] = r[n] || [], r[n].push(o[i]); else o = null, r = null;
                        u(o, r)
                    }(e)
                })
            } else u && u()
        }, getType: function (e) {
            if (void 0 === e.type && e.pattern instanceof RegExp && (e.type = "pattern"), "function" != typeof e.validator && e.type && !I.hasOwnProperty(e.type)) throw new Error(c("Unknown rule type %s", e.type));
            return e.type || "string"
        }, getValidationMethod: function (e) {
            if ("function" == typeof e.validator) return e.validator;
            var t = Object.keys(e), i = t.indexOf("message");
            return -1 !== i && t.splice(i, 1), 1 === t.length && "required" === t[0] ? I.required : I[this.getType(e)] || !1
        }
    }, k.register = function (e, t) {
        if ("function" != typeof t) throw new Error("Cannot register a validator by type, validator is not a function");
        I[e] = t
    }, k.messages = x;
    t.default = k
}, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(283), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(5), s = i(128), a = i(35);
    let l = class extends r.Vue {
        constructor() {
            super(...arguments), this.popType = "", this.options = {
                title: "",
                type: s.MessageBox.ConfirmType.Info
            }, this.boxId = a.parse(location.href, !0).query.boxId, this.messageboxInitReplyListener = null
        }

        created() {
            this.messageboxInitReplyListener = ((e, t) => {
                this.messageboxInitReplyListener = null, this.popType = t.popType, this.options = t.options
            }), o.ipcRenderer.once("message-box-init-reply", this.messageboxInitReplyListener), o.ipcRenderer.send(`message-box-init-${this.boxId}`)
        }

        destroyed() {
            this.messageboxInitReplyListener && (o.ipcRenderer.removeListener("message-box-init-reply", this.messageboxInitReplyListener), this.messageboxInitReplyListener = null)
        }
    };
    l = n([r.Component({
        components: {
            About: () => Promise.resolve().then(() => i(739)),
            Confirm: () => Promise.resolve().then(() => i(740)),
            MessageBox: () => Promise.resolve().then(() => i(741)),
            PlanTask: () => Promise.resolve().then(() => i(757)),
            TaskRename: () => Promise.resolve().then(() => i(758)),
            BtRepeatTask: () => Promise.resolve().then(() => i(759)),
            BtRepeatFile: () => Promise.resolve().then(() => i(760)),
            PrivateSpaceSetPassword: () => Promise.resolve().then(() => i(761)),
            PrivateSpaceVerifyPassword: () => Promise.resolve().then(() => i(762)),
            PrivateSpacePhoneVerify: () => Promise.resolve().then(() => i(763)),
            PrivateSpaceDownloadSetting: () => Promise.resolve().then(() => i(765)),
            PrivateSpaceTaskManager: () => Promise.resolve().then(() => i(767)),
            MultiRepeatTask: () => Promise.resolve().then(() => i(768)),
            BatchNewTaskCtrl: () => Promise.resolve().then(() => i(769)),
            BookMarks: () => Promise.resolve().then(() => i(770)),
            BookList: () => Promise.resolve().then(() => i(771)),
            SubtitleTaskFilelist: () => Promise.resolve().then(() => i(772)),
            SubtitleSearch: () => Promise.resolve().then(() => i(773)),
            BrowserConfigGuide: () => Promise.resolve().then(() => i(774)),
            XmpFixBox: () => Promise.resolve().then(() => i(778)),
            XmpFixBoxEx: () => Promise.resolve().then(() => i(779)),
            BirdKeyShow: () => Promise.resolve().then(() => i(780)),
            TotalTabs: () => Promise.resolve().then(() => i(782)),
            Individuation: () => Promise.resolve().then(() => i(785)),
            AddProxy: () => Promise.resolve().then(() => i(799)),
            BridKeyPwdcheck: () => Promise.resolve().then(() => i(800)),
            ShouleiQRCode: () => Promise.resolve().then(() => i(802)),
            DownloadData: () => Promise.resolve().then(() => i(803)),
            DownloadDetectTools: () => Promise.resolve().then(() => i(804)),
            CustomTaskFilter: () => Promise.resolve().then(() => i(818)),
            CreateBigFile: () => Promise.resolve().then(() => i(819)),
            ImgDlg: () => Promise.resolve().then(() => i(822)),
            CopyLinkShare: () => Promise.resolve().then(() => i(824)),
            Favorites: () => Promise.resolve().then(() => i(828)),
            HttpAuthLogin: () => Promise.resolve().then(() => i(829)),
            ShouleiSyncGuide: () => Promise.resolve().then(() => i(831)),
            ShouleiFileTransfer: () => Promise.resolve().then(() => i(837)),
            CustomDownloadMode: () => Promise.resolve().then(() => i(840)),
            ImgViewer: () => Promise.resolve().then(() => i(841)),
            ScanCodeHelp: () => Promise.resolve().then(() => i(843)),
            PhoneAuth: () => Promise.resolve().then(() => i(848))
        }
    })], l), t.default = l
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(285), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(2), c = i(9), u = i(17), d = i(4);
    let h = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.thunderVersion = "", this.downloadSDKVersion = "", this.xdasVersion = "", this.electronVersion = "", this.chromiumVersion = "", this.nodeVersion = "", this.v8Version = "", this.year = 2020, this.expandClass = ""
        }

        handleCancel(e) {
            window.close()
        }

        handleExpand() {
            "" === this.expandClass ? this.expandClass = "is-more" : this.expandClass = "", this.$nextTick(() => {
                this.resizeToFitContent(450, this.expandClass ? 454 : 296)
            })
        }

        handleHomePage() {
            return o(this, void 0, void 0, function* () {
                yield d.client.callServerFunction("OpenNewTab", "http://www.xunlei.com"), window.close()
            })
        }

        checkUpdate() {
            c.default(l.join(__rootDir, "../bin/ThunderHelper.node")).startManualUpdateWithUI()
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                const e = c.default(l.join(__rootDir, "../bin/ThunderHelper.node"));
                let t = l.join(__rootDir, "../../Thunder.exe");
                this.thunderVersion = e.getFileVersion(t);
                let i = yield u.FileSystemAWNS.lstatAW(t);
                this.year = i.birthtime.getFullYear();
                let n = l.join(__rootDir, "../bin/SDK/DownloadSDK.dll");
                this.downloadSDKVersion = e.getFileVersion(n);
                let o = l.join(__rootDir, "../../XDASKernel.dll");
                this.xdasVersion = e.getFileVersion(o), this.electronVersion = process.versions.electron || process.versions.XDASKernel, this.chromiumVersion = process.versions.chrome, this.nodeVersion = process.versions.node, this.v8Version = process.versions.v8
            })
        }
    };
    n([s.Prop()], h.prototype, "options", void 0), h = n([s.Component], h), t.default = h
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(287), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(29), s = i(5), a = i(30), l = i(28);
    let c = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.action = l.MessageBoxNS.Action, this.icon = {
                info: "question",
                warning: "warning",
                error: "error",
                success: "success"
            }
        }

        handleInput(e) {
            this.$emit("update:options", Object.assign({}, this.options, {checkboxChecked: e}))
        }

        handleOK() {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.OK, this.options.checkboxChecked), window.close()
        }

        handleCancel(e) {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, e), window.close()
        }

        handleKeyDown(e) {
            13 === e.keyCode && this.handleOK()
        }

        mounted() {
            document.addEventListener("keydown", this.handleKeyDown)
        }

        destroyed() {
            document.removeEventListener("keydown", this.handleKeyDown)
        }
    };
    n([s.Prop()], c.prototype, "options", void 0), n([s.Prop()], c.prototype, "boxId", void 0), c = n([s.Component({props: {options: Object}})], c), t.default = c
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(289), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(29), s = i(5), a = i(742), l = i(28), c = i(30);
    let u = class extends (r.mixins(c.DraggableMixin, c.PositionMixin)) {
        constructor() {
            super(...arguments), this.action = l.MessageBoxNS.Action
        }

        get customClass() {
            let e = "";
            do {
                if (!this.options) break;
                e = this.options.size ? [`xlx-dialog--${this.options.size}`, "xly-dialog-setting"] : "xly-dialog-setting"
            } while (0);
            return e
        }

        handleInput(e, t) {
            let i = null, n = JSON.stringify(this.formData);
            try {
                i = JSON.parse(n)
            } catch (e) {
            }
            null !== i && (Array.isArray(e) ? i[t] = e : i[t].value = e, this.$emit("update:formData", i))
        }

        handleOK() {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, this.action.OK, this.formData), window.close()
        }

        handleCancel(e) {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, e), window.close()
        }

        get comfirmButtonActive() {
            if (void 0 === this.formData) return !0;
            if (void 0 === this.formData.maxDownloadSpeedEnabled) return !0;
            let e = this.formData.maxDownloadSpeedEnabled.value, t = this.formData.maxUploadSpeedEnabled.value;
            return e || t
        }

        mounted() {
            o.ipcRenderer.on("message-box-resolve-systemmenu", () => {
                o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.Close)
            })
        }
    };
    n([s.Prop()], u.prototype, "options", void 0), n([s.Prop()], u.prototype, "formData", void 0), n([s.Prop()], u.prototype, "boxId", void 0), u = n([s.Component({components: {GeneratorView: a.default}})], u), t.default = u
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(291), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(743), r = i(750), s = i(166), a = i(208), l = i(752), c = i(753), u = i(207), d = i(754), h = i(644),
        p = i(206), f = i(755), A = i(5);
    let g = class extends A.Vue {
        handleInput(e, t = "") {
            "" === t ? this.$emit("input", e, this.item.name) : this.$emit("input", e, t)
        }
    };
    n([A.Prop({})], g.prototype, "item", void 0), n([A.Prop({})], g.prototype, "formData", void 0), n([A.Prop()], g.prototype, "value", void 0), g = n([A.Component({
        components: {
            confCheckbox: o.default,
            confRadio: r.default,
            confSelect: s.default,
            confText: a.default,
            confCheckboxInput: l.default,
            confCheckboxSelect: c.default,
            confInput: u.default,
            confSpeedText: h.default,
            confTextarea: d.default,
            confBtn: p.default,
            confProxyList: f.default
        }
    })], g), t.default = g
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(293), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(126), a = i(202), l = i(206), c = i(166), u = i(207), d = i(748), h = i(749), p = i(208);
    let f = class extends r.Vue {
        handleInput(e, t = "") {
            return o(this, void 0, void 0, function* () {
                if ("" === t ? this.$emit("input", e, this.item.name) : this.$emit("input", e, t), void 0 !== this.item.linkItem && e) {
                    let t = yield s.ConfigHelperNS.getValue(this.formData[this.item.linkItem.name].section, this.formData[this.item.linkItem.name].key, "");
                    "" !== e && this.$emit("input", t, this.item.linkItem.name)
                }
            })
        }
    };
    n([r.Prop({})], f.prototype, "item", void 0), n([r.Prop({})], f.prototype, "formData", void 0), n([r.Prop()], f.prototype, "value", void 0), n([r.Prop()], f.prototype, "label", void 0), f = n([r.Component({
        components: {
            confTip: a.default,
            confBtn: l.default,
            confSelect: c.default,
            confInput: u.default,
            confSpeed: d.default,
            confSpeedTime: h.default,
            confText: p.default
        }
    })], f), t.default = f
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(295), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5);
    let r = class extends o.Vue {
    };
    n([o.Prop()], r.prototype, "classes", void 0), n([o.Prop()], r.prototype, "text", void 0), r = n([o.Component({})], r), t.default = r
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(297), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(126), a = i(128), l = i(28), c = i(11), u = i(41), d = i(202), h = i(644);
    let p = class extends r.Vue {
        popDialog(e) {
            switch (e.boxType) {
                case"speedConfBox":
                    u.NativeCallModule.nativeCall.CallNativeFunction("ShowCustomDownloadModeDlg", () => {
                    });
                    break;
                case"browserGuideConfBox":
                    u.NativeCallModule.nativeCall.CallNativeFunction("ShowBrowserGuideDlg", () => {
                    });
                    break;
                case"function":
                    e.handle();
                    break;
                case"pop":
                    this.messagePop(e)
            }
        }

        messagePop(e) {
            return o(this, void 0, void 0, function* () {
                let t = c.ThunderUtil.deepCopy(e.pop.formData);
                for (let i in t) t[i].value = yield s.ConfigHelperNS.getValue(e.pop.formData[i].section, e.pop.formData[i].key, e.pop.formData[i].value);
                a.MessageBox.pop({
                    title: e.pop.title,
                    size: e.pop.size,
                    schemas: e.pop.schema,
                    formData: t
                }, e.pop.dialogOption).then(e => {
                    if (e.action === l.MessageBoxNS.Action.OK) for (let t in e.formData) s.ConfigHelperNS.setValue(e.formData[t].section, e.formData[t].key, e.formData[t].value)
                }).catch()
            })
        }
    };
    n([r.Prop({})], p.prototype, "item", void 0), n([r.Prop()], p.prototype, "classes", void 0), n([r.Prop()], p.prototype, "text", void 0), n([r.Prop()], p.prototype, "disabled", void 0), n([r.Prop({})], p.prototype, "formData", void 0), p = n([r.Component({
        components: {
            confTip: d.default,
            confSpeedText: h.default
        }
    })], p), t.default = p
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(299), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(126);
    let a = class extends r.Vue {
        constructor() {
            super(...arguments), this.maxDownloadSpeed = "", this.maxUploadSpeed = ""
        }

        onFormDataChange(e) {
            this.updateMaxDownloadSpeed(), this.updateMaxUploadSpeed()
        }

        standardNumber(e) {
            let t = parseInt(e + "", 10);
            return t > 9 ? t + "" : "0" + t
        }

        updateMaxDownloadSpeed() {
            return o(this, void 0, void 0, function* () {
                let e = "不限速";
                this.formData["ConfigNet-ConfigNet_Custom_DownloadSpeedChk"].value && (e = (yield s.ConfigHelperNS.getValue("ConfigNet", "ConfigNet_Custom_MaxDownloadSpeedTmp", 1024)) + "KB/S"), this.maxDownloadSpeed = e
            })
        }

        updateMaxUploadSpeed() {
            return o(this, void 0, void 0, function* () {
                let e = "不限速";
                this.formData["ConfigNet-ConfigNet_Custom_UploadSpeedChk"].value && (e = (yield s.ConfigHelperNS.getValue("ConfigNet", "ConfigNet_Custom_MaxUploadSpeedTmp", 1024)) + "KB/S"), this.maxUploadSpeed = e
            })
        }
    };
    n([r.Prop({})], a.prototype, "item", void 0), n([r.Prop({})], a.prototype, "formData", void 0), n([r.Watch("formData", {
        immediate: !0,
        deep: !0
    })], a.prototype, "onFormDataChange", null), a = n([r.Component], a), t.default = a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(301), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(7), a = i(211), l = i(103), c = i(744), u = i(1).default.getLogger("conf-select");
    let d = class extends r.Vue {
        constructor() {
            super(...arguments), this.schema = null, this.tooltipVisible = !1, this.tipContent = "", this.dyNamicOptions = [], this.valueData = ""
        }

        onFormDataChange(e) {
            this.item.updateByDataChange && e && e[this.name] && (this.valueData = e[this.name].value)
        }

        handleInput(e) {
            if (void 0 !== this.item.hasDeleteOption && e === this.item.deleteOptionText) return this.$emit("input", [], this.item.optionByName), void ("openThunderPan" === this.item.slotOption && c.server.callClientFunctionByName("ThunderPanPluginWebview", "IpcClearRecentFolder"));
            this.tooltipVisible || this.item.blurUpdate || this.$emit("input", e, this.item.name), this.valueData = e
        }

        handleOutFocus() {
            this.item.blurUpdate && !this.tooltipVisible && this.$emit("input", this.valueData, this.item.name)
        }

        selectPath() {
            return o(this, void 0, void 0, function* () {
                let e = yield(yield s.asyncRemoteCall.getDialog()).showOpenDialog({
                    defaultPath: this.valueData,
                    properties: [this.fileType]
                });
                if (e.canceled) ; else {
                    let t = e.filePaths;
                    void 0 !== t && (void 0 !== this.name ? this.$emit("input", t[0], this.name) : this.$emit("input", t[0], this.item.name), this.valueData = t[0])
                }
            })
        }

        get optionList() {
            if (this.item.optionByName && this.formData[this.item.optionByName] && this.formData[this.item.optionByName].value) {
                let e = this.formData[this.item.optionByName].value,
                    t = [...e].reverse().slice(0, this.item.maxOptionLen || e.length);
                return this.item.deleteOptionText && t.push(this.item.deleteOptionText), t
            }
            return this.options
        }

        get fileType() {
            return this.item.slotOption
        }

        get rules() {
            let e;
            do {
                if (!this.item.rules) break;
                e = this.item.rules.map(e => Array.isArray(e) ? new Function(e[0], e[1]) : e)
            } while (0);
            return e
        }

        handleChangePath(e) {
            return o(this, void 0, void 0, function* () {
                let t = "openDirectory";
                if ("openFile" === e ? t = "openFile" : "openThunderPan" === e && (t = "openThunderPan"), "openFile" === t || "openDirectory" === t) {
                    const e = yield s.asyncRemoteCall.getDialog();
                    let i = yield s.asyncRemoteCall.getCurrentWindow(),
                        n = yield e.showOpenDialog(i, {defaultPath: this.valueData, properties: [t]});
                    if (n.canceled) ; else {
                        let e = n.filePaths;
                        void 0 !== e && (void 0 !== this.name ? this.$emit("input", e[0], this.name) : this.$emit("input", e[0], this.item.name), this.valueData = e[0]), this.$refs.root.focusEdit()
                    }
                } else if ("openThunderPan" === t) {
                    let e = yield c.server.callClientFunctionByName("ThunderPanPluginWebview", "IpcTreePath", {});
                    if (!e || !e[0] || e[0].error) return;
                    let t = "", i = "";
                    for (let n of e[0].path) t += "\\" + n.title, i += "\\" + n.id;
                    i = i.slice(1), t = t.slice(1), void 0 !== this.name ? this.$emit("input", t, this.name) : this.$emit("input", t, this.item.name), this.valueData = t, c.server.callClientFunctionByName("ThunderPanPluginWebview", "IpcSetDefaultSavePath", {
                        id: i,
                        name: t
                    })
                }
            })
        }

        validate(e) {
            u.information("value....", e), this.handleInput(e), void 0 !== this.item.hasDeleteOption && e === this.item.deleteOptionText || this.item.rules && this.schema.validate({[this.item.name]: e}, (e, t) => {
                u.information("errors", e), null === e ? this.tooltipVisible = !1 : (u.information("路径有误", e), this.tipContent = e[0].message, this.tooltipVisible = !0)
            })
        }

        created() {
            this.item.rules && (this.schema = new a.default({[this.item.name]: this.rules})), void 0 !== this.value ? this.valueData = this.value.value.toString() : this.valueData = this.formData[this.item.name].value.toString()
        }
    };
    n([r.Prop({})], d.prototype, "item", void 0), n([r.Prop()], d.prototype, "label", void 0), n([r.Prop({})], d.prototype, "formData", void 0), n([r.Prop()], d.prototype, "options", void 0), n([r.Prop()], d.prototype, "value", void 0), n([r.Prop()], d.prototype, "disabled", void 0), n([r.Prop()], d.prototype, "classes", void 0), n([r.Prop()], d.prototype, "name", void 0), n([r.Prop()], d.prototype, "placeHolder", void 0), n([r.Watch("formData", {deep: !0})], d.prototype, "onFormDataChange", null), d = n([r.Component({components: {SelectNative: l.default}})], d), t.default = d
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(303), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(211), r = i(5), s = i(206);
    let a = class extends r.Vue {
        constructor() {
            super(...arguments), this.shortcutKey = "", this.funKey = !0, this.valueData = " ", this.canRegister = !1, this.schema = null, this.tooltip = "", this.tooltipVisible = !1
        }

        get rules() {
            let e;
            do {
                if (!this.item.rules) break;
                e = this.item.rules.map(e => Array.isArray(e) ? new Function(e[0], e[1]) : e)
            } while (0);
            return e
        }

        handleInput(e) {
            this.valueData = e, this.$emit("input", e, this.name)
        }

        handleChange(e) {
            let t = e.target;
            this.valueData = t.value, void 0 !== this.item.ShortcutKey && this.canRegister ? this.$emit("input", t.value, this.name) : void 0 === this.item.ShortcutKey && this.$emit("input", t.value, this.name)
        }

        handleKeyDown(e) {
            if (void 0 !== this.item.ShortcutKey) {
                let t = /Digit\d/.test(e.code) || e.keyCode >= 65 && e.keyCode <= 90;
                if (this.shortcutKey = "", this.funKey = !1, this.canRegister = !1, this.valueData = "", "Backspace" === e.key) return this.valueData = "无", void this.$emit("input", "", this.name);
                e.altKey && (this.shortcutKey = "Alt+"), e.ctrlKey && (this.shortcutKey = "" === this.shortcutKey ? "Crtl+" : `${this.shortcutKey}Crtl+`), e.shiftKey && (this.shortcutKey = "" === this.shortcutKey ? "Shift+" : `${this.shortcutKey}Shift+`);
                let i = "Alt" === e.key || "Shift" === e.key || "Control" === e.key ? "" : t ? e.code[e.code.length - 1] : e.key;
                this.valueData = this.shortcutKey + i, "" !== i && (this.funKey = !0), this.shortcutKey + i !== i && "" !== i && (this.canRegister = !0, this.valueData = this.shortcutKey + i, this.$emit("input", this.valueData, this.name))
            }
        }

        handleKeyup() {
            this.funKey || void 0 === this.item.ShortcutKey || (this.valueData = "无", this.$emit("input", "", this.name))
        }

        mounted() {
            this.valueData = this.value.value
        }

        validate(e) {
            this.item.rules && this.schema.validate({[this.item.name]: e}, (e, t) => {
                this.tooltipVisible = null !== e
            })
        }

        outFocus() {
            this.tooltipVisible = !1
        }

        created() {
            this.item.rules && (this.schema = new o.default({[this.item.name]: this.rules}))
        }
    };
    n([r.Prop()], a.prototype, "item", void 0), n([r.Prop({})], a.prototype, "formData", void 0), n([r.Prop()], a.prototype, "disabled", void 0), n([r.Prop()], a.prototype, "value", void 0), n([r.Prop()], a.prototype, "name", void 0), n([r.Prop()], a.prototype, "label", void 0), a = n([r.Component({components: {confBtn: s.default}})], a), t.default = a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(305), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(211), r = i(5);
    let s = class extends r.Vue {
        constructor() {
            super(...arguments), this.schema = null, this.tooltip = "", this.tooltipVisible = !1, this.timeout = null
        }

        get rules() {
            return (this.item.rules || []).map(e => Array.isArray(e) ? new Function(e[0], e[1]) : e)
        }

        get doEmit() {
            return this.item.doEmit ? new Function(this.item.doEmit[0], this.item.doEmit[1]) : null
        }

        get doBlur() {
            return this.item.doBlur ? new Function(this.item.doBlur[0], this.item.doBlur[1]) : null
        }

        get sliderValue() {
            let e;
            return e = "number" == typeof this.value ? this.value : "object" == typeof this.value ? Number(this.value.value) : Number(this.value), this.item.scales && this.item.scales.length ? Math.min(Math.max(this.item.scales[0], e), this.item.scales[this.item.scales.length - 1]) : e
        }

        handleSliderUpdate(e) {
            this.handleInput(e.toString())
        }

        handleInput(e) {
            this.doEmit ? this.doEmit(this.item.name, e, this.value.value) : this.$emit("input", e, this.item.name), this.doValidate(e)
        }

        doValidate(e) {
            this.schema && this.schema.validate({[this.item.name]: e}, (e, t) => {
                null === e ? this.hideTooltip() : this.showTooltip(e[0].message)
            })
        }

        handleBlur() {
            let e;
            e = "object" == typeof this.value ? this.value.value : this.value, this.doBlur && this.doBlur(this.item.name, e), this.$nextTick(() => {
                let e;
                e = "object" == typeof this.value ? this.value.value : this.value, this.doValidate(e)
            })
        }

        showTooltip(e) {
            this.tooltip = e, this.$refs.tooltip.show(this.$refs.input.$el)
        }

        hideTooltip() {
            this.$refs.tooltip.hide()
        }

        created() {
            this.item.rules && (this.schema = new o.default({[this.item.name]: this.rules}))
        }
    };
    n([r.Prop({})], s.prototype, "item", void 0), n([r.Prop()], s.prototype, "value", void 0), n([r.Prop()], s.prototype, "disabled", void 0), s = n([r.Component], s), t.default = s
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(307), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5), r = i(103);
    let s = class extends o.Vue {
        constructor() {
            super(...arguments), this.data = [{
                label: "开始限速时间",
                options: [{index: 0, type: "hour"}, {index: 1, type: "minute"}]
            }, {
                label: "结束限速时间",
                options: [{index: 2, type: "hour"}, {index: 3, type: "minute"}]
            }], this.hours = Array.from({length: 24}, (e, t) => t), this.minutes = Array.from({length: 60}, (e, t) => t)
        }

        handleInput(e, t) {
            let i = this.value.slice(0), n = Object.assign({}, i[t]);
            n.value = e, i[t] = n, this.$emit("input", i, this.item.name)
        }
    };
    n([o.Prop({})], s.prototype, "item", void 0), n([o.Prop()], s.prototype, "value", void 0), n([o.Prop()], s.prototype, "disabled", void 0), s = n([o.Component({components: {SelectNative: r.default}})], s), t.default = s
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(309), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5), r = i(41);
    let s = class extends o.Vue {
        constructor() {
            super(...arguments), this.userId = ""
        }

        get clas() {
            return void 0 !== this.classes ? this.classes : this.item.classes
        }

        get textContent() {
            return void 0 !== this.item.text ? this.item.text : this.text
        }

        mounted() {
            void 0 !== this.item.isReleventUser && this.item.isReleventUser && (r.NativeCallModule.nativeCall.AttachNativeEvent("onLoginSuc", e => {
                this.userId = e
            }), r.NativeCallModule.nativeCall.AttachNativeEvent("onLogout", () => {
                this.userId = ""
            }))
        }
    };
    n([o.Prop({})], s.prototype, "item", void 0), n([o.Prop()], s.prototype, "classes", void 0), n([o.Prop()], s.prototype, "extIndex", void 0), n([o.Prop()], s.prototype, "text", void 0), s = n([o.Component({})], s), t.default = s
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(311), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(202), a = i(206), l = i(207), c = i(166), u = i(751), d = i(41), h = i(4);
    let p = class extends r.Vue {
        constructor() {
            super(...arguments), this.userId = ""
        }

        handleInput(e, t = "") {
            "" === t ? this.$emit("input", e, this.item.name) : this.$emit("input", e, t)
        }

        setUserId() {
            return o(this, void 0, void 0, function* () {
                let e = yield h.client.callServerFunction("GetUserID");
                this.userId = e
            })
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                void 0 !== this.item.isReleventUser && this.item.isReleventUser && (this.setUserId(), d.NativeCallModule.nativeCall.AttachNativeEvent("onLoginSuc", e => {
                    this.userId = e
                }), d.NativeCallModule.nativeCall.AttachNativeEvent("onLogout", () => {
                    this.userId = ""
                }))
            })
        }
    };
    n([r.Prop({})], p.prototype, "item", void 0), n([r.Prop({})], p.prototype, "formData", void 0), n([r.Prop()], p.prototype, "value", void 0), p = n([r.Component({
        components: {
            confTip: s.default,
            confBtn: a.default,
            confInput: l.default,
            confSelect: c.default,
            confContainer: u.default
        }
    })], p), t.default = p
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(313), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5), r = i(166);
    let s = class extends o.Vue {
        handleInput(e, t = "") {
            "" === t ? this.$emit("input", e, this.item.name) : this.$emit("input", e, t)
        }
    };
    n([o.Prop({})], s.prototype, "item", void 0), n([o.Prop({})], s.prototype, "formData", void 0), n([o.Prop()], s.prototype, "value", void 0), n([o.Prop()], s.prototype, "disabled", void 0), s = n([o.Component({components: {confSelect: r.default}})], s), t.default = s
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(315), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5), r = i(202), s = i(207), a = i(208), l = i(166);
    let c = class extends o.Vue {
        handleInput(e, t = "") {
            "" === t ? this.$emit("input", e, this.item.name) : this.$emit("input", e, t)
        }
    };
    n([o.Prop({})], c.prototype, "item", void 0), n([o.Prop({})], c.prototype, "formData", void 0), c = n([o.Component({
        components: {
            confTip: r.default,
            confInput: s.default,
            confText: a.default,
            confSelect: l.default
        }
    })], c), t.default = c
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(317), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5), r = i(202), s = i(208), a = i(166);
    let l = class extends o.Vue {
        handleInput(e, t = "") {
            "" === t ? this.$emit("input", e, this.item.name) : this.$emit("input", e, t)
        }
    };
    n([o.Prop({})], l.prototype, "item", void 0), n([o.Prop({})], l.prototype, "formData", void 0), l = n([o.Component({
        components: {
            confTip: r.default,
            confText: s.default,
            confSelect: a.default
        }
    })], l), t.default = l
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(319), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(5);
    let r = class extends o.Vue {
        handleChange(e) {
            let t = e.target;
            this.$emit("input", t.value, this.item.name)
        }
    };
    n([o.Prop({})], r.prototype, "item", void 0), n([o.Prop({})], r.prototype, "formData", void 0), n([o.Prop()], r.prototype, "value", void 0), n([o.Prop()], r.prototype, "label", void 0), r = n([o.Component({components: {}})], r), t.default = r
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(321), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(126), a = i(128), l = i(28), c = i(645);
    let u = class extends r.Vue {
        constructor() {
            super(...arguments), this.selectedItem = null, this.proxyList = []
        }

        handleInput(e, t) {
            let i = this.value.slice(0), n = Object.assign({}, i[t]);
            n.value = e, i[t] = n, this.$emit("input", i, this.item.name)
        }

        handleAddProxyResult(e, t, i, n, o, r) {
            let s = !1, a = {name: e, host: t, port: i, type: n, userName: o, passWord: r};
            if (this.proxyList.length > 0) for (let t = 0; t < this.proxyList.length; ++t) if (this.proxyList[t].name === e) {
                s = !0;
                break
            }
            s || (this.proxyList.push(a), this.saveProxys())
        }

        handleAddProxy() {
            a.MessageBox.custom("AddProxy").then(e => {
                if (e.action === l.MessageBoxNS.Action.OK) {
                    let t = e.args.name, i = e.args.host, n = e.args.port, o = e.args.type, r = e.args.userName,
                        s = e.args.passWord;
                    this.handleAddProxyResult(t, i, n, o, r, s)
                }
            }).catch()
        }

        handleModifyProxy() {
            this.selectedItem && a.MessageBox.custom("AddProxy", this.selectedItem).then(e => o(this, void 0, void 0, function* () {
                if (e.action === l.MessageBoxNS.Action.OK) for (let t = 0; t < this.proxyList.length; ++t) if (this.proxyList[t].name === this.selectedItem.name) {
                    let i = this.selectedItem.name;
                    if (this.proxyList[t].name = e.args.name, this.proxyList[t].host = e.args.host, this.proxyList[t].port = e.args.port, this.proxyList[t].type = e.args.type, this.proxyList[t].userName = e.args.userName, this.proxyList[t].passWord = e.args.passWord, this.selectedItem = this.proxyList[t], this.saveProxys(), "2" === (yield s.ConfigHelperNS.getValue("ProxySetting", "ConfigProxy_Type", "0")) && (this.handleApplyProxy(), i === this.selectedItem.name)) {
                        let e = c.ProxyNS.ProxyType.Http;
                        "SOCKS5" === this.selectedItem.type && (e = c.ProxyNS.ProxyType.Sock5), c.ProxyNS.setProxy(e, this.selectedItem.host, this.selectedItem.port, this.selectedItem.userName, this.selectedItem.passWord)
                    }
                    break
                }
            })).catch()
        }

        handleDeleteProxy() {
            this.selectedItem && a.MessageBox.confirm({
                title: "您确定删除此代理吗？",
                type: a.MessageBox.ConfirmType.Warning
            }, {width: 400, height: 174, center: !0}).then(e => o(this, void 0, void 0, function* () {
                if (e.action === l.MessageBoxNS.Action.OK) for (let e = 0; e < this.proxyList.length; ++e) if (this.proxyList[e].name === this.selectedItem.name) {
                    let t = this.selectedItem.name;
                    this.proxyList.splice(e, 1), this.selectedItem = null, this.saveProxys();
                    let i = yield s.ConfigHelperNS.getValue("ProxySetting", "ConnectType_Http", "直接连接");
                    t === i && this.$emit("input", "直接连接", "ProxySetting-ConnectType_Http"), t === (i = yield s.ConfigHelperNS.getValue("ProxySetting", "ConnectType_Hub", "直接连接")) && this.$emit("input", "直接连接", "ProxySetting-ConnectType_Hub"), t === (i = yield s.ConfigHelperNS.getValue("ProxySetting", "ConnectType_Ftp", "直接连接")) && this.$emit("input", "直接连接", "ProxySetting-ConnectType_Ftp");
                    break
                }
            })).catch()
        }

        handleApplyProxy() {
            this.selectedItem && (this.$emit("input", "2", "ProxySetting-ConfigProxy_Type"), this.$emit("input", this.selectedItem.name, "ProxySetting-ConnectType_Hub"), this.$emit("input", this.selectedItem.name, "ProxySetting-ConnectType_Http"), this.$emit("input", this.selectedItem.name, "ProxySetting-ConnectType_Ftp"))
        }

        formatProxys() {
            let e = [];
            if (this.proxyList.length > 0) for (let t = 0; t < this.proxyList.length; ++t) {
                let i = this.proxyList[t].name;
                i = (i = (i = (i = (i = i + ";" + this.proxyList[t].host) + ";" + this.proxyList[t].port) + ";" + this.proxyList[t].type) + ";" + this.proxyList[t].userName) + ";" + this.proxyList[t].passWord, e.push(i)
            }
            return e
        }

        getProxyNames() {
            let e = ["直接连接"];
            if (this.proxyList.length > 0) for (let t = 0; t < this.proxyList.length; ++t) this.proxyList[t].name && this.proxyList[t].name.length > 0 && e.push(this.proxyList[t].name);
            return e
        }

        saveProxys() {
            s.ConfigHelperNS.setValue("ProxyList", "proxys", this.formatProxys()).catch(), s.ConfigHelperNS.setValue("ConnectType", "ProxyName", this.getProxyNames()).catch()
        }

        initProxys() {
            return o(this, void 0, void 0, function* () {
                let e = yield s.ConfigHelperNS.getValue("ProxyList", "proxys", []);
                if (e.length > 0) for (let t = 0; t < e.length; ++t) {
                    let i = e[t].split(";"), n = {};
                    n.name = i[0], n.host = i[1], n.type = i[3], n.userName = void 0 !== i[4] ? i[4] : "", n.passWord = void 0 !== i[5] ? i[5] : "", i[2] ? n.port = Number(i[2]) ? Number(i[2]) : 80 : n.port = 80, this.proxyList.push(n)
                }
            })
        }

        mounted() {
            this.initProxys().catch()
        }
    };
    n([r.Prop({})], u.prototype, "item", void 0), n([r.Prop()], u.prototype, "value", void 0), n([r.Prop()], u.prototype, "disabled", void 0), u = n([r.Component({components: {}})], u), t.default = u
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(323), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(211), r = i(29), s = i(5), a = i(81), l = i(18), c = i(3), u = i(103), d = i(30), h = i(203);
    let p = class extends (r.mixins(d.DraggableMixin, d.PositionMixin)) {
        constructor() {
            super(...arguments), this.hours = "0", this.minutes = "0", this.seconds = "0", this.operation = "开始全部任务", this.operations = ["关机", "睡眠", "退出迅雷", "开始全部任务", "暂停全部任务"], this.plans = [], this.timeIntervalId = -1, this.isMax = !1, this.schema = null, this.errorFields = null
        }

        sget() {
            return h.apply(null, arguments)
        }

        addPlan() {
            this.schema.validate({hours: this.hours, minutes: this.minutes}, (e, t) => {
                e ? this.errorFields = t : (this.errorFields = null, this.plans.length >= 3 ? this.isMax = !0 : this.plans.push({
                    hours: this.hours,
                    minutes: this.minutes,
                    seconds: this.seconds,
                    operation: this.operation
                }), this.$nextTick(() => {
                    a.ThunderWindowNS.resizeToFitContent()
                }))
            })
        }

        removePlan(e) {
            this.isMax = !1, this.plans.splice(e, 1), this.$nextTick(() => {
                a.ThunderWindowNS.resizeToFitContent()
            })
        }

        handleClose() {
            this.plans.length >= 0 && c.ipcRenderer.send(l.ThunderChannelList.channelRMCommitPlanTask, this.plans), -1 !== this.timeIntervalId && (clearInterval(this.timeIntervalId), this.timeIntervalId = -1), window.close()
        }

        created() {
            this.plans = this.options, this.timeIntervalId = setInterval(() => {
                for (let e = this.plans.length - 1; e >= 0; --e) {
                    let t = this.plans[e], i = 3600 * Number(t.hours) + 60 * Number(t.minutes) + Number(t.seconds);
                    if ((i -= 1) <= 0) {
                        this.removePlan(e), c.ipcRenderer.send(l.ThunderChannelList.channelRMPerformePlanTask, t.operation);
                        continue
                    }
                    let n = [Math.floor(i / 3600), Math.floor(i / 60 % 60), Math.floor(i % 60)];
                    t.hours = n[0] + "", t.minutes = n[1] + "", t.seconds = n[2] + ""
                }
            }, 1e3), this.schema = new o.default({
                hours: {
                    type: "number",
                    min: 0,
                    max: 999,
                    message: "请输入正确的时间",
                    transform: Number
                }, minutes: [{
                    type: "number", message: "执行时间不能为0", transform: Number, validator: (e, t, i) => {
                        0 === t && 0 === Number(this.hours) ? i(new Error("执行时间不能为0")) : i()
                    }
                }, {type: "number", min: 0, max: 59, message: "请输入正确的时间", transform: Number}]
            })
        }
    };
    n([s.Prop()], p.prototype, "options", void 0), p = n([s.Component({components: {SelectNative: u.default}})], p), t.default = p
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(325), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(2), s = i(3), a = i(7), l = i(29), c = i(5), u = i(43), d = i(17), h = i(16), p = i(30), f = i(28),
        A = i(4);
    let g = class extends (l.mixins(p.DraggableMixin, p.PositionMixin)) {
        constructor() {
            super(...arguments), this.newName = "", this.tipsText = "", this.isShowTips = !1
        }

        get originName() {
            let e = "";
            do {
                if (null === this.options || void 0 === this.options) break;
                let t = this.options.taskBase;
                if (null === t || void 0 === t) break;
                let i = t.taskName;
                if (null === i || void 0 === i) break;
                if ("string" != typeof i) break;
                e = i
            } while (0);
            return e
        }

        handleInput(e) {
            this.newName = e
        }

        handleClose(e) {
            s.ipcRenderer.send(`message-box-resolve-${this.boxId}`, f.MessageBoxNS.Action.Close), window.close()
        }

        handleOK() {
            return o(this, void 0, void 0, function* () {
                do {
                    let e = this.newName.trim();
                    e = e.replace(/[\n\r\n]/g, "");
                    let t = this.options.taskBase, i = t.taskName, n = t.savePath, o = t.taskType, a = n;
                    if (o !== h.DownloadKernel.TaskType.Group && (a = r.join(n, i)), "" === e) {
                        this.isShowTips = !0, this.tipsText = "文件名不能为空";
                        break
                    }
                    if ("." === e[0]) {
                        this.isShowTips = !0, this.tipsText = "必须键入文件名";
                        break
                    }
                    if (e.match(/[\/\\"<>\?\*:|]/)) {
                        this.isShowTips = !0, this.tipsText = '文件名不能包含下列任何字符： \\ / : * ? " < > |';
                        break
                    }
                    if (!(yield A.client.callServerFunction("IsSingleBtTask", t.taskId)) && o !== h.DownloadKernel.TaskType.Group) {
                        if (!(yield d.FileSystemAWNS.existsAW(a))) {
                            this.isShowTips = !0, this.tipsText = "文件不存在";
                            break
                        }
                        let t = r.join(n, e);
                        if (yield d.FileSystemAWNS.existsAW(t)) {
                            this.isShowTips = !0, this.tipsText = "文件已存在";
                            break
                        }
                    }
                    s.ipcRenderer.send(`message-box-resolve-${this.boxId}`, f.MessageBoxNS.Action.OK, {fileName: e}), window.close()
                } while (0)
            })
        }

        handleKeyDown(e) {
            e.ctrlKey && 13 === e.keyCode && this.handleOK()
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                this.newName = this.originName, document.addEventListener("click", () => {
                    this.isShowTips = !1
                }), document.addEventListener("keydown", this.handleKeyDown), this.$nextTick(() => {
                    let e = this.$refs.input.$el.querySelector("textarea");
                    if (null !== e && void 0 !== e) do {
                        let t = r.extname(this.newName);
                        if ("" === t) {
                            e.select();
                            break
                        }
                        if (u.TaskUtilHelper.getTaskFileType(void 0, t) === u.TaskUtilHelper.FileExtType.Unkown) {
                            e.select();
                            break
                        }
                        e.focus(), e.setSelectionRange(0, this.newName.length - t.length)
                    } while (0)
                }), (yield a.asyncRemoteCall.getCurrentWindow()).hookWindowMessage(528, () => {
                    this.isShowTips = !1
                })
            })
        }

        destroyed() {
            document.removeEventListener("keydown", this.handleKeyDown)
        }
    };
    n([c.Prop()], g.prototype, "options", void 0), n([c.Prop()], g.prototype, "boxId", void 0), g = n([c.Component], g), t.default = g
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(327), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(29), s = i(5), a = i(30), l = i(28);
    let c = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        handleClose(e) {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.Close), window.close()
        }

        handleOK(e) {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.OK, {picked: e}), window.close()
        }
    };
    n([s.Prop()], c.prototype, "boxId", void 0), c = n([s.Component], c), t.default = c
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(329), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(29), s = i(5), a = i(30), l = i(28), c = i(81);
    let u = class extends (r.mixins(a.DraggableMixin)) {
        constructor() {
            super(...arguments), this.files = ""
        }

        handleClose(e) {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.Close), window.close()
        }

        handleOK(e) {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.OK, {picked: e}), window.close()
        }

        mounted() {
            do {
                if (void 0 === this.options || null === this.options) break;
                let e = this.options.file;
                if (void 0 === e || null === e) break;
                let t = null;
                try {
                    t = JSON.parse(e)
                } catch (e) {
                }
                if (null === t) break;
                let i = "在目录“" + this.options.saveDir + "”下已存在文件：";
                t.splice(0, 0, i), this.files = t.join("<br>")
            } while (0);
            this.$nextTick(() => {
                c.ThunderWindowNS.resizeToFitContent(0, 0, c.ThunderWindowNS.fitWindowPosInParent)
            })
        }
    };
    n([s.Prop({})], u.prototype, "options", void 0), n([s.Prop()], u.prototype, "boxId", void 0), u = n([s.Component], u), t.default = u
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(331), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(3), l = i(7), c = i(30), u = i(28), d = i(15);
    let h = class extends (r.mixins(c.DraggableMixin, c.PositionMixin)) {
        constructor() {
            super(...arguments), this.password = "", this.secondPassword = "", this.tipsText = "", this.isShowTips = !1, this.isSetHide = this.options.isSetHide, this.windowWidth = 450, this.windowHeight = 230
        }

        handleClose(e) {
            let t = `button=${e}`;
            this.stat("private_page_pop_click", t), a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close), window.close()
        }

        handleOK() {
            do {
                if (this.stat("private_page_pop_click", "button=confirm"), "" === this.password || "" === this.secondPassword) {
                    this.tipsText = "密码不能为空！", this.isShowTips = !0;
                    break
                }
                if (this.password !== this.secondPassword) {
                    this.tipsText = "两次输入的密码不一致！", this.isShowTips = !0;
                    break
                }
                a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.OK, {
                    password: this.password,
                    isSetHide: this.isSetHide
                }), "open" === this.options.showType && d.XLStatNS.trackEvent("download_leftpanel", "private_open_success", "", 0, 0, 0, 0, ""), window.close()
            } while (0)
        }

        stat(e, t) {
            let i = "type=3";
            "change" === this.options.showType && (i = "type=4"), void 0 !== t && null !== t && "" !== t && (i = `${i},${t}`), d.XLStatNS.trackEvent("download_leftpanel", e, "", 0, 0, 0, 0, i)
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                this.stat("private_page_pop_show", ""), window.addEventListener("keyup", e => {
                    "Enter" === e.key ? this.handleOK() : "Escape" === e.key && this.handleClose("close")
                }, !0), document.addEventListener("click", () => {
                    this.isShowTips = !1
                }), (yield l.asyncRemoteCall.getCurrentWindow()).hookWindowMessage(528, () => {
                    this.isShowTips = !1
                })
            })
        }
    };
    n([s.Prop()], h.prototype, "options", void 0), n([s.Prop()], h.prototype, "boxId", void 0), h = n([s.Component], h), t.default = h
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(333), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(3), l = i(7), c = i(30), u = i(28), d = i(15);
    let h = class extends (r.mixins(c.DraggableMixin, c.PositionMixin)) {
        constructor() {
            super(...arguments), this.errorCount = this.options.errorCount, this.newPassword = "", this.tipsText = "", this.isShowTips = !1, this.windowWidth = 450, this.windowHeight = 158
        }

        handleClose(e) {
            let t = `button=${e},type=5`;
            d.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_click", "", 0, 0, 0, 0, t), a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close, {errorCount: this.errorCount}), window.close()
        }

        handleClearPwd() {
            this.newPassword = "", this.$refs.pwdInput.focus()
        }

        handleForget() {
            d.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_click", "", 0, 0, 0, 0, "button=forgot,type=5"), a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close, {
                from: "forget",
                errorCount: this.errorCount
            }), window.close()
        }

        handleOK() {
            do {
                let e = "button=confirm,type=5";
                if (d.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_click", "", 0, 0, 0, 0, e), "" === this.newPassword) {
                    this.tipsText = "密码不能为空！", this.isShowTips = !0;
                    break
                }
                if (this.options.password !== this.newPassword) {
                    this.tipsText = "密码错误，请重新输入！", this.isShowTips = !0, this.errorCount = this.errorCount + 1, this.errorCount >= 5 && (this.errorCount = 5, a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close, {
                        from: "more",
                        errorCount: this.errorCount
                    }), window.close());
                    break
                }
                a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.OK, {success: !0}), window.close()
            } while (0)
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                d.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_show", "", 0, 0, 0, 0, "type=5"), window.addEventListener("keyup", e => {
                    "Enter" === e.key ? this.handleOK() : "Escape" === e.key && this.handleClose("close")
                }, !0), this.$refs.pwdInput.focus(), document.addEventListener("click", () => {
                    this.isShowTips = !1
                }), (yield l.asyncRemoteCall.getCurrentWindow()).hookWindowMessage(528, () => {
                    this.isShowTips = !1
                })
            })
        }
    };
    n([s.Prop()], h.prototype, "options", void 0), n([s.Prop()], h.prototype, "boxId", void 0), h = n([s.Component], h), t.default = h
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(335), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(3), l = i(7), c = i(30), u = i(28), d = i(4), h = i(15);
    let p = class extends (r.mixins(c.DraggableMixin, c.PositionMixin)) {
        constructor() {
            super(...arguments), this.windowWidth = 450, this.windowHeight = 240, this.reviewPanelWindowWidth = 400, this.reviewPanelWindowHeight = 350, this.promptContent = "为了确保信息安全，请验证您已绑定的安全手机，填写收到的验证码。", this.okDisabled = !1, this.timerCookie = null, this.mobile = "", this.verifyCodeBtnDisabled = !1, this.verifyCodeBtntext = "获取验证码", this.token = "", this.verifyCodeTipsText = "", this.isShowVerifyCodeTips = !1, this.verifyCode = "", this.verifyCodeGetTipsText = "", this.isShowVerifyCodeGetTips = !1, this.creditkey = "", this.reviewurl = "", this.isShowFigureCode = !1
        }

        getMobile() {
            this.mobile = this.options.mobile, this.mobile = this.mobile.replace(/(\d{3})\d{4}(\d{4})/, "$1****$2")
        }

        getPromptContent() {
            let e = this.options.methodType;
            this.promptContent = "forget" === e ? "重设密码进行身份验证，请验证您已绑定的安全手机信息，填写收到的验证码。" : "more" === e ? "输入密码错误次数过多，请验证您已绑定的安全手机信息，填写收到的验证码。" : "为了确保信息安全，请验证您已绑定的安全手机，填写收到的验证码。"
        }

        closeWnd(e) {
            null !== this.timerCookie && void 0 !== this.timerCookie && (clearInterval(this.timerCookie), this.timerCookie = null), window.close()
        }

        handleClose(e) {
            let t = `button=${e},type=1`;
            h.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_click", "", 0, 0, 0, 0, t), "close" === e ? a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close) : "cancel" === e && a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Cancel), this.closeWnd("close")
        }

        handleGetVerifyCode(e) {
            return o(this, void 0, void 0, function* () {
                if ("auto" !== e) {
                    let e = "button=yanzhengma,type=1";
                    h.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_click", "", 0, 0, 0, 0, e)
                }
                if (this.token = null, null === this.timerCookie || void 0 === this.timerCookie) {
                    this.verifyCodeBtntext = "59s后重新获取", this.verifyCodeBtnDisabled = !0;
                    let e = 59;
                    this.timerCookie = setInterval(() => {
                        e <= 1 ? (this.verifyCodeBtnDisabled = !1, this.verifyCodeBtntext = "获取验证码", clearInterval(this.timerCookie), this.timerCookie = null) : (e -= 1, this.verifyCodeBtntext = `${e}s后重新获取`)
                    }, 1050)
                }
                "auto" !== e && (this.creditkey = "", this.reviewurl = ""), this.isShowFigureCode = !1;
                let t = yield d.client.callServerFunction("SendSms", this.creditkey);
                if (null !== t && void 0 !== t) try {
                    let e = JSON.parse(t);
                    if (null !== e && void 0 !== e && 200 === e.code) this.token = e.data.token; else if (null !== e.msg && void 0 !== e.msg) if (201 === e.code) {
                        this.creditkey = e.data.creditkey;
                        let t = yield d.client.callServerFunction("GetLoginInfo", "deviceid");
                        this.reviewurl = `${e.data.reviewurl}&creditkey=${e.data.creditkey}&deviceid=${t}`, this.isShowFigureCode = !0
                    } else this.verifyCodeGetTipsText = e.msg, this.verifyCodeGetTipsText = this.verifyCodeGetTipsText.replace(/(\[.*\])/g, ""), this.isShowVerifyCodeGetTips = !0; else this.verifyCodeGetTipsText = "获取验证码失败", this.isShowVerifyCodeGetTips = !0
                } catch (e) {
                } else this.verifyCodeGetTipsText = "获取验证码超时", this.isShowVerifyCodeGetTips = !0
            })
        }

        handleModifierPhone() {
            h.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_click", "", 0, 0, 0, 0, "button=modifyphone,type=1"), d.client.callServerFunction("OpenNewTab", "https://i.xunlei.com/xluser/validate/modifyphone_p.html").catch(), this.closeWnd("modifierPhone")
        }

        handleOK() {
            return o(this, void 0, void 0, function* () {
                do {
                    let e = "button=confirm,type=1";
                    if (h.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_click", "", 0, 0, 0, 0, e), this.okDisabled = !0, this.isShowVerifyCodeTips = !1, null === this.verifyCode || void 0 === this.verifyCode || "" === this.verifyCode) {
                        this.verifyCodeTipsText = "验证码不能为空", this.isShowVerifyCodeTips = !0, this.okDisabled = !1;
                        break
                    }
                    if (this.verifyCode = this.verifyCode.trim(), 6 !== this.verifyCode.length) {
                        this.verifyCodeTipsText = "验证码位数不对", this.isShowVerifyCodeTips = !0, this.okDisabled = !1;
                        break
                    }
                    let t = yield d.client.callServerFunction("CheckSms", this.token, this.verifyCode);
                    if (null !== t && void 0 !== t) {
                        try {
                            let e = JSON.parse(t);
                            null !== e && void 0 !== e && 200 === e.code ? (a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.OK, {success: !0}), window.close()) : (null !== e.msg && void 0 !== e.msg ? (this.verifyCodeTipsText = e.msg, this.verifyCodeTipsText = this.verifyCodeTipsText.replace(/(\[.*\])/g, "")) : this.verifyCodeTipsText = "验证失败", this.isShowVerifyCodeTips = !0)
                        } catch (e) {
                            this.okDisabled = !1
                        }
                        this.okDisabled = !1
                    } else this.verifyCodeTipsText = "验证超时", this.isShowVerifyCodeTips = !0, this.okDisabled = !1
                } while (0)
            })
        }

        initIframe() {
            window.XlCaptcha.init({
                IFRAME_BOX_ID: "boxid", PANEL_THEME: "default", CLOSE_PANEL_FUNC: () => {
                    this.isShowFigureCode = !1, window.resizeTo(this.windowWidth, this.windowHeight)
                }, VERTIFY_SUCC_FUNC: e => {
                    200 === e.code && (this.isShowFigureCode = !1, window.resizeTo(this.windowWidth, this.windowHeight), this.creditkey = e.creditkey, this.handleGetVerifyCode("auto"))
                }
            })
        }

        showFigureCode() {
            window.resizeTo(this.reviewPanelWindowWidth, this.reviewPanelWindowHeight), this.isShowFigureCode && this.initIframe()
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                h.XLStatNS.trackEvent("download_leftpanel", "private_page_pop_show", "", 0, 0, 0, 0, "type=1"), this.getMobile(), this.getPromptContent(), window.addEventListener("keyup", e => {
                    "Enter" === e.key ? this.handleOK() : "Escape" === e.key && this.handleClose("close")
                }, !0), this.$refs.phoneInput.focus(), document.addEventListener("click", () => {
                    this.isShowVerifyCodeGetTips = !1, this.isShowVerifyCodeTips = !1
                }), (yield l.asyncRemoteCall.getCurrentWindow()).hookWindowMessage(528, () => {
                    this.isShowVerifyCodeGetTips = !1, this.isShowVerifyCodeTips = !1
                })
            })
        }
    };
    n([s.Prop()], p.prototype, "options", void 0), n([s.Prop()], p.prototype, "boxId", void 0), p = n([s.Component], p), t.default = p
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(337), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(3), l = i(7), c = i(766), u = i(17), d = i(30), h = i(28);
    let p = class extends (r.mixins(d.DraggableMixin, d.PositionMixin)) {
        constructor() {
            super(...arguments), this.pathTips = "", this.isShowPathTips = !1, this.savePath = "", this.appendDirs = [], this.hideLocalDir = !0, this.windowWidth = 450, this.windowHeight = 188
        }

        handleClose(e) {
            a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, h.MessageBoxNS.Action.Close), window.close()
        }

        handleChangePath(e) {
            this.savePath = e
        }

        handleOK() {
            return o(this, void 0, void 0, function* () {
                do {
                    if ("" === this.savePath) {
                        this.isShowPathTips = !0, this.pathTips = "不合法的存储路径";
                        break
                    }
                    if (!(yield u.FileSystemAWNS.existsAW(this.savePath))) {
                        if (!(yield u.FileSystemAWNS.mkdirAW(this.savePath))) {
                            this.isShowPathTips = !0, this.pathTips = "不合法的存储路径";
                            break
                        }
                    }
                    a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, h.MessageBoxNS.Action.OK, {
                        savePath: this.savePath,
                        hideLocalDir: this.hideLocalDir ? 1 : 0
                    }), window.close()
                } while (0)
            })
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                this.options.savePath && "" !== this.options.savePath && this.appendDirs.push(this.options.savePath), this.savePath = this.options.savePath, this.hideLocalDir = this.options.hideLocalDir, document.addEventListener("click", () => {
                    this.isShowPathTips = !1
                }), (yield l.asyncRemoteCall.getCurrentWindow()).hookWindowMessage(528, () => {
                    this.isShowPathTips = !1
                })
            })
        }
    };
    n([s.Prop({})], p.prototype, "options", void 0), n([s.Prop()], p.prototype, "boxId", void 0), p = n([s.Component({components: {PathSelector: c.default}})], p), t.default = p
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(339), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(7), a = i(5), l = i(4), c = i(135), u = i(22), d = i(11), h = i(17),
        p = i(1).default.getLogger("ThunderNewTask.path-selector");
    let f = class extends a.Vue {
        constructor() {
            super(...arguments), this.timerId = -1, this.freeSpace = 0, this.totalSpace = 0, this.valid = !0, this.isDanger = !1, this.isWarn = !1
        }

        onPathChange(e) {
            return o(this, void 0, void 0, function* () {
                do {
                    let t = e;
                    if ("私人空间" === e) {
                        let e = yield l.client.callServerFunction("GetUserID");
                        if (null === e || void 0 === e || "" === e) break;
                        t = yield l.client.callServerFunction("GetPrivateSavePath", e)
                    }
                    this.totalSpace = u.ThunderHelper.getPartitionSpace(t), this.freeSpace = u.ThunderHelper.getFreePartitionSpace(t)
                } while (0)
            })
        }

        onDanger(e) {
            this.$emit("danger", e)
        }

        created() {
            this.timerId = setInterval(() => o(this, void 0, void 0, function* () {
                if (void 0 !== this.value && null !== this.value) {
                    if ("私人空间" === this.value) this.valid = !0; else if (this.value.length >= 3) {
                        let e = this.value.slice(0, 3);
                        this.valid = yield h.FileSystemAWNS.existsAW(e)
                    } else this.valid = !1;
                    this.valid && this.onPathChange(this.value)
                }
            }), 1e3)
        }

        get spaceColor() {
            let e = "";
            return this.isDanger ? e = "is-danger" : this.isWarn && (e = "is-warn"), e
        }

        get freeSpaceFormat() {
            let e = "";
            do {
                if ("string" != typeof this.value) break;
                if (-1 === this.freeSpace) break;
                if ("" === this.value) {
                    this.isDanger = !1;
                    break
                }
                if (this.value.length < 3) {
                    this.isDanger = !1;
                    break
                }
                if (!this.valid) {
                    this.isDanger = !1;
                    break
                }
                if (this.isDanger = !1, this.isWarn = !1, this.needSpace >= this.freeSpace) {
                    this.isDanger = !0, e = "磁盘空间不足";
                    break
                }
                this.freeSpace / this.totalSpace <= .3 && (this.isWarn = !0), e = "剩余:" + d.ThunderUtil.formatSize(this.freeSpace)
            } while (0);
            return e
        }

        handleInput(e) {
            this.$emit("input", e, !0)
        }

        handleContextMenu() {
            return o(this, void 0, void 0, function* () {
                const {MenuSkinNS: e} = yield Promise.resolve().then(() => i(64));
                e.popEditableDefaultContextMenu()
            })
        }

        handleChangePath() {
            return o(this, void 0, void 0, function* () {
                const e = yield s.asyncRemoteCall.getDialog();
                let t = yield s.asyncRemoteCall.getCurrentWindow();
                e.showOpenDialog(t, {defaultPath: this.value, properties: ["openDirectory"]}).then(e => {
                    e.canceled || this.$emit("input", e.filePaths[0], !0)
                })
            })
        }

        mounted() {
            r.ipcRenderer.on("dropdown-file-window-select", (e, t, i, n, o) => {
                p.information("dropdown select", t, n), "logic" === o && this.$emit("input", t, n)
            })
        }

        destroyed() {
            -1 !== this.timerId && (clearTimeout(this.timerId), this.timerId = -1)
        }
    };
    n([a.Prop({})], f.prototype, "appendDirs", void 0), n([a.Prop({default: !0})], f.prototype, "enablePrivateSpace", void 0), n([a.Prop({})], f.prototype, "enableDelete", void 0), n([a.Prop({default: ""})], f.prototype, "value", void 0), n([a.Prop({default: 0})], f.prototype, "needSpace", void 0), n([a.Watch("value", {immediate: !0})], f.prototype, "onPathChange", null), n([a.Watch("isDanger", {immediate: !0})], f.prototype, "onDanger", null), f = n([a.Component({components: {SelectWindow: c.default}})], f), t.default = f
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(341), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(29), r = i(5), s = i(3), a = i(30), l = i(28);
    let c = class extends (o.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.maxTaskCount = 5, this.autoMoveLowSpeedTaskToTail = !0, this.tipsText = "请输入大于等于1小于等于50的数字", this.isShowTips = !1
        }

        handleClose(e) {
            s.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.Close), window.close()
        }

        handleOK() {
            do {
                if (!this.maxTaskCount || this.maxTaskCount < 1 || this.maxTaskCount > 50) {
                    this.isShowTips = !0;
                    break
                }
                s.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.OK, {
                    maxTaskCount: this.maxTaskCount,
                    autoMoveLowSpeedTaskToTail: this.autoMoveLowSpeedTaskToTail
                }), window.close()
            } while (0)
        }

        mounted() {
            document.addEventListener("click", () => {
                this.isShowTips = !1
            })
        }
    };
    n([r.Prop()], c.prototype, "boxId", void 0), c = n([r.Component], c), t.default = c
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(343), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(81), r = i(29), s = i(5), a = i(30);
    let l = class extends (r.mixins(a.DraggableMixin)) {
        constructor() {
            super(...arguments), this.title = "以下0个相同任务，将不再下载这些文件", this.urls = ""
        }

        mounted() {
            do {
                if (void 0 === this.options || null === this.options) break;
                let e = this.options.file;
                if (void 0 === e || null === e) break;
                let t = null;
                try {
                    t = JSON.parse(e)
                } catch (e) {
                }
                if (null === t) break;
                this.urls = t.join("<br>"), this.title = "以下" + t.length + "个相同任务，将不再下载这些文件"
            } while (0);
            this.$nextTick(() => {
                o.ThunderWindowNS.resizeToFitContent(0, 0, o.ThunderWindowNS.fitWindowPosInParent)
            })
        }

        handleOK() {
            window.close()
        }
    };
    n([s.Prop()], l.prototype, "options", void 0), l = n([s.Component], l), t.default = l
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(345), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(7), a = i(29), l = i(5), c = i(125), u = i(150), d = i(103), h = i(30), p = i(28);
    let f = class extends (a.mixins(h.DraggableMixin, h.PositionMixin)) {
        constructor() {
            super(...arguments), this.selectOptions = ["1", "2", "3"], this.picked = "number", this.urlExample = "", this.numFrom = "0", this.numTo = "0", this.numMax = 999, this.wildcardLength = "2", this.alphaFrom = "a", this.alphaTo = "z", this.context = "", this.tipsText = "", this.isShowTips = !1
        }

        handleClose() {
            r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, p.MessageBoxNS.Action.Close), window.close()
        }

        handleOK() {
            do {
                if (!c.URLHelperNS.isP2spOrEmuleUrl(this.urlExample)) {
                    this.tipsText = "不支持的协议，请重新输入", this.isShowTips = !0;
                    break
                }
                if (!/\(\*\)/.test(this.urlExample)) {
                    this.tipsText = "必须在url中包含‘(*)’，请重新输入", this.isShowTips = !0;
                    break
                }
                if ("number" === this.picked) {
                    r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, p.MessageBoxNS.Action.OK, {
                        picked: this.picked,
                        urlExample: this.urlExample,
                        from: Number(this.numFrom),
                        to: Number(this.numTo),
                        wildcardLen: Number(this.wildcardLength)
                    }), window.close();
                    break
                }
                if ("alpha" === this.picked) {
                    r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, p.MessageBoxNS.Action.OK, {
                        picked: this.picked,
                        urlExample: this.urlExample,
                        from: this.alphaFrom,
                        to: this.alphaTo
                    }), window.close();
                    break
                }
            } while (0)
        }

        padLeftZero(e, t) {
            if (t.length > e) return t;
            return ("000000".substring(0, e) + t).substr(t.length)
        }

        showUrls() {
            do {
                if (!c.URLHelperNS.isP2spOrEmuleUrl(this.urlExample)) {
                    this.context = "";
                    break
                }
                if (!/\(\*\)/.test(this.urlExample)) {
                    this.context = "";
                    break
                }
                if ("number" === this.picked) {
                    if (this.numFrom === this.numTo) this.context = this.urlExample.replace(/\(\*\)/, this.padLeftZero(Number(this.wildcardLength), this.numFrom)); else {
                        let e = this.urlExample.replace(/\(\*\)/, this.padLeftZero(Number(this.wildcardLength), this.numFrom)),
                            t = this.urlExample.replace(/\(\*\)/, this.padLeftZero(Number(this.wildcardLength), this.numTo));
                        this.context = e + "\r\n...\r\n...\r\n" + t
                    }
                    break
                }
                if ("alpha" === this.picked) {
                    if (this.alphaFrom === this.alphaTo) this.context = this.urlExample.replace(/\(\*\)/, this.alphaFrom); else {
                        let e = this.urlExample.replace(/\(\*\)/, this.alphaFrom),
                            t = this.urlExample.replace(/\(\*\)/, this.alphaTo);
                        this.context = e + "\r\n...\r\n...\r\n" + t
                    }
                    break
                }
            } while (0)
        }

        handleNumFromChange(e, t) {
            let i = this.numFrom;
            void 0 !== t && null !== t && (this.numFrom = t), this.numFrom = e, i !== e && this.showUrls()
        }

        handleNumToChange(e, t) {
            let i = this.numTo;
            void 0 !== t && null !== t && (this.numTo = t), this.numTo = e, i !== e && this.showUrls()
        }

        handleWildcardChange(e) {
            let t = this.wildcardLength;
            this.wildcardLength = e, t !== e && "number" === this.picked && this.showUrls()
        }

        handleAlphaFromChange(e, t) {
            let i = this.alphaFrom;
            void 0 !== t && null !== t && (this.alphaFrom = t), this.alphaFrom = e, i !== e && this.showUrls()
        }

        handleAlphaToChange(e, t) {
            let i = this.alphaTo;
            void 0 !== t && null !== t && (this.alphaTo = t), this.alphaTo = e, i !== e && this.showUrls()
        }

        handleDocClick() {
            this.tipsText = "", this.isShowTips = !1
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                document.addEventListener("click", this.handleDocClick), (yield s.asyncRemoteCall.getCurrentWindow()).hookWindowMessage(528, () => {
                    this.isShowTips = !1
                })
            })
        }

        destroyed() {
            document.removeEventListener("click", this.handleDocClick)
        }

        onUrlExampleChanged() {
            this.showUrls()
        }

        onPickedChange() {
            this.showUrls()
        }
    };
    n([l.Prop()], f.prototype, "boxId", void 0), n([l.Watch("urlExample")], f.prototype, "onUrlExampleChanged", null), n([l.Watch("picked")], f.prototype, "onPickedChange", null), f = n([l.Component({
        components: {
            LimitInput: u.default,
            SelectNative: d.default
        }
    })], f), t.default = f
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(347), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(3), l = i(7), c = i(30), u = i(28);
    i(1050);
    let d = class extends (r.mixins(c.DraggableMixin, c.PositionMixin)) {
        constructor() {
            super(...arguments), this.value = ""
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                a.ipcRenderer.on("message-box-resolve-systemmenu", () => {
                    a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close, {
                        title: this.value,
                        state: "close"
                    })
                }), this.value = this.options.title, this.$nextTick(() => {
                    let e = this.$refs.titleInput;
                    e.focus(), e.select()
                });
                let e = yield l.asyncRemoteCall.getCurrentWindow();
                (yield l.asyncRemoteCall.getIpcMain()).on("book-mark-list-close", e => {
                    this.handleClose()
                }), e.on("blur", e => {
                    this.handleClose()
                })
            })
        }

        handleOk() {
            let e = this.$refs.titleInput;
            "" !== e.value.trim() && (a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.OK, {
                title: e.value,
                state: "ok"
            }), window.close())
        }

        handleDelete() {
            a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Cancel, {
                title: this.value,
                state: "delete"
            }), window.close()
        }

        handleClose() {
            a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close, {
                title: this.value,
                state: "close"
            }), window.close()
        }
    };
    n([s.Prop({})], d.prototype, "options", void 0), n([s.Prop()], d.prototype, "boxId", void 0), d = n([s.Component({})], d), t.default = d
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(349), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(3), l = i(7), c = i(30), u = i(1), d = i(15), h = i(28), p = i(64),
        f = u.default.getLogger("book-list");
    let A = class extends (r.mixins(c.DraggableMixin)) {
        constructor() {
            super(...arguments), this.value = "", this.bookMarkMenuUrl = "", this.bookMarkMenuTitle = "", this.currentIndex = 0, this.itemHeight = 28, this.moreBookMarkMaxHeight = 440, this.itemsPadding = 8, this.itemsWarpperPadding = 12
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                let e = yield l.asyncRemoteCall.getCurrentWindow(), t = yield l.asyncRemoteCall.getIpcMain();
                e.show(), e.focus(), t.on("book-mark-list-close", e => {
                    f.information("book-mark-list-close"), window.close()
                }), e.on("blur", e => {
                    window.close()
                })
            })
        }

        handleOk() {
            let e = this.$refs.titleInput;
            "" !== e.value.trim() && (a.ipcRenderer.send(`message-box-resolve-${this.boxId}`, h.MessageBoxNS.Action.OK, {
                title: e.value,
                state: "ok"
            }), window.close())
        }

        isShowDefaultIcon(e, t) {
            let i = !1;
            do {
                if (-1 !== e.indexOf("ftp://") || "" === t || void 0 === t) {
                    i = !0;
                    break
                }
            } while (0);
            return i
        }

        openNewTab(e, t, i = "") {
            a.ipcRenderer.send("openNewTab-book-list", {url: e, title: t})
        }

        get bookMarkTemplate() {
            return [{
                label: "在新标签页中打开", click: () => {
                    this.bookMarkRightClick("open_new"), this.openNewTab(this.bookMarkMenuUrl, this.bookMarkMenuTitle, "new")
                }
            }, {
                label: "删除", click: () => o(this, void 0, void 0, function* () {
                    let e = yield l.asyncRemoteCall.getCurrentWindow();
                    this.options.splice(this.currentIndex, 1);
                    let t = yield e.getSize();
                    this.options.length * this.itemHeight + this.itemsPadding + this.itemsWarpperPadding < this.moreBookMarkMaxHeight && e.setSize(t[0], t[1] - this.itemHeight), a.ipcRenderer.send("delete-book-list", {url: this.bookMarkMenuUrl}), d.XLStatNS.trackEvent("clienttop", "bookmarks_delete"), 0 === this.options.length && window.close()
                })
            }]
        }

        showBookMarkMenu(e, t, i, n = {}) {
            return o(this, void 0, void 0, function* () {
                this.bookMarkMenuUrl = e, this.bookMarkMenuTitle = t, this.currentIndex = i;
                let o = yield l.asyncRemoteCall.getCurrentWindow(),
                    r = yield(yield l.asyncRemoteCall.getMenu()).buildFromTemplate(this.bookMarkTemplate);
                yield p.MenuSkinNS.setStyle(r, {}), yield r.popup(Object.assign({}, {window: o}, n)), d.XLStatNS.trackEvent("clienttop", "bookmarks_top_right_click")
            })
        }

        bookMarkRightClick(e) {
            let t = `button=${e}`;
            d.XLStatNS.trackEvent("clienttop", "bookmarks_top_right_click_menu", "", 0, 0, 0, 0, t)
        }
    };
    n([s.Prop({})], A.prototype, "options", void 0), n([s.Prop()], A.prototype, "boxId", void 0), A = n([s.Component({})], A), t.default = A
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(351), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(7), l = i(1), c = i(30), u = i(128), d = i(4), h = i(15), p = i(16),
        f = l.default.getLogger("Subtitle-Task-FileList");
    let A = class extends (r.mixins(c.DraggableMixin, c.PositionMixin)) {
        constructor() {
            super(...arguments), this.taskId = void 0, this.taskName = "", this.videoNum = 1, this.fileList = [], this.saveDir = "", this.taskType = 2, this.categoryViewId = p.DownloadKernel.CategroyViewID.Unkown, this.columns = [{
                label: "文件名",
                prop: "fileName"
            }, {label: "操作", prop: "operate", width: 82}]
        }

        get taskIcon() {
            return this.taskType === p.DownloadKernel.TaskType.Bt ? "xly-type-bt-file" : "xly-type-group"
        }

        onVideoNumberTextClick() {
            return o(this, void 0, void 0, function* () {
                if ("" !== this.saveDir) {
                    let e = this.saveDir + "\\.";
                    (yield a.asyncRemoteCall.getShell()).showItemInFolder(e)
                }
            })
        }

        searchShooter() {
            let e = this.taskName.replace(/[\`\-\=\~\!\@\#\$\%\^\&\(\)\_\+\[\]\;\'\,\.\{\}]/g, " "),
                t = "http://subhd.com/search/" + encodeURIComponent(e);
            d.client.callServerFunction("OpenNewTab", t).catch(), window.close()
        }

        popSutitleMessageBox(e) {
            return o(this, void 0, void 0, function* () {
                (yield a.asyncRemoteCall.getIpcMain()).on("onSearchSubtitleWndClose", (e, t) => {
                    0 === t ? n.show() : n.close()
                });
                let t = "",
                    i = `pannel=${t = this.categoryViewId === p.DownloadKernel.CategroyViewID.Downloading ? "downloading" : this.categoryViewId === p.DownloadKernel.CategroyViewID.Completed ? "complete" : "trash"},cid=${e.cid},taskid=${this.taskId},filename=${encodeURIComponent(e.fileName)}`;
                h.XLStatNS.trackEvent("download_detail", "dltab_detail_viewsubtitles_click", "", 0, 0, 0, 0, i), f.information("PopSutitleMessageBox: ", i);
                let n = yield a.asyncRemoteCall.getCurrentWindow();
                yield n.hide(), u.MessageBox.custom("SubtitleSearch", {
                    taskId: this.taskId,
                    taskName: e.fileName,
                    cid: e.cid,
                    saveDir: this.saveDir,
                    from: "fileListDlg",
                    categoryViewId: this.categoryViewId
                }, {width: 500, height: 323})
            })
        }

        handleCancel(e) {
            window.close()
        }

        mounted() {
            this.taskId = this.options.taskId, f.information("taskName: ", this.taskId), this.taskName = this.options.taskName, f.information("taskName: ", this.taskName), this.taskType = this.options.taskType, f.information("taskType: ", this.taskType), this.saveDir = this.options.saveDir, f.information("saveDir: ", this.saveDir), this.fileList = this.options.fileList, this.videoNum = this.options.fileList.length, f.information("result: ", this.fileList), f.information("videoNum: ", this.videoNum), this.categoryViewId = this.options.categoryViewId, f.information("categoryViewId: ", this.categoryViewId)
        }
    };
    n([s.Prop()], A.prototype, "options", void 0), A = n([s.Component], A), t.default = A
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(353), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(2), s = i(29), a = i(5), l = i(3), c = i(7), u = i(1), d = i(18), h = i(30), p = i(4), f = i(9),
        A = i(16), g = i(15), v = f.default(r.join(__rootDir, "../bin/ThunderHelper.node")),
        m = u.default.getLogger("Subtitle-Search");
    let C = class extends (s.mixins(h.DraggableMixin, h.PositionMixin)) {
        constructor() {
            super(...arguments), this.taskId = void 0, this.taskName = "", this.taskCid = "", this.saveDir = "", this.subtitleList = [], this.searchText = "", this.searchStatus = 0, this.categoryViewId = A.DownloadKernel.CategroyViewID.Unkown, this.from = "taskList", this.columns = [{
                label: "字幕名",
                prop: "sname"
            }, {label: "语言", prop: "language", width: 82}, {label: "评价", prop: "comment", width: 105}, {
                label: "操作",
                prop: "operate",
                width: 72
            }]
        }

        get tableData() {
            return this.subtitleList.filter(e => !!e.scid)
        }

        getName(e) {
            let t = ".srt";
            if (m.information("getName ", e.surl), void 0 !== e.surl && e.surl.length > 1) {
                let i = e.surl.substring(e.surl.lastIndexOf("."));
                t = e.sname + i
            }
            return "" === e.sname ? ".srt" : t
        }

        getRate(e) {
            if (void 0 !== e) {
                if ("number" == typeof e.rate) return e.rate;
                if ("string" == typeof e.rate) return Number(e.rate)
            }
            return 0
        }

        onOperationTextClick(e) {
            return o(this, void 0, void 0, function* () {
                m.information("OnOperationTextClick");
                let t = yield c.asyncRemoteCall.getIpcMain();
                if (0 === e.status || 3 === e.status) e.status = 2, t.on(d.ThunderChannelList.channelMRDownloadSutitleSuc, t => o(this, void 0, void 0, function* () {
                    m.information("OnOperationTextClick channelMRDownloadSutitleSuc"), e.status = 1, this.stat("dltab_detail_subtitlesdown_click", "result=success")
                })), t.on(d.ThunderChannelList.channelMRDownloadSutitleFail, t => o(this, void 0, void 0, function* () {
                    m.information("OnOperationTextClick channelMRDownloadSutitleFail"), e.status = 3, this.stat("dltab_detail_subtitlesdown_click", "result=fail")
                })), m.information("send channelRMDownloadSutitle"), l.ipcRenderer.send(d.ThunderChannelList.channelRMDownloadSutitle, e, this.taskId, this.taskName); else if (1 === e.status) {
                    if (v.shellExecute(0, "open", r.join(this.saveDir, this.taskName), null, null, "SW_SHOW") <= 32) {
                        let e = this.saveDir + "\\.";
                        (yield c.asyncRemoteCall.getShell()).showItemInFolder(e)
                    }
                }
            })
        }

        stat(e, t) {
            let i = "",
                n = `pannel=${i = this.categoryViewId === A.DownloadKernel.CategroyViewID.Downloading ? "downloading" : this.categoryViewId === A.DownloadKernel.CategroyViewID.Completed ? "complete" : "trash"},cid=${this.taskCid},taskid=${this.taskId},filename=${encodeURIComponent(this.taskName)}`;
            null !== t && void 0 !== t && "" !== t && (n = `${n},${t}`), m.information(e, n), g.XLStatNS.trackEvent("download_detail", e, "", 0, 0, 0, 0, n)
        }

        searchSubtitleByName(e) {
            this.searchStatus = 0, l.ipcRenderer.on(d.ThunderChannelList.channelMRGetSutitleByNameResult, (e, t) => o(this, void 0, void 0, function* () {
                if (m.information("SearchSubtitleByName"), t) if (this.subtitleList = t, m.information("result: ", t), t.length > 1) {
                    this.searchStatus = 1;
                    for (let e of t) m.information("item: ", e)
                } else this.searchStatus = 2; else this.searchStatus = 2, m.information("result is null")
            })), m.information("SearchSubtitleByName searchText: ", this.searchText), l.ipcRenderer.send(d.ThunderChannelList.channelRMGetSutitleByName, this.searchText, this.taskId), "btn" === e && this.stat("dltab_detail_subtitlessearch_click")
        }

        searchShooter() {
            let e = "http://subhd.com/search/" + encodeURIComponent(this.searchText);
            p.client.callServerFunction("OpenNewTab", e).catch(), "fileListDlg" === this.from && l.ipcRenderer.send("onSearchSubtitleWndClose", 1), window.close()
        }

        handleCancel(e) {
            try {
                "fileListDlg" === this.from && l.ipcRenderer.send("onSearchSubtitleWndClose", 0), window.close()
            } catch (e) {
                m.warning(e)
            }
        }

        mounted() {
            this.taskId = this.options.taskId, m.information("taskId: ", this.taskId), this.taskName = this.options.taskName, m.information("taskName: ", this.taskName), this.taskCid = this.options.cid, m.information("cid: ", this.taskCid), this.saveDir = this.options.saveDir, m.information("saveDir: ", this.saveDir), this.categoryViewId = this.options.categoryViewId, m.information("categoryViewId: ", this.categoryViewId);
            let e = this.taskName.lastIndexOf(".");
            m.information("index: ", e);
            let t = "";
            t = void 0 !== e && -1 !== e ? this.taskName.substring(0, e) : this.taskName, m.information("text: ", t), this.searchText = t.replace(/[\`\-\=\~\!\@\#\$\%\^\&\(\)\_\+\[\]\;\'\,\.\{\}]/g, " "), m.information("searchText: ", this.searchText), this.from = this.options.from, m.information("from: ", this.from), l.ipcRenderer.on(d.ThunderChannelList.channelMRGetSutitleByCidResult, (e, t) => o(this, void 0, void 0, function* () {
                if (m.information("on channelMRGetSutitleByCidResult"), t) if (this.subtitleList = t, m.information(t), t.length > 1) {
                    this.searchStatus = 1;
                    for (let e of t) m.information("item: ", e)
                } else this.searchStatus = 2, this.searchSubtitleByName(); else this.searchStatus = 2, m.information("result is null"), this.searchSubtitleByName()
            })), l.ipcRenderer.send(d.ThunderChannelList.channelRMGetSutitleByCid, this.taskCid, this.taskId)
        }
    };
    n([a.Prop()], C.prototype, "options", void 0), C = n([a.Component], C), t.default = C
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(355), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(1), c = i(9), u = i(2), d = i(3), h = i(28), p = i(15), f = i(4),
        A = i(39), g = i(126), v = i(775), m = i(17), C = i(4),
        y = c.default(u.resolve(__rootDir, "../bin/ThunderHelper.node")), w = l.default.getLogger("BrowserConfigGuide"),
        b = i(776), I = i(777);
    let E = class extends (r.mixins(a.DraggableMixin)) {
        constructor() {
            super(...arguments), this.szCurSelect = "", this.windowWidth = 450, this.windowHeight = 348, this.list = [b, I], this.showFoot = !0, this.xunleiKey = "ncennffkjdiamlpmcbajkmaiiiddgioo", this.defaulBrowserPath = "", this.crxPath = "", this.browserInfos = new Map, this.browserNames = ["360se", "chrome", "msedge", "QQBrowser", "360chrome"], this.showMoreSupport = !1, this.browserList = [], this.title = "360安全浏览器"
        }

        get showTitle() {
            return this.title
        }

        get is360SafeExist() {
            let e = this.browserInfos.get("360Safe");
            return !(!e || !e.browserExist)
        }

        get is360QuickExist() {
            let e = this.browserInfos.get("360Quick");
            return !(!e || !e.browserExist)
        }

        get isQQExist() {
            let e = this.browserInfos.get("QQ");
            return !(!e || !e.browserExist)
        }

        get isEdgeExist() {
            let e = this.browserInfos.get("Edge");
            return !(!e || !e.browserExist)
        }

        get isChromeExist() {
            let e = this.browserInfos.get("Chrome");
            return !(!e || !e.browserExist)
        }

        handleItemClick(e) {
            this.szCurSelect = e
        }

        handleClickMore(e = !1) {
            return o(this, void 0, void 0, function* () {
                this.windowHeight = 470;
                let t = this.browserList.length;
                this.windowHeight = this.windowHeight - 40 * (5 - t), 0 === t && (this.windowHeight += 20), (yield A.getCurrentWindow().__resolve()).setSize(this.windowWidth, this.windowHeight), this.showMoreSupport = !0;
                let i = "browser=" + this.showTitle;
                p.XLStatNS.trackEvent("business", "browser_plugin_list_pop_show", "", 0, 0, 0, 0, ""), e && (i += ",click_id=more_support", p.XLStatNS.trackEvent("business", "browser_plugin_startup_pop_click", "", 0, 0, 0, 0, i))
            })
        }

        handleCloseButton(e) {
            let t = "browser=" + this.title + ",click_id=close";
            "startup" === e && p.XLStatNS.trackEvent("business", "browser_plugin_startup_pop_click", "", 0, 0, 0, 0, t), d.ipcRenderer.send(`message-box-resolve-${this.boxId}`, h.MessageBoxNS.Action.Close), window.close()
        }

        findProcessAw(e) {
            return o(this, void 0, void 0, function* () {
                return new Promise(t => {
                    y.asyncFindProcess(e, e => {
                        let i = e && e.length > 0;
                        t(i)
                    })
                })
            })
        }

        handleOpen(e, t = !0) {
            return o(this, void 0, void 0, function* () {
                do {
                    let i = !0, n = !1, o = this.browserInfos.get(e);
                    if (!o) break;
                    if (!o.browserExist) break;
                    let r = "";
                    if (o.browserAddonInstall) {
                        if (!o.browserAddonOpen) if ("QQBrowser" === e) r = o.openCmdLine; else {
                            let t = e + ".exe";
                            (n = yield this.findProcessAw(t)) ? r = o.installCmdLine : i = !1, yield this.openAddons(o.browserAddonConfigPath, e)
                        }
                    } else r = o.installCmdLine;
                    if (t) {
                        let e = "browser=" + o.browserTitle + ",click_id=quick_start";
                        p.XLStatNS.trackEvent("business", "browser_plugin_list_pop_click", "", 0, 0, 0, 0, e)
                    }
                    i ? y.shellExecute(0, "open", o.browserPath, r, "", "SW_SHOW") : C.client.callServerFunction("ShowMessageToast", {
                        message: "已开启下载支持",
                        type: "success"
                    }).catch()
                } while (0);
                yield this.closeWindow()
            })
        }

        handleConfigBrowser() {
            return o(this, void 0, void 0, function* () {
                w.information("选择迅雷下载");
                let e = "";
                switch (this.title) {
                    case"360安全浏览器":
                        e = "360se";
                        break;
                    case"360极速浏览器":
                        e = "360chrome";
                        break;
                    case"QQ浏览器":
                        e = "QQBrowser";
                        break;
                    case"Edge浏览器":
                        e = "msedge";
                        break;
                    case"Chrome浏览器":
                        e = "chrome"
                }
                yield this.handleOpen(e, !1);
                let t = "browser=" + this.title + ",button=quick_start";
                p.XLStatNS.trackEvent("business", "browser_plugin_startup_pop_click", "", 0, 0, 0, 0, t), yield this.closeWindow()
            })
        }

        getBrowserPath(e, t) {
            let i = "";
            if (t) {
                (i = y.queryRegValue(t.reg.regRoot, t.reg.regKey, t.reg.regName)) || ("chrome" === e && (i = y.queryRegValue("HKEY_LOCAL_MACHINE", "SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Google Chrome", "DisplayIcon")), "msedge" === e && (i = y.queryRegValue("HKEY_LOCAL_MACHINE", "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\msedge.exe", "")));
                let n = i.indexOf(",");
                -1 !== n && (i = i.slice(0, n)), i = y.getLongPathName(i), y.queryFileExists(i) || (i = "")
            }
            return i
        }

        initConfigGuide() {
            return o(this, void 0, void 0, function* () {
                if (!(yield this.isBrowserConfigInit())) return w.warning("cqm isBrowserConfigInit not inited"), null;
                this.defaulBrowserPath = v.BrowserHelperNs.getDefaultBrowserPath();
                let e = this.defaulBrowserPath.split("\\"), t = "";
                e && e.length > 0 && (t = e[e.length - 1]);
                let i = y.getInstallDir();
                this.crxPath = u.join(i, "../BHO/xl_ext_chrome.crx"), this.browserInfos = yield v.BrowserHelperNs.getInfos(), w.information("browserInfos", this.browserInfos), w.information("installDir", i);
                let n = u.basename(t, ".exe"),
                    o = {icon: "", name: "", default: !1, install: !1, open: !1, exeName: ""}, r = !1;
                if (-1 === this.browserNames.indexOf(n)) for (let e of this.browserNames) {
                    let t = this.browserInfos.get(e);
                    if (t && t.browserExist) {
                        t.browserAddonInstall && t.browserAddonOpen || (this.title = t.browserTitle, r = !0);
                        break
                    }
                } else {
                    let e = this.browserInfos.get(n);
                    e && (o = {
                        icon: e.icon,
                        name: e.browserTitle,
                        default: !0,
                        install: e.browserAddonInstall,
                        open: e.browserAddonOpen,
                        exeName: n
                    }, this.browserList.push(o), !e.browserExist || e.browserAddonInstall && e.browserAddonOpen || (this.title = e.browserTitle, r = !0), w.information("installed", e.browserAddonInstall, "opened", e.browserAddonOpen))
                }
                this.browserInfos.forEach((e, t) => {
                    w.information("info", e, this.browserList), (!this.browserList || this.browserList.length < 1 || t !== this.browserList[0].exeName) && e.browserExist && (o = {
                        icon: e.icon,
                        name: e.browserTitle,
                        default: !1,
                        install: e.browserAddonInstall,
                        open: e.browserAddonOpen,
                        exeName: t
                    }, this.browserList.push(o))
                }), w.information("browserList", this.browserList), this.showMoreSupport = !!this.options && this.options.showMoreSupport, w.warning("cqm showMoreSupport", this.showMoreSupport, this.options.showMoreSupport), this.showMoreSupport && this.handleClickMore(), this.showMoreSupport || r ? yield this.showWindow() : yield this.closeWindow(), w.information("browserList", this.browserList), w.information("exeName:", t, "name", n, "默认浏览器运行地址为:", this.defaulBrowserPath)
            })
        }

        openAddons(e, t) {
            return o(this, void 0, void 0, function* () {
                let i = "", n = yield m.FileSystemAWNS.readFileAW(e), o = null;
                if (n && n.length > 0) {
                    i = n.toString();
                    try {
                        (o = JSON.parse(i)).extensions.settings.ncennffkjdiamlpmcbajkmaiiiddgioo.state = 1, "360chrome" !== t && "360se" !== t || (o.extensions.settings.ncennffkjdiamlpmcbajkmaiiiddgioo.disable_reasons = 0), i = JSON.stringify(o);
                        let n = yield m.FileSystemAWNS.writeFileAW(e, i);
                        w.information("openAddons writeFileAW ret", n)
                    } catch (e) {
                        return w.warning(e), n
                    }
                }
                return w.information("openAddons open", !1, "path", e), !1
            })
        }

        showWindow() {
            return o(this, void 0, void 0, function* () {
                if (yield(yield A.getCurrentWindow().__resolve()).show(), yield g.ConfigHelperNS.setValue("ShowBrowser", "ShowBox", !0), !(!this.options || "start" !== this.options.from)) {
                    let e = "browser=" + this.showTitle;
                    p.XLStatNS.trackEvent("business", "browser_plugin_startup_pop_show", "", 0, 0, 0, 0, e), w.information("cqm showWindow browser_plugin_startup_pop_show")
                }
            })
        }

        closeWindow() {
            return o(this, void 0, void 0, function* () {
                window.close()
            })
        }

        isBrowserConfigInit() {
            return o(this, void 0, void 0, function* () {
                return f.client.callServerFunction("IsConfigBrowserInitFinish")
            })
        }

        created() {
            return o(this, void 0, void 0, function* () {
                d.ipcRenderer.on("message-box-resolve-systemmenu", () => {
                    d.ipcRenderer.send(`message-box-resolve-${this.boxId}`, h.MessageBoxNS.Action.Close)
                }), yield this.initConfigGuide()
            })
        }
    };
    n([s.Prop({})], E.prototype, "options", void 0), n([s.Prop()], E.prototype, "boxId", void 0), E = n([s.Component], E), t.default = E
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(357), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(3), c = i(7), u = i(18);
    let d = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.progress = 1, this.timerId = -1, this.status = 0
        }

        handleCancel(e) {
            1 !== this.status && 2 !== this.status || window.close()
        }

        onClickDownloadXmp() {
            l.ipcRenderer.send(u.ThunderChannelList.channelRMDownloadXmp), window.close()
        }

        handleFixXmpSuc() {
            this.status = 1, clearTimeout(this.timerId), this.progress = 100, window.close()
        }

        handleFixXmpFail() {
            this.status = 2
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                this.timerId = setInterval(() => {
                    this.progress < 100 && (this.progress = this.progress + 1)
                }, 100);
                let e = yield c.asyncRemoteCall.getIpcMain();
                e.on(u.ThunderChannelList.channelMRFixXmpSuc, this.handleFixXmpSuc), e.on(u.ThunderChannelList.channelMRFixXMPFail, this.handleFixXmpFail), l.ipcRenderer.send(u.ThunderChannelList.channelRMXmpFixBoxCreated)
            })
        }

        destroyed() {
            return o(this, void 0, void 0, function* () {
                let e = yield c.asyncRemoteCall.getIpcMain();
                e.removeListener(u.ThunderChannelList.channelMRFixXmpSuc, this.handleFixXmpSuc), e.removeListener(u.ThunderChannelList.channelMRFixXMPFail, this.handleFixXmpFail), this.removeDraggable()
            })
        }
    };
    n([s.Prop()], d.prototype, "options", void 0), d = n([s.Component], d), t.default = d
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(359), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(29), r = i(5), s = i(30), a = i(3), l = i(18);
    let c = class extends (o.mixins(s.DraggableMixin, s.PositionMixin)) {
        constructor() {
            super(...arguments), this.progress = 1, this.timerId = -1, this.status = 0
        }

        handleCancel(e) {
            window.close()
        }

        onClickDownloadXmpEx() {
            a.ipcRenderer.send(l.ThunderChannelList.channelRMDownloadXmpEx), window.close()
        }

        destroyed() {
            this.removeDraggable()
        }
    };
    n([r.Prop()], c.prototype, "options", void 0), c = n([r.Component], c), t.default = c
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(361), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(30), a = i(5), l = i(124), c = i(81), u = i(137), d = i(4), h = i(3), p = i(7), f = i(196),
        A = i(1), g = i(15), v = i(125), m = i(128), C = i(28), y = A.default.getLogger("ThunderBirdKey");
    let w = class extends (r.mixins(s.DraggableMixin, s.PositionMixin)) {
        constructor() {
            super(...arguments), this.isChecked = !1, this.curBirdKey = "", this.commonBirdKey = "", this.encryptBirdKey = "", this.expiresDate = "", this.timeToClose = 5, this.userpwd = "", this.disableCopy = !1, this.showEncryptRet = !1, this.encryptResult = !1, this.usePwdChecked = !1, this.cookieforlogin = -1, this.bServerEncryptCallBack = !1
        }

        get tips() {
            return `【迅雷口令#X${this.curBirdKey}#】复制口令，打开最新版迅雷，\n        接下来就是见证奇迹的时刻！（${this.expiresDate}失效）`
        }

        get timeClose() {
            return this.timeToClose
        }

        handleInput(e) {
            if ("string" != typeof e) return;
            let t = new RegExp("^[0-9a-zA-Z]+$"), i = e.match(t), n = this.userpwd;
            this.userpwd = e, i && i.length > 0 ? this.userpwd = e : this.userpwd = n, "" === e && (this.userpwd = e)
        }

        handleCheck(e) {
            let t, i;
            if (this.isChecked = e, this.isChecked) {
                t = "common", i = !0;
                let e = this.$refs.inputObj.$el.querySelector("input");
                e && this.$nextTick(() => {
                    e.focus()
                })
            } else t = "encrypted", i = !1;
            f.setBirdKeyPriority(this.options.url, t, i).then(e => {
                y.information("设置口令接口返回:", e.data), this.isWindowTrytoClose || "object" == typeof e && e.data && (y.information("设置口令优先级结果码:", e.data.code), this.isChecked ? "" !== this.encryptBirdKey ? (this.curBirdKey = this.encryptBirdKey, this.disableCopy = !1) : this.disableCopy = !0 : "" === this.commonBirdKey ? this.birdkeyPreHandle("", this.options.url, !1, "unchecked") : this.curBirdKey = this.commonBirdKey)
            }).catch(e => {
                y.information("设置口令优先级失败:", e)
            }), this.isChecked ? this.disableCopy = !0 : this.disableCopy = !1
        }

        handleKeyLogic() {
            y.information("迅雷口令界面"), this.options.showType === f.ShowType.ShowUI_Creating ? this.createBirdKey().catch() : this.options.showType === f.ShowType.ShowUI_Decoding && this.analysisBirdKey(), this.selfCopyFlag = !1, this.isWindowTrytoClose = !1
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                let e = yield p.asyncRemoteCall.getCurrentWindow(), t = !1, i = () => {
                    do {
                        if (t) break;
                        t = !0, this.handleKeyLogic()
                    } while (0)
                };
                e.once("show", i), (yield e.isVisible()) && i()
            })
        }

        bringMainWndToTop() {
            this.options && d.client.callServerFunction("BringMainWndToTop").catch()
        }

        onClickClose() {
            this.isWindowTrytoClose = !0, window.close()
        }

        onEncryptKey() {
            return o(this, void 0, void 0, function* () {
                let e = yield d.client.callServerFunction("GetUserInfo"), t = void 0;
                t = this.isChecked && "" !== this.userpwd ? "encrypted" : "common";
                let i = this.getUserIDFromString(e);
                "string" == typeof i && i.length > 0 ? this.handleEncryptBirdKey(i, this.options.url, t, this.userpwd, !1) : this.handleShowLoginContinue(this.options.url, t, this.userpwd)
            })
        }

        handleShowLoginContinue(e, t, i) {
            return o(this, void 0, void 0, function* () {
                let n = yield l.default(!1, !0, "birdkeyencrypt");
                n && "" !== n && this.handleEncryptBirdKey(n, e, t, i)
            })
        }

        handleEncryptBirdKey(e, t, i, n, o, r) {
            y.information("加密迅雷口令 userid = ", e, " checked=", this.isChecked, " password = ", this.userpwd), this.birdkeyEncode(e, t, i, this.userpwd, !1, e => {
                this.showEncryptRet = !0, this.encryptResult = e, e && (this.disableCopy = !1, this.bServerEncryptCallBack = !0, this.statCreateBirdKey("dltab_detail_encryption_xl_password", !0)), setTimeout(() => {
                    this.showEncryptRet = !1
                }, 700)
            })
        }

        queryBirdkeyInfo(e, t) {
            f.queryBirdKeyInfo(this.options.url, e).then(i => {
                if (this.isWindowTrytoClose) t("pass"); else if ("object" == typeof i) if (i.data) if (y.information("查询口令接口返回:", i.data), 200 === i.data.code) {
                    let n = "";
                    "number" == typeof i.data.link.uid && (n = i.data.link.uid.toString()), n === e && "encrypted" === i.data.link.type ? (this.isChecked = !0, this.userpwd = i.data.link.passwd, this.bServerEncryptCallBack = !0, this.encryptBirdKey = i.data.bird_key) : (this.isChecked = !1, this.commonBirdKey = i.data.bird_key), t("ok", i.data.bird_key)
                } else this.isChecked = !1, this.userpwd = "", t("nokey"); else t("fail"); else t("fail")
            }).catch(e => {
                t("exception")
            })
        }

        retryEncode() {
            this.createBirdKey(!0).catch(), this.showUI(f.ShowType.ShowUI_Creating)
        }

        retryDecode() {
            this.analysisBirdKey(!0), this.showUI(f.ShowType.ShowUI_Decoding)
        }

        handleCreateTask(e, t) {
            return o(this, void 0, void 0, function* () {
                if (!e) return;
                let i = e.filter(e => "encrypted" === e.type && "string" == typeof e.password),
                    n = e.filter(e => "encrypted" !== e.type || "string" != typeof e.password);
                if (n.length > 0) yield d.client.callServerFunction("CreateNewTaskEx", n); else if (!(i.length > 0)) return void this.delayShow(f.ShowType.ShowUI_DecodeFailed, t);
                let o = [], r = yield p.asyncRemoteCall.getCurrentWindow();
                r.setClosable(!1);
                let s = this.$refs.dialogDecode.$el;
                s && (s.style.pointerEvents = "none");
                for (let e = 0; e < i.length; e++) {
                    const t = i[e];
                    let n;
                    n = yield m.MessageBox.custom("BridKeyPwdcheck", {taskUrlItem: t}, {modal: !1}), y.information("验证框返回"), n.action === C.MessageBoxNS.Action.OK && n.args && n.args.success && o.push(t)
                }
                y.information("验证框返回 urls=", o), yield d.client.callServerFunction("CreateNewTaskEx", o), r.setClosable(!0), s && (s.style.pointerEvents = "auto"), setTimeout(() => {
                    document && window && window.close()
                }, 300)
            })
        }

        getStatPublicData() {
            let e = "";
            return this.options.statData ? (this.options.statData.pannel && (e = e + "pannel=" + this.options.statData.pannel), this.options.statData.gcid && (e = e + ",gcid=" + this.options.statData.gcid), this.options.statData.taskid && (e = e + ",taskid=" + this.options.statData.taskid), this.options.statData.filename && (e = e + ",filename=" + encodeURIComponent(this.options.statData.filename)), this.options.statData.pannelType && (e = e + ",pannel_type=" + this.options.statData.pannelType), this.options.statData.taskType && (e = e + ",task_type=" + this.options.statData.taskType), e) : e
        }

        statCreateBirdKey(e, t) {
            let i = this.getStatPublicData();
            if (0 === i.length) return;
            let n = 0;
            this.isChecked && this.bServerEncryptCallBack && (n = 1), i = i + ",bird=" + encodeURI(this.tips), !0 !== t && (i = i + ",is_encryption=" + n), y.information("[bird]stat attr:", e, " extData:", i), g.XLStatNS.trackEvent("download_detail", e, "", 0, 0, 0, 0, i)
        }

        statDecodeBirdKey(e, t, i, n) {
            let o = "bird=" + encodeURIComponent(t || this.tips);
            this.options.statData.from && (o = o + ",type=" + this.options.statData.from);
            let r = 0;
            o = o + ",is_encryption=" + (r = "encrypted" === i ? 1 : 0), !0 === n ? o += ",is_task_group=1" : !1 === n && (o += ",is_task_group=0"), y.information("[bird]stat attr:", e, " extData:", o), g.XLStatNS.trackEvent("download_detail", e, "", 0, 0, 0, 0, o)
        }

        onCreateBirdKeySucc(e) {
            y.information("生成迅雷口令成功,口令码:", e.data.bird_key), this.curBirdKey = e.data.bird_key, "encrypted" === e.data.type ? this.encryptBirdKey = e.data.bird_key : this.commonBirdKey = e.data.bird_key;
            let t = (new Date).getTime(), i = new Date(t + 5184e6);
            this.expiresDate = u.TimeHelperNS.formatDate(i, "yyyy年MM月d日"), this.showUI(f.ShowType.ShowUI_CreateSucc)
        }

        onQueryBirdKeySucc(e, t) {
            if (y.information("(经过查询)生成迅雷口令成功,口令码:", e), this.curBirdKey = e, "unchecked" !== t) {
                let e = (new Date).getTime(), t = new Date(e + 5184e6);
                this.expiresDate = u.TimeHelperNS.formatDate(t, "yyyy年MM月d日"), this.showUI(f.ShowType.ShowUI_CreateSucc), this.statCreateBirdKey("dltab_detail_bird_share_click")
            }
        }

        onQueryBirdKeyFail(e, t, i) {
            y.information("(经过查询)生成迅雷口令失败,ret=", e), "unchecked" !== i && (this.delayShow(f.ShowType.ShowUI_CreateFailed, t), this.statCreateBirdKey("dltab_detail_bird_share_failed"))
        }

        onCreateBirdKeyFail(e, t, i) {
            e ? y.warning("生成迅雷口令失败,data:", e.data) : y.warning("生成迅雷口令异常, reason=", i), this.delayShow(f.ShowType.ShowUI_CreateFailed, t), this.statCreateBirdKey("dltab_detail_bird_share_failed")
        }

        birdkeyEncode(e, t, i, n, o, r) {
            f.encodeBirdKey(t, e, i, n).then(e => {
                this.isWindowTrytoClose || "object" == typeof e && e.data && ("ok" === e.data.result ? (this.onCreateBirdKeySucc(e), "function" == typeof r && r(!0)) : (this.onCreateBirdKeyFail(e, o), "function" == typeof r && r(!1)))
            }).catch(e => {
                this.onCreateBirdKeyFail(null, o, e), "function" == typeof r && r(!1)
            })
        }

        birdkeyPreHandle(e, t, i, n) {
            this.queryBirdkeyInfo(e, (e, t) => {
                let o = !1;
                "ok" === e || (o = !0), "string" != typeof t && (o = !0), o ? this.onQueryBirdKeyFail(e, i, n) : this.onQueryBirdKeySucc(t, n)
            })
        }

        createBirdKey(e) {
            return o(this, void 0, void 0, function* () {
                let e = yield d.client.callServerFunction("GetUserInfo"), t = this.getUserIDFromString(e);
                this.birdkeyPreHandle(t, this.options.url)
            })
        }

        getUserIDFromString(e) {
            let t = null;
            try {
                t = JSON.parse(e)
            } catch (e) {
                t = null
            }
            let i = "";
            return t && (i = t[1].userid), i
        }

        analysisBirdKey(e) {
            if (y.information("剪贴板的迅雷口令相应:", this.options.birdkeyChars), !this.options.birdkeyChars) return;
            if (0 === this.options.birdkeyChars.length) return;
            let t = v.URLHelperNS.isBirdKey(this.options.birdkeyChars);
            if (!t || 0 === t.length) return;
            if (f.getBirdKeyMgr().isSameBirdKey(t) && !e) return;
            let i = [], n = 0;
            for (let e = 0; e < t.length; e++) {
                n = t[e].length;
                const o = t[e].substring(2, n - 1);
                i.push(f.decodeBirdKey(o.toLowerCase()))
            }
            Promise.all(i).then(t => {
                if (this.isWindowTrytoClose) return;
                "object" != typeof t && y.warning("请求口令回传参数错误", t);
                let i = [];
                for (let e = 0; e < t.length; e++) {
                    if (y.information("解析迅雷口令，服务器回应:", t[e].data), !t[e].data) continue;
                    if ("ok" !== t[e].data.result) {
                        this.statDecodeBirdKey("bird_parse_fail", this.options.birdkeyChars, "unknown");
                        continue
                    }
                    if ("string" != typeof t[e].data.url) continue;
                    let n = !1, o = t[e].data.url;
                    if (o.indexOf("%") > -1 && (o = decodeURIComponent(o)), o.match("%20") && (o = decodeURI(o)), o.includes("taskGroupName") ? n = !0 : f.saveVestUrlToConfig(o, "vest" === t[e].data.type), this.statDecodeBirdKey("bird_parse_success", this.options.birdkeyChars, t[e].data.type, n), y.information(" decodeURL before:", t[e].data.url, " after:", o), !this.isURLExist(o, i)) {
                        let n = "0";
                        "number" == typeof t[e].data.uid ? n = t[e].data.uid.toString() : "string" == typeof t[e].data.uid && (n = t[e].data.uid);
                        let r = "birdkey";
                        this.options.statData && this.options.statData.from && (r = this.options.statData.from);
                        let s = {
                            url: o,
                            stat: r,
                            type: t[e].data.type,
                            password: t[e].data.passwd,
                            userid: n,
                            birdkeyChars: this.options.birdkeyChars
                        };
                        i.push(s)
                    }
                }
                this.handleCreateTask(i, e)
            }).catch(t => {
                this.delayShow(f.ShowType.ShowUI_DecodeFailed, e)
            }), f.getBirdKeyMgr().setLastBirdKey(t), this.statDecodeBirdKey("bird_parse_start")
        }

        isURLExist(e, t) {
            let i = !1;
            if (!t) return i;
            if (0 === t.length) return i;
            for (let n = 0; n < t.length; n++) if (t[n].url === e) {
                i = !0;
                break
            }
            return i
        }

        onCopyBtnClick() {
            this.selfCopyFlag = !0, this.statCreateBirdKey("dltab_detail_bird_copy_click");
            let e = this.tips;
            e = (e = (e = e.replace(/\r\n/g, "")).replace(/\n/g, "")).replace(/\s+/g, ""), h.clipboard.writeText(e), this.showUI(f.ShowType.ShowUI_CreateSuccDis), this.timeCloseCookie = setInterval(e => {
                this.timeToClose -= 1, this.timeToClose <= 0 && (clearInterval(this.timeCloseCookie), this.timeCloseCookie = null, window.close())
            }, 1e3)
        }

        delayShow(e, t) {
            t ? setTimeout(() => {
                this.showUI(e)
            }, 300) : this.showUI(e)
        }

        showUI(e) {
            let t = this.options.showType;
            this.options.showType = e;
            let i = 0, n = 0;
            e === f.ShowType.ShowUI_CreateSuccDis ? (i = 400, n = 214) : e === f.ShowType.ShowUI_CreateSucc && (i = 400, n = 264), t !== e && this.$nextTick(() => {
                c.ThunderWindowNS.resizeToFitContent(i, n), e !== f.ShowType.ShowUI_CreateSuccDis && c.ThunderWindowNS.fitWindowPosInParent()
            })
        }
    };
    n([a.Prop()], w.prototype, "options", void 0), w = n([a.Component({})], w), t.default = w
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(363), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(3), a = i(7), l = i(4);
    let c = class extends r.Vue {
        constructor() {
            super(...arguments), this.tabsCopy = [], this.currentCopy = 0
        }

        get tabs() {
            return this.options.tabs
        }

        get current() {
            return this.options.current
        }

        get unpinnedLength() {
            return this.tabsCopy.filter(e => !e.pinned).length
        }

        isShowDefaultIcon(e) {
            let t = !1, i = this.tabsCopy[e].title;
            do {
                if ("新标签页" === i) {
                    t = !0;
                    break
                }
                if (-1 !== i.indexOf("ftp://")) {
                    t = !0;
                    break
                }
                if ("" === this.tabsCopy[e].tab.iconUrl || void 0 === this.tabsCopy[e].tab.iconUrl) {
                    t = !0;
                    break
                }
            } while (0);
            return t
        }

        handleIconUrl(e) {
            return this.tabsCopy[e].tab.iconUrl
        }

        handleRemove(e) {
            l.client.callServerFunction("CloseTabByIndex", e).catch()
        }

        handleUpdateCurrent(e) {
            this.currentCopy !== e && l.client.callServerFunction("SelectTab", e).catch(), s.ipcRenderer.send("total-tabs-hide"), this.win.hide()
        }

        created() {
            return o(this, void 0, void 0, function* () {
                this.currentCopy = this.current, this.tabsCopy = this.tabs
            })
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                this.win = yield a.asyncRemoteCall.getCurrentWindow(), this.win.on("blur", () => {
                    s.ipcRenderer.send("total-tabs-hide"), this.win.hide()
                }), (yield a.asyncRemoteCall.getIpcMain()).on("total-tabs-update", (e, t) => {
                    this.tabsCopy = t.tabs, this.currentCopy = t.current
                }), this.win.show(), this.$refs["item" + this.current][0].scrollIntoView()
            })
        }
    };
    n([r.Prop()], c.prototype, "options", void 0), c = n([r.Component({})], c), t.default = c
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(365), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(29), a = i(5), l = i(30), c = i(786), u = i(788), d = i(791), h = i(792), p = i(794),
        f = i(796), A = i(42), g = i(525), v = i(158), m = i(1), C = i(41), y = i(15), w = i(11), b = i(28), I = i(4),
        E = m.default.getLogger("Individuation"), {isDef: x} = w.ThunderUtil;
    let k = class extends (s.mixins(l.DraggableMixin, l.PositionMixin)) {
        constructor() {
            super(...arguments), this.tabs = [{
                title: "头像",
                key: "avatar"
            }], this.activeKey = "avatar", this.skinTabs = [{title: "精选", key: "featured"}, {
                title: "速度条",
                key: "speedcurve"
            }, {title: "悬浮窗", key: "suspension"}, {
                title: "超级皮肤",
                key: "supervip",
                class: "td-tabs__item2",
                title_suffix: "svip"
            }], this.skinActiveKey = "featured", this.skinInfo = A.SkinHelperNS.defaultSkinInfo, this.isTemp = !1, this.lastSkinInfo = null, this.lastIsTemp = !1, this.wallpaper = null, this.shakeInfo = null, this.tempShakeWallpaper = null, this.speedCurveSkinInfo = g.SpeedCurveSkinHelperNS.defaultSkinInfo, this.lastSpeedCurveSkinInfo = null, this.suspensionSkinInfo = v.SuspensionSkinHelperNS.defaultSkinInfo, this.lastSuspensionSkinInfo = null, this.isLogined = !1, this.userId = "", this.isVip = !1, this.vasType = 0, this.windowWidth = 600, this.windowHeight = 440, this.tryCoverShow = !1, this.coverFrom = ""
        }

        get currentTabSkinInfo() {
            let e = null;
            switch (this.skinActiveKey) {
                case"speedcurve":
                    e = this.speedCurveSkinInfo;
                    break;
                case"suspension":
                    e = this.suspensionSkinInfo;
                    break;
                case"supervip":
                    e = this.skinInfo
            }
            return e
        }

        get currentTabLastSkinInfo() {
            let e = null;
            switch (this.skinActiveKey) {
                case"speedcurve":
                    e = this.lastSpeedCurveSkinInfo;
                    break;
                case"suspension":
                    e = this.lastSuspensionSkinInfo;
                    break;
                case"supervip":
                    e = this.lastSkinInfo
            }
            return e
        }

        get isPlatinumVip() {
            return this.isVip && x(this.vasType) && this.vasType > 2
        }

        get isSuperVip() {
            return this.isVip && 5 === this.vasType
        }

        canUseSpeedCurveSkin(e) {
            let t = !0;
            return e.type === g.SpeedCurveSkinHelperNS.SkinType.SuperVip ? t = this.isSuperVip : e.type === g.SpeedCurveSkinHelperNS.SkinType.Vip && (t = this.isVip), t
        }

        canUseSuspensionSkin(e) {
            let t = !0;
            return e.type === v.SuspensionSkinHelperNS.SkinType.Vip && (t = this.isVip), t
        }

        openVip() {
            return o(this, void 0, void 0, function* () {
                this.trackEvent("user_info", "open_vip", {type: "skin" === this.activeKey ? "skin" : "head_image"}), yield I.client.callServerFunction("OpenNewTab", "https://pay.xunlei.com/pay.html?bizNo=baijin&referfrom=v_pc_xlx_ggong_skincenter"), this.closeWindow()
            })
        }

        updateIsVip() {
            return o(this, void 0, void 0, function* () {
                try {
                    let e = JSON.parse(yield I.client.callServerFunction("GetUserInfo", 2));
                    x(e) && (this.vasType = 5, this.isVip = 1)
                } catch (e) {
                    E.warning(e)
                }
            })
        }

        loadUserInfo() {
            return o(this, void 0, void 0, function* () {
                this.isLogined = yield I.client.callServerFunction("IsLogined"), this.isLogined && (this.userId = yield I.client.callServerFunction("GetUserID")), yield this.updateIsVip()
            })
        }

        changeMainTab() {
            "avatar" === this.activeKey && this.trackEvent("user_info", "change_tab", {
                type: "head_image",
                tab: "all_head_image"
            })
        }

        changeTab() {
            let e = {skin: "skin", avatar: "head_image"}[this.activeKey], t = {
                featured: "recommend",
                speedcurve: " progress_bar",
                suspension: "float_ball",
                supervip: "super_skin"
            }[this.skinActiveKey];
            this.trackEvent("user_info", "change_tab", {type: e, tab: t})
        }

        trackEvent(e, t, i) {
            y.XLStatNS.trackEvent(e, t, "", 0, 0, 0, 0, Object.assign({
                is_login: Number(this.isLogined),
                is_vip: Number(this.isVip),
                vip_type: this.vasType
            }, i))
        }

        restoreSkin() {
            return o(this, void 0, void 0, function* () {
                x(this.lastSkinInfo) && (yield this.setSkinInfo(this.lastSkinInfo, void 0, void 0, this.lastIsTemp), this.lastSkinInfo = null, this.lastIsTemp = !1)
            })
        }

        restoreSpeedCurveSkin() {
            return o(this, void 0, void 0, function* () {
                this.canUseSpeedCurveSkin(this.speedCurveSkinInfo) || (yield this.setSpeedCurveSkinInfo(this.lastSpeedCurveSkinInfo))
            })
        }

        restoreSuspensionSkin() {
            return o(this, void 0, void 0, function* () {
                this.canUseSuspensionSkin(this.suspensionSkinInfo) || (yield this.setSuspensionSkinInfo(this.lastSuspensionSkinInfo))
            })
        }

        closeWindow() {
            return o(this, void 0, void 0, function* () {
                yield this.restoreSkin(), yield this.restoreSpeedCurveSkin(), yield this.restoreSuspensionSkin(), yield this.restoreShakeInfo(), r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, b.MessageBoxNS.Action.Close), y.XLStatNS.trackEvent("user_info", "personalized_center_close"), window.close()
            })
        }

        setSkinInfo(e, t, i = null, n = !1) {
            return o(this, void 0, void 0, function* () {
                this.wallpaper = i;
                try {
                    yield I.client.callServerFunction("SetSkinInfo", e, !0, n)
                } catch (e) {
                    E.warning(e)
                }
            })
        }

        setShakeInfo(e, t = !1, i) {
            return o(this, void 0, void 0, function* () {
                t || (this.shakeInfo = e), this.tempShakeWallpaper = i;
                try {
                    yield I.client.callServerFunction("SetShakeInfo", e, t)
                } catch (e) {
                    E.warning(e)
                }
            })
        }

        restoreShakeInfo() {
            return o(this, void 0, void 0, function* () {
                try {
                    yield I.client.callServerFunction("SetShakeInfo", this.shakeInfo, !1)
                } catch (e) {
                    E.warning(e)
                }
            })
        }

        setSpeedCurveSkinInfo(e, t = !1) {
            return o(this, void 0, void 0, function* () {
                this.speedCurveSkinInfo = e, this.canUseSpeedCurveSkin(e) && (this.lastSpeedCurveSkinInfo = e);
                try {
                    yield I.client.callServerFunction("SetSpeedCurveSkinInfo", e, !0, t)
                } catch (e) {
                    E.warning(e)
                }
            })
        }

        setSuspensionSkinInfo(e, t = !1) {
            return o(this, void 0, void 0, function* () {
                this.suspensionSkinInfo = e, this.canUseSuspensionSkin(e) && (this.lastSuspensionSkinInfo = e);
                try {
                    yield I.client.callServerFunction("SetSuspensionSkinInfo", e, !0, t)
                } catch (e) {
                    E.warning(e)
                }
            })
        }

        setLastSkinInfo(e) {
            switch (this.skinActiveKey) {
                case"speedcurve":
                    this.setSpeedCurveSkinInfo(e).catch();
                    break;
                case"suspension":
                    this.setSuspensionSkinInfo(e).catch();
                    break;
                case"supervip":
                    this.restoreSkin().catch()
            }
        }

        handleClose() {
            r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, b.MessageBoxNS.Action.Close), y.XLStatNS.trackEvent("user_info", "personalized_center_close"), window.close()
        }

        onCoverShow(e, t) {
            this.tryCoverShow = e, this.coverFrom = t || ""
        }

        updateLastSkinInfo() {
            this.lastSkinInfo = this.skinInfo, this.lastIsTemp = this.isTemp
        }

        created() {
            return o(this, void 0, void 0, function* () {
                r.ipcRenderer.on("message-box-resolve-systemmenu", () => {
                    this.restoreSkin(), this.restoreSpeedCurveSkin(), this.restoreSuspensionSkin(), this.restoreShakeInfo()
                }), I.client.callServerFunction("GetSkinInfoDetail").then(e => {
                    let t = e;
                    t && (this.skinInfo = t.skinInfo, this.isTemp = t.temp)
                }), I.client.callServerFunction("GetSpeedCurveSkinInfo").then(e => {
                    e.is_vip_try || (this.speedCurveSkinInfo = e), this.lastSpeedCurveSkinInfo = this.speedCurveSkinInfo
                }, e => {
                    E.warning(e)
                }), I.client.callServerFunction("GetSuspensionSkinInfo").then(e => {
                    this.suspensionSkinInfo = e, this.lastSuspensionSkinInfo = this.suspensionSkinInfo
                }, e => {
                    E.warning(e)
                }), this.loadUserInfo().then(() => {
                    let e = "", t = "";
                    x(this.options) && (e = this.options.activeKey || "", t = this.options.skinActiveKey || "");
                    let i = {skin: "skin", avatar: "head_image"}[e], n = {
                        featured: "recommend",
                        speedcurve: " progress_bar",
                        suspension: "float_ball",
                        supervip: "super_skin"
                    }[t];
                    "avatar" === e && (n = void 0);
                    let o = void 0;
                    x(this.options) && x(this.options.from) && (o = this.options.from), this.trackEvent("user_info", "personalized_center_show", {
                        type: i,
                        tab: n,
                        from: o
                    }), I.client.callServerFunction("GetShakeInfo", this.userId).then(e => {
                        this.shakeInfo = e
                    }, e => {
                        E.warning(e)
                    })
                }, e => {
                    E.warning(e)
                }), I.client.attachServerEvent("OnChangeSkin", (e, t, i, n) => {
                    this.skinInfo = t, this.isTemp = n
                }), I.client.attachServerEvent("OnChangeSpeedCurveSkin", (e, t, i, n) => {
                    i || n || (this.speedCurveSkinInfo = t)
                }), I.client.attachServerEvent("OnChangeSuspensionSkin", (e, t, i, n) => {
                    i || n || (this.suspensionSkinInfo = t)
                }), C.NativeCallModule.nativeCall.AttachNativeEvent("OnUserLogin", e => {
                    this.isLogined = !0, this.userId = e, this.updateIsVip()
                }), C.NativeCallModule.nativeCall.AttachNativeEvent("OnUserLogout", () => {
                    this.isLogined = !1, this.userId = "", this.isVip = !1, this.vasType = 0
                }), C.NativeCallModule.nativeCall.AttachNativeEvent("OnLoginWndClose", e => {
                    "suc" !== e && (r.ipcRenderer.send("update-skin-reserved", !1), this.restoreSkin(), this.restoreSpeedCurveSkin(), this.restoreSuspensionSkin(), this.restoreShakeInfo())
                })
            })
        }

        mounted() {
            x(this.options) && (x(this.options.activeKey) && (this.activeKey = this.options.activeKey), x(this.options.skinActiveKey) && (this.skinActiveKey = this.options.skinActiveKey))
        }
    };
    n([a.Prop()], k.prototype, "options", void 0), n([a.Prop()], k.prototype, "boxId", void 0), k = n([a.Component({
        components: {
            PaneSkinFeatured: u.default,
            PaneSkinSuperCool: d.default,
            PaneSkinSpeedcurve: h.default,
            PaneSkinSuspension: p.default,
            PaneAvatar: f.default,
            PanelTryCover: c.default
        }
    })], k), t.default = k
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(367), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(1), a = i(15), l = i(4), c = i(158), u = i(525), d = s.default.getLogger("skin-try-cover");
    let h = class extends r.Vue {
        constructor() {
            super(...arguments), this.normalIcon = i(646), this.vipIcon = i(787), this.guideSrc = "", this.aidfrom = "", this.payconfid = "", this.openBtnClass = "xlx-skin-try__btn2"
        }

        get tryBtnText() {
            let e = "开通会员";
            {
                let t = "白金会员";
                switch (this.aidfrom = "", this.openBtnClass = "xlx-skin-try__btn2", this.currentTabKey) {
                    case"speedcurve":
                        this.aidfrom = "bj", this.skinInfo.type === u.SpeedCurveSkinHelperNS.SkinType.SuperVip && (t = "超级会员", this.aidfrom = "ch", this.payconfid = "45616dd701", this.openBtnClass = "xlx-skin-try__btn"), this.skinInfo.previewSavePath && (this.guideSrc = `file:///${this.skinInfo.previewSavePath}`);
                        break;
                    case"suspension":
                        this.aidfrom = "floatball_vip", this.skinInfo.type === c.SuspensionSkinHelperNS.SkinType.Vip ? this.guideSrc = this.vipIcon : this.guideSrc = this.normalIcon;
                        break;
                    case"supervip":
                        this.aidfrom = "super_skin", "supercool_shake" === this.from ? (this.guideSrc = this.tempShake && (this.tempShake.payPreview || this.tempShake.preview) || "", this.tempShake && this.tempShake.is_svip && (t = "超级会员", this.openBtnClass = "xlx-skin-try__btn", this.payconfid = "45616dd701")) : (this.guideSrc = this.wallpaper && (this.wallpaper.payPreview || this.wallpaper.preview) || "", this.wallpaper && this.wallpaper.is_svip && (t = "超级会员", this.openBtnClass = "xlx-skin-try__btn", this.payconfid = "45616dd701"))
                }
                let i = "开通";
                "超级会员" === t && this.isVip && (i = "升级"), e = `${i}${t}`
            }
            return e
        }

        get tryTitle() {
            return `正在试用，${this.tryBtnText}立即享用`
        }

        get statKtFrom() {
            let e = "";
            switch (this.currentTabKey) {
                case"speedcurve":
                    e = "progress_bar";
                    break;
                case"suspension":
                    e = "float_ball";
                    break;
                case"supervip":
                    e = "super_skin"
            }
            return e
        }

        closeCover() {
            this.$emit("cover-show", !1), "supercool_shake" === this.from ? this.$emit("restore-shake-info") : this.lastSkinInfo && this.$emit("set-skin-info", this.lastSkinInfo)
        }

        trackEvent(e, t, i) {
            a.XLStatNS.trackEvent(e, t, "", 0, 0, 0, 0, Object.assign({
                is_login: Number(this.isLogined),
                vip_type: this.vasType
            }, i))
        }

        onClickOpenVip() {
            return o(this, void 0, void 0, function* () {
                this.$emit("cover-show", !1), this.trackEvent("user_info", "open_vip_tip_click", {
                    type: "skin",
                    button: "open_vip",
                    kt_type: "45616dd701" === this.payconfid ? "ch" : "bj",
                    kt_from: this.statKtFrom
                });
                let e = `https://pay.xunlei.com/pay.html?referfrom=v_pc_xlx_ggong_skin_kt&aidfrom=${this.aidfrom}`;
                this.payconfid && (e = `${e}&payconfid=${this.payconfid}`);
                try {
                    yield l.client.callServerFunction("OpenNewTab", e), this.$emit("close-window")
                } catch (e) {
                    d.warning(e)
                }
            })
        }
    };
    n([r.Prop()], h.prototype, "currentTabKey", void 0), n([r.Prop()], h.prototype, "skinInfo", void 0), n([r.Prop()], h.prototype, "lastSkinInfo", void 0), n([r.Prop()], h.prototype, "wallpaper", void 0), n([r.Prop()], h.prototype, "tempShake", void 0), n([r.Prop()], h.prototype, "isLogined", void 0), n([r.Prop()], h.prototype, "isVip", void 0), n([r.Prop()], h.prototype, "vasType", void 0), n([r.Prop()], h.prototype, "from", void 0), h = n([r.Component], h), t.default = h
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(369), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(5), a = i(789), l = i(42), c = i(4), u = i(1), d = i(647), h = i(11), p = i(9), f = i(2),
        A = i(15), g = i(203), v = p.default(f.join(__rootDir, "../bin/ThunderHelper.node")),
        m = u.default.getLogger("Individuation"), {isDef: C} = h.ThunderUtil;
    let y = null, w = class extends s.Vue {
        constructor() {
            super(...arguments), this.colorList = a.SkinConfigNS.colorList, this.skinType = l.SkinHelperNS.SkinType, this.defaultPreview = JSON.stringify(`${__rootDir}/static/default-preview.jpg`), this.updateDialogVisible = !1, this.vipDialogVisible = !1, this.loginLayerVisible = !1, this.index = null, this.showSkinNew = !0, this.skinNew = [1], this.wallpapers = []
        }

        get colorItem() {
            return this.colorList.find(e => e.id === this.skinInfo.colorID)
        }

        sget() {
            return g(...arguments)
        }

        trackEvent(e, t, i) {
            A.XLStatNS.trackEvent(e, t, "", 0, 0, 0, 0, Object.assign({
                is_login: Number(this.isLogined),
                is_vip: Number(this.isVip)
            }, i))
        }

        changeWallpaper(e, t) {
            return o(this, void 0, void 0, function* () {
                if (e.is_vip && this.isLogined && !this.isVip && (this.vipDialogVisible = !0, this.$emit("update-last-skin-info"), this.trackEvent("user_info", "open_vip_tip_show", {type: "skin"})), !e.is_dynamic || C(this.options.dynamicSkinVersion) && h.ThunderUtil.versionCompare(this.options.version, this.options.dynamicSkinVersion) >= 0) {
                    let i = yield d.default.getImage(e), n = !!e.is_vip;
                    this.$emit("set-skin-info", {
                        type: l.SkinHelperNS.SkinType.Wallpaper,
                        colorID: e.color,
                        image: i,
                        opacity: e.transparency / 100,
                        skinID: e.id,
                        is_spring_festival: "春节皮肤" === e.name
                    }, t, e, n)
                } else this.vipDialogVisible || (this.updateDialogVisible = !0, this.trackEvent("user_info", "update_now"))
            })
        }

        updateApp() {
            v.startManualUpdateWithUI(), this.updateDialogVisible = !1, this.trackEvent("user_info", "click_update_now")
        }

        openVip() {
            return o(this, void 0, void 0, function* () {
                this.trackEvent("user_info", "open_vip_tip_click", {type: "skin", button: "open_vip"});
                try {
                    yield c.client.callServerFunction("OpenNewTab", "https://pay.xunlei.com/pay.html?bizNo=baijin"), this.$emit("close-window")
                } catch (e) {
                    m.warning(e)
                }
            })
        }

        showloginDlg(e) {
            return o(this, void 0, void 0, function* () {
                try {
                    yield c.client.callServerFunction("ShowLoginDlg", "personalized_center"), this.loginLayerVisible = !1, this.vipDialogVisible = !1, r.ipcRenderer.send("update-skin-reserved", !0)
                } catch (e) {
                    m.warning(e)
                }
                "loginLayer" === e ? A.XLStatNS.trackEvent("user_info", "change_comfirm_box_click", "", 0, 0, 0, 0, {
                    id: this.index,
                    button: "confirm"
                }) : "vipDialog" === e && this.trackEvent("user_info", "open_vip_tip_click", {
                    type: "skin",
                    button: "login"
                })
            })
        }

        isChosen(e, t) {
            return e === this.skinInfo.type && (e === l.SkinHelperNS.SkinType.Default ? this.skinInfo.type === l.SkinHelperNS.SkinType.Default : e === l.SkinHelperNS.SkinType.Color ? this.skinInfo.colorID === t.id : e === l.SkinHelperNS.SkinType.Wallpaper && this.skinInfo.skinID === t.id)
        }

        setSkinInfo(e, t, i) {
            let n = e === l.SkinHelperNS.SkinType.Default ? 1 : 0;
            do {
                if (this.isChosen(e, t)) {
                    n = 1;
                    break
                }
                if (e === l.SkinHelperNS.SkinType.Default || this.isLogined || (e === l.SkinHelperNS.SkinType.Wallpaper && t.is_vip ? (this.vipDialogVisible = !0, this.trackEvent("user_info", "open_vip_tip_show", {type: "skin"})) : (this.loginLayerVisible = !0, A.XLStatNS.trackEvent("user_info", "change_comfirm_box_show")), this.$emit("update-last-skin-info")), this.index = i, e === l.SkinHelperNS.SkinType.Default ? this.$emit("set-skin-info", {
                    type: l.SkinHelperNS.SkinType.Default,
                    colorID: 0
                }, 10) : e === l.SkinHelperNS.SkinType.Color ? this.$emit("set-skin-info", {
                    type: l.SkinHelperNS.SkinType.Color,
                    colorID: t.id,
                    opacity: t.defaultOpacity
                }, i) : e === l.SkinHelperNS.SkinType.Wallpaper && this.changeWallpaper(t, i + 11), 1 !== n && (i = t.id, t.showNew)) {
                    t.showNew = !1;
                    let e = [];
                    c.client.callServerFunction("GetConfigValue", "Skin", "selectSkinId", []).then(i => o(this, void 0, void 0, function* () {
                        null !== i && void 0 !== i && ("number" == typeof i ? e.push(i) : e = i, -1 === e.indexOf(t.id) && e.push(t.id), yield c.client.callServerFunction("SetConfigValue", "Skin", "selectSkinId", e), yield c.client.callServerFunction("SaveConfig"))
                    }))
                }
            } while (0);
            this.trackEvent("user_info", "click_member_exclusive", {
                type: "skin",
                is_member_exclusive: e === l.SkinHelperNS.SkinType.Wallpaper ? Number(t.is_vip) : 0,
                id: i,
                tag: n
            })
        }

        closeLoginLayer() {
            this.loginLayerVisible = !1, this.$emit("restore-skin"), A.XLStatNS.trackEvent("user_info", "change_comfirm_box_click", "", 0, 0, 0, 0, {
                id: this.index,
                button: "close"
            })
        }

        loadWallpapers(e) {
            return o(this, void 0, void 0, function* () {
                try {
                    y = [];
                    let t = JSON.parse(localStorage.getItem("wallpapers"));
                    null !== t && (y = t.sort((e, t) => e.manual_order - t.manual_order));
                    let i = ((yield d.default.getWallpapers()) || []).sort((e, t) => e.manual_order - t.manual_order);
                    i.length > 0 && (y = i);
                    let n = new Date;
                    for (let t of y) n.getTime() - t.updated_at < 6048e5 ? -1 === e.indexOf(t.id) && (t.showNew = !0) : t.showNew = !1;
                    m.information("获取壁纸", y), this.wallpapers = y
                } catch (e) {
                    m.warning(e)
                }
            })
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                if (y) this.wallpapers = y; else {
                    let e = [], t = yield c.client.callServerFunction("GetConfigValue", "Skin", "selectSkinId", []);
                    "number" == typeof t ? e.push(t) : e = t, this.loadWallpapers(e).catch()
                }
            })
        }
    };
    n([s.Prop()], w.prototype, "options", void 0), n([s.Prop()], w.prototype, "skinInfo", void 0), n([s.Prop()], w.prototype, "wallpaper", void 0), n([s.Prop()], w.prototype, "isLogined", void 0), n([s.Prop()], w.prototype, "isVip", void 0), w = n([s.Component], w), t.default = w
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(371), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(42), a = i(1), l = i(647), c = i(15), u = i(4), d = i(203),
        h = a.default.getLogger("super-cool");
    let p = null, f = null, A = class extends r.Vue {
        constructor() {
            super(...arguments), this.skinType = s.SkinHelperNS.SkinType, this.index = null, this.wallpapers = [], this.shakes = [], this.noEffectPreview = JSON.stringify(`${__rootDir}/static/default-preview.jpg`)
        }

        sget() {
            return d(...arguments)
        }

        get empty() {
            let e = !1;
            return this.wallpapers && 0 === this.wallpapers.length && (e = !0), e
        }

        onTaskInfoChange(e) {
            this.$emit("empty", e)
        }

        trackEvent(e, t, i) {
            c.XLStatNS.trackEvent(e, t, "", 0, 0, 0, 0, Object.assign({
                is_login: Number(this.isLogined),
                vip_type: this.vasType
            }, i))
        }

        changeWallpaper(e, t) {
            return o(this, void 0, void 0, function* () {
                if (this.isLogined && (e.is_svip && !this.isSuperVip || e.is_vip && !this.isVip)) {
                    this.$emit("cover-show", !0, "supercool_wallpaper"), this.$emit("update-last-skin-info");
                    let t = e.is_svip ? "ch" : "bj";
                    this.trackEvent("user_info", "open_vip_tip_show", {
                        type: "skin",
                        kt_from: "super_skin",
                        kt_type: t,
                        is_vip: Number(this.isVip)
                    })
                }
                let i = yield l.default.getImage(e), n = e.is_svip && !this.isSuperVip || e.is_vip && !this.isVip;
                this.$emit("set-skin-info", {
                    type: s.SkinHelperNS.SkinType.Cool,
                    colorID: e.color,
                    image: i,
                    opacity: e.transparency / 100,
                    skinID: e.id,
                    is_spring_festival: "春节皮肤" === e.name
                }, t, e, n, !0)
            })
        }

        isChosen(e, t) {
            return e === s.SkinHelperNS.SkinType.Cool && this.skinInfo.skinID === t.id
        }

        isShakeChose(e, t) {
            let i = !1;
            do {
                if (e !== s.SkinHelperNS.SkinType.Cool) break;
                if (t) {
                    i = !!this.shakeInfo && this.shakeInfo.skinID === t.id;
                    break
                }
                i = !this.shakeInfo;
                break
            } while (0);
            return i
        }

        setSkinInfo(e, t, i) {
            this.trackEvent("user_info", "change_super_skin", {type: "skin", skin_type: "mobile_skin", id: i + 1});
            let n = e === s.SkinHelperNS.SkinType.Default ? 1 : 0;
            do {
                if (this.isChosen(e, t)) {
                    n = 1;
                    break
                }
                if (!this.isLogined) {
                    if (e === s.SkinHelperNS.SkinType.Cool && (t.is_vip || t.is_svip)) {
                        this.$emit("cover-show", !0, "supercool_wallpaper");
                        let e = t.is_svip ? "ch" : "bj";
                        this.trackEvent("user_info", "open_vip_tip_show", {
                            type: "skin",
                            kt_from: "super_skin",
                            kt_type: e,
                            is_vip: Number(this.isVip)
                        })
                    }
                    this.$emit("update-last-skin-info")
                }
                if (this.index = i, e === s.SkinHelperNS.SkinType.Cool && this.changeWallpaper(t, i), 1 !== n && (i = t.id, t.showNew)) {
                    t.showNew = !1;
                    let e = [];
                    u.client.callServerFunction("GetConfigValue", "Skin", "selectSkinId", []).then(i => o(this, void 0, void 0, function* () {
                        null !== i && void 0 !== i && ("number" == typeof i ? e.push(i) : e = i, -1 === e.indexOf(t.id) && e.push(t.id), yield u.client.callServerFunction("SetConfigValue", "Skin", "selectSkinId", e), yield u.client.callServerFunction("SaveConfig"))
                    }))
                }
            } while (0)
        }

        setShakeInfo(e, t, i) {
            return o(this, void 0, void 0, function* () {
                do {
                    if (this.trackEvent("user_info", "change_super_skin", {
                        type: "skin",
                        skin_type: "shake_effect",
                        id: (this.wallpapers ? this.wallpapers.length : 0) + i + 1
                    }), this.isShakeChose(e, t)) break;
                    if (this.isLogined) {
                        if (t && (t.is_svip && !this.isSuperVip || t.is_vip && !this.isVip)) {
                            this.$emit("cover-show", !0, "supercool_shake");
                            let e = t.is_svip ? "ch" : "bj";
                            this.trackEvent("user_info", "open_vip_tip_show", {
                                type: "skin",
                                kt_from: "super_skin",
                                kt_type: e,
                                is_vip: Number(this.isVip)
                            })
                        }
                    } else if (t && e === s.SkinHelperNS.SkinType.Cool && (t.is_vip || t.is_svip)) {
                        this.$emit("cover-show", !0, "supercool_shake");
                        let e = t.is_svip ? "ch" : "bj";
                        this.trackEvent("user_info", "open_vip_tip_show", {
                            type: "skin",
                            kt_from: "super_skin",
                            kt_type: e,
                            is_vip: Number(this.isVip)
                        })
                    }
                    if (t) {
                        let e = yield l.default.getShakeRes(t),
                            i = t.is_svip && !this.isSuperVip || t.is_vip && !this.isVip;
                        if (this.$emit("set-shake-info", {
                            image: e,
                            skinID: t.id,
                            count: t.count,
                            rotate: t.rotate,
                            time: t.time
                        }, i, t), t.showNew) {
                            t.showNew = !1;
                            let e = [];
                            u.client.callServerFunction("GetConfigValue", "Skin", "selectSkinId", []).then(i => o(this, void 0, void 0, function* () {
                                null !== i && void 0 !== i && ("number" == typeof i ? e.push(i) : e = i, -1 === e.indexOf(t.id) && e.push(t.id), yield u.client.callServerFunction("SetConfigValue", "Skin", "selectSkinId", e), yield u.client.callServerFunction("SaveConfig"))
                            }))
                        }
                    } else this.$emit("set-shake-info", void 0, !1)
                } while (0)
            })
        }

        loadWallpapers(e) {
            return o(this, void 0, void 0, function* () {
                try {
                    p = [];
                    let t = JSON.parse(localStorage.getItem("coolWallpapers"));
                    null !== t && (p = t.sort((e, t) => e.manual_order - t.manual_order));
                    let i = ((yield l.default.getCoolWallpapers()) || []).sort((e, t) => e.manual_order - t.manual_order);
                    i.length > 0 && (p = i);
                    let n = new Date;
                    for (let t of p) n.getTime() - t.updated_at < 6048e5 ? -1 === e.indexOf(t.id) && (t.showNew = !0) : t.showNew = !1;
                    h.information("获取壁纸", p)
                } catch (e) {
                    h.warning(e)
                }
            })
        }

        loadShakes(e) {
            return o(this, void 0, void 0, function* () {
                try {
                    f = [];
                    let t = JSON.parse(localStorage.getItem("coolShakes"));
                    null !== t && (f = t.sort((e, t) => e.manual_order - t.manual_order));
                    let i = ((yield l.default.getCoolShakes()) || []).sort((e, t) => e.manual_order - t.manual_order);
                    i.length > 0 && (f = i);
                    let n = new Date;
                    for (let t of f) n.getTime() - t.updated_at < 6048e5 ? -1 === (e || []).indexOf(t.id) && (t.showNew = !0) : t.showNew = !1;
                    h.information("获取移动特效", f)
                } catch (e) {
                    h.warning(e)
                }
            })
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                let e = [];
                if (p) this.wallpapers = p; else {
                    let t = yield u.client.callServerFunction("GetConfigValue", "Skin", "selectSkinId", []);
                    "number" == typeof t ? e.push(t) : e = t, this.loadWallpapers(e).then(() => {
                        this.wallpapers = p
                    }).catch()
                }
                f ? this.shakes = f : this.loadShakes(e).then(() => {
                    this.shakes = f
                }).catch()
            })
        }
    };
    n([r.Prop()], A.prototype, "skinInfo", void 0), n([r.Prop()], A.prototype, "shakeInfo", void 0), n([r.Prop()], A.prototype, "wallpaper", void 0), n([r.Prop()], A.prototype, "isLogined", void 0), n([r.Prop()], A.prototype, "isVip", void 0), n([r.Prop()], A.prototype, "isSuperVip", void 0), n([r.Prop()], A.prototype, "vasType", void 0), n([r.Watch("empty", {immediate: !0})], A.prototype, "onTaskInfoChange", null), A = n([r.Component], A), t.default = A
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(373), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(525), a = i(793), l = i(11), c = i(1), u = i(15), d = i(648), h = i(17),
        p = c.default.getLogger("Individuation"), {isDef: f} = l.ThunderUtil,
        A = `${s.SpeedCurveSkinHelperNS.cacheDir}/Preview`;
    let g = class extends r.Vue {
        constructor() {
            super(...arguments), this.skinType = s.SpeedCurveSkinHelperNS.SkinType, this.defaultPreview = JSON.stringify(`${__rootDir}/static/default-speedcurve-preview.png`), this.defaultSkinInfo = s.SpeedCurveSkinHelperNS.defaultSkinInfo, this.skins = [], this.ktType = ""
        }

        canUse(e) {
            let t = !0;
            return e.type === s.SpeedCurveSkinHelperNS.SkinType.SuperVip ? t = this.isSuperVip : e.type === s.SpeedCurveSkinHelperNS.SkinType.Vip && (t = this.isVip), t
        }

        trackEvent(e, t, i) {
            u.XLStatNS.trackEvent(e, t, "", 0, 0, 0, 0, Object.assign({
                is_login: Number(this.isLogined),
                vip_type: this.vasType
            }, i))
        }

        trackOpenVipShow(e) {
            this.trackEvent("user_info", "open_vip_tip_show", {
                type: "skin",
                kt_type: this.ktType,
                kt_from: "progress_bar"
            })
        }

        trackChangeSkin(e) {
            let t = "free";
            e.type === this.skinType.SuperVip ? t = "ch" : e.type === this.skinType.Vip && (t = "bj"), this.trackEvent("user_info", "change_progress_bar", {
                type: "skin",
                button: "login",
                skin_type: t,
                id: e.id
            })
        }

        changeSkin(e) {
            return o(this, void 0, void 0, function* () {
                this.trackChangeSkin(e), this.ktType = e.type === this.skinType.SuperVip ? "ch" : "bj";
                let t = !!(f(e.type) && e.type >= this.skinType.Vip);
                this.$emit("set-skin-info", e, t), this.canUse(e) || (this.$emit("cover-show", !0, "speedcurve"), this.trackOpenVipShow(e))
            })
        }

        created() {
            return o(this, void 0, void 0, function* () {
                try {
                    let e = (yield a.default.getSkins()) || [];
                    for (let t of e) {
                        let e = `${A}/${t.id}.png`, i = yield h.FileSystemAWNS.existsAW(e);
                        i || (i = yield d.AxiosNS.downloadFileAW(t.preview, e)), i && (t.previewSavePath = e, this.skins.push(t))
                    }
                    p.information("获取速度曲线皮肤", this.skins)
                } catch (e) {
                    p.warning(e)
                }
            })
        }
    };
    n([r.Prop()], g.prototype, "skinInfo", void 0), n([r.Prop()], g.prototype, "isLogined", void 0), n([r.Prop()], g.prototype, "isVip", void 0), n([r.Prop()], g.prototype, "isPlatinumVip", void 0), n([r.Prop()], g.prototype, "isSuperVip", void 0), n([r.Prop()], g.prototype, "vasType", void 0), g = n([r.Component], g), t.default = g
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(375), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(158), a = i(11), l = i(15), {isDef: c} = a.ThunderUtil;
    let u = class extends r.Vue {
        constructor() {
            super(...arguments), this.normalIcon = i(646), this.vipIcon = i(795), this.skinType = s.SuspensionSkinHelperNS.SkinType, this.defaultSkinInfo = s.SuspensionSkinHelperNS.defaultSkinInfo, this.vipSkinInfo = s.SuspensionSkinHelperNS.vipSkinInfo
        }

        canUse(e) {
            let t = !0;
            return e.type === s.SuspensionSkinHelperNS.SkinType.Vip && (t = this.isVip), t
        }

        trackEvent(e, t, i) {
            l.XLStatNS.trackEvent(e, t, "", 0, 0, 0, 0, Object.assign({
                is_login: Number(this.isLogined),
                vip_type: this.vasType
            }, i))
        }

        trackOpenVipShow(e) {
            this.trackEvent("user_info", "open_vip_tip_show", {type: "skin", kt_type: "bj", kt_from: "float_ball"})
        }

        trackChangeSkin(e) {
            let t = "free";
            e.type === this.skinType.Vip && (t = "vip"), this.trackEvent("xlx_vip_event", "change_floatball_skin", {
                skin_type: t,
                id: e.id
            })
        }

        changeSkin(e) {
            return o(this, void 0, void 0, function* () {
                this.trackChangeSkin(e);
                let t = !!(c(e.type) && e.type >= this.skinType.Vip);
                this.$emit("set-skin-info", e, t), this.canUse(e) || (this.$emit("cover-show", !0, "suspension"), this.trackOpenVipShow(e))
            })
        }
    };
    n([r.Prop()], u.prototype, "skinInfo", void 0), n([r.Prop()], u.prototype, "isLogined", void 0), n([r.Prop()], u.prototype, "isVip", void 0), n([r.Prop()], u.prototype, "vasType", void 0), u = n([r.Component], u), t.default = u
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(377), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(5), s = i(3), a = i(7), l = i(18), c = i(1).default.getLogger("pane-avatar");
    let u = class extends r.Vue {
        constructor() {
            super(...arguments), this.isError = !1
        }

        refresh() {
            this.isError = !1, s.ipcRenderer.send(l.ThunderChannelList.channelRMIndividuationBrowserMsg, "refresh")
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                this.showBrowser().catch(), (yield a.asyncRemoteCall.getIpcMain()).on(l.ThunderChannelList.channelMRIndividuationBrowserMsg, (e, t) => {
                    c.information(".ipcMain.on:", l.ThunderChannelList.channelMRIndividuationBrowserMsg, t), "OnLoadError" === t && (this.isError = !0)
                })
            })
        }

        showBrowser() {
            return o(this, void 0, void 0, function* () {
                let e = yield a.asyncRemoteCall.getCurrentWindow(),
                    t = (yield e.getNativeWindowHandle()).readUIntLE(0, 4);
                s.ipcRenderer.send(l.ThunderChannelList.channelRMIndividuationBrowserMsg, "show", t, e.id, "https://act-vip-ssl.xunlei.com/avatar/", 600, 440, 30, 30, 66, 0), e.on("resize", () => {
                    s.ipcRenderer.send(l.ThunderChannelList.channelRMIndividuationBrowserMsg, "resize", 600, 440, 30, 30, 66, 0)
                }), e.on("move", () => {
                    s.ipcRenderer.send(l.ThunderChannelList.channelRMIndividuationBrowserMsg, "move", 600, 440, 30, 30, 66, 0)
                })
            })
        }

        destroyed() {
            s.ipcRenderer.send(l.ThunderChannelList.channelRMIndividuationBrowserMsg, "hide")
        }
    };
    u = n([r.Component], u), t.default = u
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(379), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(29), a = i(5), l = i(30), c = i(28), u = i(645);
    let d = class extends (s.mixins(l.DraggableMixin, l.PositionMixin)) {
        constructor() {
            super(...arguments), this.type = "HTTP", this.proxyName = "", this.host = "", this.port = 80, this.userName = "", this.passWord = "", this.butText = "测试", this.timeId = void 0
        }

        handleClickHttp() {
            this.port = 80
        }

        handleClickSock() {
            this.port = 1080
        }

        handleClose(e) {
            window.close()
        }

        handleOK(e) {
            !this.proxyName || this.proxyName.length < 1 || !this.host || this.host.length < 1 || (r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, c.MessageBoxNS.Action.OK, {
                name: this.proxyName,
                host: this.host,
                port: this.port,
                type: this.type,
                userName: this.userName,
                passWord: this.passWord
            }), window.close())
        }

        handleTest() {
            return o(this, void 0, void 0, function* () {
                this.butText = "测试中…", this.timeId = setTimeout(() => {
                    this.timeId = void 0, this.butText = "测试超时"
                }, 1e4);
                let e = u.ProxyNS.ProxyType.Http;
                "SOCKS5" === this.type && (e = u.ProxyNS.ProxyType.Sock5);
                let t = yield u.ProxyNS.verifyProxy(this.host, this.port, this.userName, this.passWord, e);
                this.timeId && (clearTimeout(this.timeId), t === u.ProxyNS.ProxyVerifyResult.Sucess ? this.butText = "测试成功" : t === u.ProxyNS.ProxyVerifyResult.Timeout ? this.butText = "测试超时" : this.butText = "测试失败")
            })
        }

        handleInput(e) {
            this.port = e.target.value.replace(/[^\d]/g, "")
        }

        mounted() {
            this.proxy = this.options, this.proxy && this.proxy.name && this.proxy.name.length > 0 && (this.proxyName = this.proxy.name, this.host = this.proxy.host, this.port = this.proxy.port, this.type = this.proxy.type, this.userName = this.proxy.userName, this.passWord = this.proxy.passWord)
        }
    };
    n([a.Prop()], d.prototype, "options", void 0), n([a.Prop()], d.prototype, "boxId", void 0), d = n([a.Component], d), t.default = d
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(381), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(29), r = i(5), s = i(30), a = i(196), l = i(3), c = i(28), u = i(81), d = i(1), h = i(4);
    i(1067);
    const p = d.default.getLogger("ThunderBirdKey");
    let f = class extends (o.mixins(s.DraggableMixin, s.PositionMixin)) {
        constructor() {
            super(...arguments), this.userheadURL = "", this.userName = "", this.inputPassword = "", this.isPasswordError = !1, this.userCenterWeb = "", this.avatarLinkProtocol = "http"
        }

        onCheckPwdAndParse() {
            p.information("校验密码,inputPassword=", this.inputPassword, " 设定密码password=", this.options.taskUrlItem.password), this.inputPassword === this.options.taskUrlItem.password ? (this.isPasswordError = !1, l.ipcRenderer.send(`message-box-resolve-${this.boxId}`, c.MessageBoxNS.Action.OK, {success: !0}), window.close()) : this.isPasswordError = !0
        }

        getUserAvatar(e) {
            let t = e || 0;
            return `${this.avatarLinkProtocol}://img.user.kanimg.com/usrimg/${t}/300x300`
        }

        handleKeyDown() {
            this.onCheckPwdAndParse()
        }

        hanldeInput(e) {
            if ("string" != typeof e) return;
            this.isPasswordError = !1;
            let t = new RegExp("^[0-9a-zA-Z]+$"), i = e.match(t), n = this.inputPassword;
            this.inputPassword = e, i && i.length > 0 ? this.inputPassword = e : this.inputPassword = n, "" === e && (this.inputPassword = e)
        }

        onClickClose() {
            l.ipcRenderer.send(`message-box-resolve-${this.boxId}`, c.MessageBoxNS.Action.Cancel, {success: !1}), window.close()
        }

        onClickUserInfo() {
            "" !== this.userCenterWeb && h.client.callServerFunction("OpenNewTab", this.userCenterWeb).catch()
        }

        mounted() {
            let e = this.options.taskUrlItem.userid || 0;
            p.information("查询的用户ID=", this.options.taskUrlItem.userid), a.getUserNameByID(e.toString()).then(t => {
                p.information("获取用户：", e, " 的昵称回应:", t), t.data && t.data.user_info && (this.userName = t.data.user_info.nick_name)
            }), this.userheadURL = this.getUserAvatar(e), this.userCenterWeb = "http://pc.xunlei.com/d#/users/" + e + "?entrypage=birdkey_passwordcheck&entry=birdkey_passwordcheck_headimg", this.$nextTick(() => {
                u.ThunderWindowNS.resizeToFitContent(400, 260), u.ThunderWindowNS.fitWindowPosInParent()
            })
        }
    };
    n([r.Prop()], f.prototype, "options", void 0), n([r.Prop()], f.prototype, "boxId", void 0), f = n([r.Component({})], f), t.default = f
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(383), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(1), c = i(4), u = l.default.getLogger("shoulei-qrcode"), d = i(165),
        h = {margin: 0, width: 100};
    let p = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        handleCancel(e) {
            return o(this, void 0, void 0, function* () {
                yield c.client.callServerFunction("TrackEvent", "download_leftpanel", "send2phone_qr_close", "", 0, 0, 0, 0, ""), window.close()
            })
        }

        created() {
            return o(this, void 0, void 0, function* () {
                u.information("dwz data = ", this.options.data), this.$nextTick(() => {
                    let e = document.getElementById("qrcodecanvas");
                    d.toCanvas(e, this.options.data, h, e => {
                        u.information("dwz error = ", e)
                    })
                }), yield c.client.callServerFunction("TrackEvent", "download_leftpanel", "send2phone_qr_show", "", 0, 0, 0, 0, "type=1")
            })
        }
    };
    n([s.Prop()], p.prototype, "options", void 0), p = n([s.Component], p), t.default = p
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(385), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(41), c = i(4), u = i(11), d = i(81), h = i(15),
        p = i(1).default.getLogger("DownloadDataVue"), f = i(201);
    let A = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.downloadDataInfo = {
                totalDownloadSpeed: 0,
                totalUploadSpeed: 0,
                todayDownloadSize: 0,
                todayUploadSize: 0,
                totalDownloadSize: 0,
                totalUploadSize: 0,
                totalProviders: 0,
                totalBenifites: 0,
                maxDownloadSpeed: 0,
                maxUploadSpeed: 0,
                downloadFinishFiles: 0,
                vipAccPercent: 0,
                vipDonwloadSize: 0,
                vipSave: 0
            }, this.imgUrl = f, this.isVip = 0, this.userNick = "", this.userID = "", this.vipData = null, this.isYear = 0, this.yearIcon = "vip-icon-nian is-disabled"
        }

        onIsVipChange(e) {
            e && this.$nextTick(() => {
                d.ThunderWindowNS.resizeToFitContent(450, 523)
            })
        }

        getCurUserHeader() {
            this.imgUrl = f, p.information("getCurUserHeader:", this.userID), l.NativeCallModule.nativeCall.CallNativeFunction("GetUserHeaderByUserID", this.userID, (e, t) => {
                null !== t && void 0 !== t && "" !== t && (this.imgUrl = `${t}?_=${Date.now()}`)
            })
        }

        updateUserData() {
            l.NativeCallModule.nativeCall.CallNativeFunction("GetAllUserInfo", (e, t) => {
                p.information(e, t);
                do {
                    if (null === t || void 0 === t) break;
                    if (this.userID = t.userID, this.userNick = u.ThunderUtil.unescapeHTML(t.nickName), this.getCurUserHeader(), null === t.vipList || void 0 === t.vipList) break;
                    if (null === t.vipList[0] || void 0 === t.vipList[0]) break;
                    let e = t.vipList[0];
					e.isYear = 1;
					if (e.isVip == 0) {
						e.vipLevel = 10;
						e.isVip = 1;						
						e.vasType = 5;
					}					
                    this.vipData = [{
                        VIPLevel: e.vipLevel,
                        isVIP: e.isVip,
                        isYear: e.isYear,
                        uid: t.userID,
                        vasID: 2,
                        vasType: e.vasType
                    }], this.isYear = Number(e.isYear), this.isVip = Number(e.isVip)
                } while (0)
            })
        }

        get vipClass() {
            let e = this.vipInfo(this.vipData), t = e.vipClass;
			e.isVip = 1;
            return (e.isStop || "0" === e.level || e.disabled || !e.isVip) && (t += " is-disabled"), t
        }

        get userYearIcon() {
            return 0 !== this.isYear && 0 !== this.isVip ? this.yearIcon = "vip-icon-nian" : this.yearIcon = "vip-icon-nian is-disabled", this.yearIcon
        }

        get downloadSpeed() {
            let e = "";
            return e = u.ThunderUtil.formatSize(this.downloadDataInfo.totalDownloadSpeed, 1) + "/s"
        }

        get uploadSpeed() {
            let e = "";
            return e = u.ThunderUtil.formatSize(this.downloadDataInfo.totalUploadSpeed, 1) + "/s"
        }

        get todayDownloadSize() {
            let e = "";
            return e = u.ThunderUtil.formatSize(this.downloadDataInfo.todayDownloadSize)
        }

        get todayUploadSize() {
            let e = "";
            return e = u.ThunderUtil.formatSize(this.downloadDataInfo.todayUploadSize)
        }

        get totalDownloadSize() {
            let e = "";
            return e = u.ThunderUtil.formatSize(this.downloadDataInfo.totalDownloadSize)
        }

        get totalUploadSize() {
            let e = "";
            return e = u.ThunderUtil.formatSize(this.downloadDataInfo.totalUploadSize)
        }

        get maxDownloadSpeed() {
            let e = "";
            return e = u.ThunderUtil.formatSize(this.downloadDataInfo.maxDownloadSpeed, 1) + "/s"
        }

        get maxUploadSpeed() {
            let e = "";
            return e = u.ThunderUtil.formatSize(this.downloadDataInfo.maxUploadSpeed, 1) + "/s"
        }

        get downloadFinishFiles() {
            return this.bigNumber(this.downloadDataInfo.downloadFinishFiles)
        }

        get totalProviders() {
            return this.bigNumber(this.downloadDataInfo.totalProviders)
        }

        get totalBenifites() {
            return this.bigNumber(this.downloadDataInfo.totalBenifites)
        }

        get vipAccPercent() {
            let e = "-- %";
            return this.isVip && (e = 0 === this.downloadDataInfo.vipAccPercent ? "0.0%" : (100 * this.downloadDataInfo.vipAccPercent).toFixed(1) + "%"), e
        }

        get vipDonwloadSize() {
            let e = "-- GB";
            return this.isVip && (e = u.ThunderUtil.formatSize(this.downloadDataInfo.vipDonwloadSize)), e
        }

        get vipSave() {
            let e = "-- 天";
            return this.isVip && (e = this.formatTime(this.downloadDataInfo.vipSave)), e
        }

        bigNumber(e) {
            let t = "0";
            do {
                if (e < 1e4) {
                    t = e.toString();
                    break
                }
                if (e % 1e4 < 100) {
                    t = Math.floor(e / 1e4) + "万";
                    break
                }
                t = (e / 1e4).toFixed(2) + "万"
            } while (0);
            return t
        }

        formatTime(e) {
            let t = "", i = ["秒", "分", "小时", "天", "年"], n = [60, 60, 24, 365], o = 0, r = 0;
            for (; e >= n[o];) r = e % n[o], e = Math.floor(e / n[o]), o += 1;
            return t = o >= 1 ? e.toString() + i[o] + r.toString() + i[o - 1] : e.toFixed(2) + i[o]
        }

        vipInfo(e) {
            if (!e || 0 === e.length) return {isVip: !1};
            let t = e.filter(e => e && 2 === (e.vasId || e.vasID))[0];
            if (t) {
                let e = t.vIPLevel || t.VIPLevel || 0,
                    i = `vip-icon-${{2: "", 3: "p", 5: "s"}[t.vasType] || ""}vip${e}`;
                return {
                    isVip: "1" === t.isVIP,
                    isStop: "2" === t.isVIP,
                    isYear: "1" === t.isYear,
                    type: t.vasType,
                    level: e,
                    vipClass: i
                }
            }
            return {isVip: !1}
        }

        openClick() {
            h.XLStatNS.trackEvent("download_leftpanel", "bottom_speed_data_pop_click", "", 0, 0, 0, 0, "button=open_membership"), c.client.callServerFunction("OpenNewTab", "https://pay.xunlei.com/pay.html?bizNo=baijin&selectBizno=baijin&timeType=1001&referfrom=v_pc_xlx_ggong_task_detail").catch(), window.close()
        }

        handleCancel(e) {
            window.close()
        }

        created() {
            return o(this, void 0, void 0, function* () {
                h.XLStatNS.trackEvent("download_leftpanel", "bottom_speed_data_pop_show"), yield this.updateUserData(), l.NativeCallModule.nativeCall.AttachNativeEvent("onGetUserInfoFinished", () => {
                    this.updateUserData()
                }), l.NativeCallModule.nativeCall.CallNativeFunction("GetInitDownloadData", (e, t) => {
                    p.information("GetInitDownloadData Enter data = ", t);
                    let i = null;
                    try {
                        i = JSON.parse(t), this.downloadDataInfo = i
                    } catch (e) {
                        p.information("excetpion ", e)
                    }
                }), l.NativeCallModule.nativeCall.AttachNativeEvent("download-data-update", e => {
                    let t = null;
                    try {
                        t = JSON.parse(e), this.downloadDataInfo = t
                    } catch (e) {
                        p.information("excetpion ", e)
                    }
                })
            })
        }
    };
    n([s.Prop()], A.prototype, "options", void 0), n([s.Watch("isVip")], A.prototype, "onIsVipChange", null), A = n([s.Component], A), t.default = A
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(387), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(2), s = i(3), a = i(7), l = i(29), c = i(5), u = i(30), d = i(28), h = i(15), p = i(4), f = i(137),
        A = i(17), g = i(805), v = i(9).default(r.join(__rootDir, "../bin/ThunderHelper.node"));
    let m = class extends (l.mixins(u.DraggableMixin, u.PositionMixin)) {
        constructor() {
            super(...arguments), this.detectState = g.DownloadDetectToolsNS.DetectState.None, this.detail = !1, this.percent = 0, this.currentDetectingIndex = 0, this.detectAllDetail = [], this.localIPInfo = {
                teleCommunications: "",
                localIP: ""
            }, this.isShowCopyTips = !1, this.copyTipsText = "", this.statCookie = -1, this.osVersion = "", this.thunderXVersion = "", this.downloadSDKVersion = "", this.dnsInfos = "", this.detectingItems = g.DownloadDetectToolsNS.getAllDectectItems()
        }

        get sortDetectingItems() {
            let e = [];
            return this.detectingItems.forEach(t => {
                this.isItemDetectFailed(t) ? e.unshift(t) : e.push(t)
            }), e
        }

        get problemNum() {
            let e = 0;
            for (let t = 0; t < this.detectingItems.length; ++t) {
                let i = this.detectingItems[t];
                this.isItemDetectFailed(i) && ++e
            }
            return e
        }

        get currentDetectDesc() {
            return void 0 !== this.currentDetectingIndex ? "正在检测" + this.detectingItems[this.currentDetectingIndex].name : ""
        }

        getDetectItemMsg(e) {
            return e.state === g.DownloadDetectToolsNS.DetectState.None ? "正在扫描..." : e.state === g.DownloadDetectToolsNS.DetectState.Started ? "正在诊断" + e.name + "..." : e.state === g.DownloadDetectToolsNS.DetectState.Success ? (-1 !== e.name.indexOf("服务") ? "连接" : "查询") + e.name + "正常" : (-1 !== e.name.indexOf("服务") ? "连接" : "查询") + e.name + "失败"
        }

        get progressStyle() {
            return "width: " + this.percent + "%"
        }

        get showStart() {
            return this.detectState === g.DownloadDetectToolsNS.DetectState.None
        }

        get showDetecting() {
            return this.detectState !== g.DownloadDetectToolsNS.DetectState.None && !this.detail
        }

        get isDetecting() {
            return this.detectState === g.DownloadDetectToolsNS.DetectState.Started
        }

        get isDetectFinish() {
            return this.detectState === g.DownloadDetectToolsNS.DetectState.Success || this.detectState === g.DownloadDetectToolsNS.DetectState.Failed
        }

        get isDetectSuccess() {
            return this.detectState === g.DownloadDetectToolsNS.DetectState.Success
        }

        get localIPInfoTitle() {
            let e = "";
            do {
                if (!this.localIPInfo || this.localIPInfo.teleCommunications.length <= 0) break;
                if (e += this.localIPInfo.teleCommunications, this.localIPInfo.localIP.length <= 0) break;
                e += "（" + this.localIPInfo.localIP + "）"
            } while (0);
            return e
        }

        itemIconClass(e) {
            if (!this.isItemDetectFinish(e)) return "loading";
            if (this.isItemDetectSuccess(e)) return "success";
            const t = [g.DownloadDetectToolsNS.DetectItemType.UPNPState, g.DownloadDetectToolsNS.DetectItemType.IPv6Support, g.DownloadDetectToolsNS.DetectItemType.DHTState, g.DownloadDetectToolsNS.DetectItemType.PingServer];
            let i = "error";
            for (let n = 0; n < t.length; ++n) if (t[n] === e.type) {
                i = "warn";
                break
            }
            return i
        }

        expandItem(e) {
            e.expand = !e.expand
        }

        isItemDetectFinish(e) {
            return e.state === g.DownloadDetectToolsNS.DetectState.Success || e.state === g.DownloadDetectToolsNS.DetectState.Failed
        }

        isItemDetectSuccess(e) {
            return e.state === g.DownloadDetectToolsNS.DetectState.Success
        }

        isItemDetectFailed(e) {
            return e.state === g.DownloadDetectToolsNS.DetectState.Failed
        }

        handleClose() {
            s.ipcRenderer.send(`message-box-resolve-${this.boxId}`, d.MessageBoxNS.Action.Close), window.close()
        }

        handleShowDetail() {
            this.detail = !0;
            h.XLStatNS.trackEvent("xlx_download_diagnosis", "download_diagnosis_start_click", "", 0, 0, 0, 0, "button=view_detail", this.statCookie), this.$nextTick(() => o(this, void 0, void 0, function* () {
                this.resizeToFitContent()
            }))
        }

        handleContactCustomerService() {
            p.client.callServerFunction("OpenNewTab", "http://xlkf.xunlei.com/cxfz/chatClient/chatbox.jsp?companyID=8950&configID=77&enterurl=www.xunleixzs.com&policyId=65&live800_domain=www.xunleixzs.com&live800_robot_ud_xunleixzs=xunleixzs")
        }

        handleDetectAgain() {
            return o(this, void 0, void 0, function* () {
                return h.XLStatNS.trackEvent("xlx_download_diagnosis", "download_diagnosis_start_click", "", 0, 0, 0, 0, "button=diasgnosis_again", this.statCookie), g.DownloadDetectToolsNS.restart("restartButton")
            })
        }

        handleStartDetect(e) {
            return o(this, void 0, void 0, function* () {
                let t = "button=" + e;
                h.XLStatNS.trackEvent("xlx_download_diagnosis", "download_diagnosis_start_click", "", 0, 0, 0, 0, t, this.statCookie), this.$nextTick(() => o(this, void 0, void 0, function* () {
                    g.DownloadDetectToolsNS.start("startButton")
                }))
            })
        }

        handleDetailReturn() {
            this.detail = !1
        }

        handleDetailSave() {
            return o(this, void 0, void 0, function* () {
                let e = yield a.asyncRemoteCall.getCurrentWindow(), t = "诊断日志.txt";
                this.localIPInfo && this.localIPInfo.teleCommunications.length > 0 && (t = "诊断日志（" + this.localIPInfo.teleCommunications + "）.txt");
                let i = {defaultPath: t};
                (yield a.asyncRemoteCall.getDialog()).showSaveDialog(e, i).then(e => o(this, void 0, void 0, function* () {
                    let t = e.filePath;
                    if (t && "" !== t) {
                        let e = r.dirname(t);
                        if (yield A.FileSystemAWNS.mkdirsAW(e)) {
                            let e = [];
                            this.localIPInfo && this.localIPInfo.teleCommunications.length > 0 && e.push("所在地：" + this.localIPInfo.teleCommunications + "（" + this.localIPInfo.localIP + "）"), e.push("Windows版本：" + this.osVersion), e.push("迅雷X版本：" + this.thunderXVersion), e.push("迅雷下载引擎版本：" + this.downloadSDKVersion), e.push("当前使用的DNS信息：" + this.dnsInfos), this.detectAllDetail.forEach(t => {
                                e.push(t.date + " " + t.time + " " + t.desc)
                            }), A.FileSystemAWNS.writeFileAW(t, e.join("\r\n")).catch()
                        }
                    }
                })).catch()
            })
        }

        handleDetailCopy() {
            let e = [];
            this.localIPInfo && this.localIPInfo.teleCommunications.length > 0 && e.push("所在地：" + this.localIPInfo.teleCommunications + "（" + this.localIPInfo.localIP + "）"), e.push("Windows版本：" + this.osVersion), e.push("迅雷X版本：" + this.thunderXVersion), e.push("迅雷下载引擎版本：" + this.downloadSDKVersion), e.push("当前使用的DNS信息：" + this.dnsInfos), this.detectAllDetail.forEach(t => {
                e.push(t.date + " " + t.time + " " + t.desc)
            }), s.clipboard.writeText(e.join("\r\n")), this.copyTipsText = "复制成功", this.isShowCopyTips = !0
        }

        addDetectDetail(e) {
            let t = new Date, i = f.TimeHelperNS.formatDate(t, "yyyy-MM-dd"),
                n = f.TimeHelperNS.formatDate(t, "hh:mm:ss");
            this.detectAllDetail.push({date: i, time: n, desc: e})
        }

        onDetectStart() {
            this.detectAllDetail = [], this.detectState = g.DownloadDetectToolsNS.DetectState.Started, this.addDetectDetail("开始诊断"), this.$nextTick(() => o(this, void 0, void 0, function* () {
                this.resizeToFitContent()
            }))
        }

        onDetectStartItem(e, t) {
            this.currentDetectingIndex = t
        }

        onDetectStatusChange(e, t) {
            this.addDetectDetail(t)
        }

        onDetectFinishItem(e, t, i) {
            this.percent = Math.floor(100 * t / this.detectingItems.length)
        }

        onDetectFinish(e) {
            this.detectState = e;
            let t = g.DownloadDetectToolsNS.getDNSList();
            this.dnsInfos = t.join(","), this.$nextTick(() => o(this, void 0, void 0, function* () {
                this.resizeToFitContent()
            }))
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                document.addEventListener("click", () => {
                    this.isShowCopyTips = !1
                });
                const e = yield Promise.resolve().then(() => i(12));
                this.osVersion = e.release();
                let t = r.join(__rootDir, "../../Thunder.exe");
                this.thunderXVersion = v.getFileVersion(t);
                let n = r.join(__rootDir, "../bin/SDK/DownloadSDK.dll");
                this.downloadSDKVersion = v.getFileVersion(n), g.DownloadDetectToolsNS.attachListener(g.DownloadDetectToolsNS.DetectEvent.Start, this.onDetectStart), g.DownloadDetectToolsNS.attachListener(g.DownloadDetectToolsNS.DetectEvent.StartItem, this.onDetectStartItem), g.DownloadDetectToolsNS.attachListener(g.DownloadDetectToolsNS.DetectEvent.StatusChange, this.onDetectStatusChange), g.DownloadDetectToolsNS.attachListener(g.DownloadDetectToolsNS.DetectEvent.FinishItem, this.onDetectFinishItem), g.DownloadDetectToolsNS.attachListener(g.DownloadDetectToolsNS.DetectEvent.Finish, this.onDetectFinish), g.DownloadDetectToolsNS.getLocalIPInfo().then(e => {
                    e && (this.localIPInfo.teleCommunications = e.teleCommunications, this.localIPInfo.localIP = e.localIP, this.$nextTick(() => o(this, void 0, void 0, function* () {
                        this.resizeToFitContent()
                    })))
                }), this.statCookie = yield p.client.callServerFunction("GetDetectStatCookie")
            })
        }
    };
    n([c.Prop()], m.prototype, "boxId", void 0), m = n([c.Component], m), t.default = m
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(389), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(7), a = i(29), l = i(5), c = i(4), u = i(15), d = i(1), h = i(128), p = i(28), f = i(30),
        A = d.default.getLogger("task filter");
    var g;
    !function (e) {
        e[e.Name = 1] = "Name", e[e.Filter = 2] = "Filter"
    }(g || (g = {}));
    const v = {label: "", extFilter: "", nameFilter: "", extFilterInput: "", nameFilterInput: ""};
    let m = class extends (a.mixins(f.PositionMixin)) {
        constructor() {
            super(...arguments), this.isWarning = !1, this.warningTips1 = "", this.warningTips2 = "", this.disabled = !0, this.selectLabel = "自定义", this.changed = !1, this.messageContent = "修改成功!", this.editItem = Object.assign({}, v), this.items = []
        }

        get saveEnable() {
            let e = !1;
            do {
                if (!this.editItem.label.trim()) break;
                if (!this.editItem.nameFilterInput.trim() && !this.editItem.extFilterInput.trim()) break;
                e = this.changed
            } while (0);
            return e
        }

        handleCancel(e) {
            r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, p.MessageBoxNS.Action.Close), window.close()
        }

        removeFilter(e, t) {
            return o(this, void 0, void 0, function* () {
                let i = yield s.asyncRemoteCall.getCurrentWindow();
                h.MessageBox.pop({
                    title: "",
                    size: "small",
                    message: `确定删除“${e.label}”筛选项？`,
                    parentId: i.id
                }, {width: 300, height: 170, center: !0}).then(i => o(this, void 0, void 0, function* () {
                    if (i.action === p.MessageBoxNS.Action.OK) {
                        for (let t = 0; t < this.items.length; t++) if (this.items[t].label === e.label) {
                            this.items.splice(t, 1);
                            break
                        }
                        e.label === this.selectLabel && this.onSelectChange(this.items[t], t), this.saveConfig({
                            reason: "remove",
                            data: {label: e.label}
                        })
                    }
                })).catch()
            })
        }

        onSelectChange(e, t) {
            this.selectLabel = e.label, this.editItem = Object.assign({}, v, e), "custom" === e.id && (this.editItem.label = "", this.editItem.id = void 0), e.nameFilter && (this.editItem.nameFilterInput = e.nameFilter.split("|").join("\r\n"), this.editItem.nameFilterInput && (this.editItem.nameFilterInput = this.editItem.nameFilterInput + "\r\n")), e.extFilter && (this.editItem.extFilterInput = e.extFilter.split("|").join("\r\n"), this.editItem.extFilterInput && (this.editItem.extFilterInput = this.editItem.extFilterInput + "\r\n")), this.changed = !1
        }

        scrollNavIntoView(e) {
            this.$nextTick(() => {
                do {
                    let t = this.$refs.nav;
                    if (!t) break;
                    let i = t.children[e];
                    if (!i) break;
                    i.scrollIntoViewIfNeeded()
                } while (0)
            })
        }

        handleLabelChange(e) {
            this.changed = !0, this.editItem.label = e, this.warningTips1 = "", this.isWarning = !1
        }

        handleNameFilterChange(e) {
            this.changed = !0, this.editItem.nameFilterInput = e, this.warningTips2 = ""
        }

        hanleExtFilterChange(e) {
            this.changed = !0, this.editItem.extFilterInput = e, this.warningTips2 = ""
        }

        checkValid() {
            let e = 0;
            do {
                let t = this.editItem.label.trim();
                if (!t || "自定义" === t) {
                    e = 1, this.warningTips1 = "请输入有效的筛选项名称", this.isWarning = !0;
                    break
                }
                if (t.length > 30) {
                    e = 1, this.warningTips1 = "筛选项名称不能超过30个字", this.isWarning = !0;
                    break
                }
                let i = this.editItem.extFilterInput.trim(), n = this.editItem.nameFilterInput.trim();
                if (!i && !n) {
                    e = 2, this.warningTips2 = "文件名和扩展名必须有一项不为空";
                    break
                }
                if (n.match(/[\/\\"<>\?\*:|]/)) {
                    e = 3, this.warningTips2 = '文件名不能包含下列任何字符： \\ / : * ? " < > |';
                    break
                }
                if (i.match(/[\/\\"<>\?\*:|]/)) {
                    e = 3, this.warningTips2 = '扩展名不能包含下列任何字符： \\ / : * ? " < > |';
                    break
                }
            } while (0);
            return e
        }

        isLabelExist(e) {
            let t = !1;
            for (let i of this.items) if (e === i.label) {
                t = !0;
                break
            }
            return t
        }

        getModifyInfo() {
            let e = this.editItem.label.trim(), t = {type: void 0, label: e};
            t.lastSelect = e, this.selectLabel !== e && (t.lastSelect = this.selectLabel, t.type = g.Name);
            for (let e = 0; e < this.items.length; e++) if (this.items[e].label === this.selectLabel) {
                this.items[e].extFilter === this.editItem.extFilter && this.items[e].nameFilter === this.editItem.nameFilter || (t.type |= g.Filter, t.extFilter = this.editItem.extFilter, t.nameFilter = this.editItem.nameFilter);
                break
            }
            return t
        }

        saveConfig(e) {
            do {
                let t = "";
                if (!e || !e.reason) break;
                let i = e.reason;
                if ("add" === i ? t = "新增成功！" : "remove" === i ? t = "删除成功！" : "modify" === i && (t = "修改成功!"), t && (this.messageContent = t, this.$refs.message.show()), "modify" === i && void 0 === e.data.type) {
                    A.information("no modify");
                    break
                }
                c.client.callServerFunction("SaveTaskFilters", this.items.slice(0, -1), e).catch()
            } while (0)
        }

        onSave() {
            do {
                if (0 !== this.checkValid()) break;
                if (this.editItem.extFilter = this.editItem.extFilterInput.trim().replace(/\r\n/g, "|").replace(/\n/g, "|"), this.editItem.nameFilter = this.editItem.nameFilterInput.trim().replace(/\r\n/g, "|").replace(/\n/g, "|"), "自定义" === this.selectLabel) {
                    let e = this.editItem.label.trim();
                    if ("全部" === e || "BT任务" === e || "任务组" === e || this.isLabelExist(e)) {
                        this.warningTips1 = "筛选项名称已存在！", this.isWarning = !0;
                        break
                    }
                    this.items.splice(this.items.length - 1, 0, this.editItem), this.onSelectChange(this.editItem, this.items.length - 2), this.scrollNavIntoView(this.items.length - 2), this.saveConfig({reason: "add"});
                    let t = `category=${encodeURIComponent(e)}`;
                    u.XLStatNS.trackEvent("download_leftpanel", "finished_tab_add_new_custom", "", 0, 0, 0, 0, t);
                    break
                }
                let e = this.getModifyInfo();
                for (let t = 0; t < this.items.length; t++) if (this.items[t].label === this.selectLabel) {
                    this.items.splice(t, 1, this.editItem), this.onSelectChange(this.editItem, t), this.saveConfig({
                        reason: "modify",
                        data: e
                    });
                    break
                }
            } while (0)
        }

        mounted() {
            do {
                if (void 0 === this.options || null === this.options) break;
                let e = this.options.items;
                if (!e) break;
                let t = null;
                try {
                    t = JSON.parse(e)
                } catch (e) {
                }
                if (null === t) break;
                this.items = t, this.scrollNavIntoView(this.items.length - 1)
            } while (0)
        }
    };
    n([l.Prop()], m.prototype, "options", void 0), n([l.Prop()], m.prototype, "boxId", void 0), m = n([l.Component], m), t.default = m
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(391), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(7), a = i(29), l = i(5), c = i(30), u = i(28), d = i(1), h = i(4), p = i(9), f = i(2),
        A = i(15), g = p.default(f.join(__rootDir, "../bin/ThunderHelper.node")),
        v = d.default.getLogger("download-detect-tools");
    let m = class extends (a.mixins(c.DraggableMixin, c.PositionMixin)) {
        constructor() {
            super(...arguments), this.countDownSeconds = 60, this.launchingFileAssistant = !1
        }

        handleClose() {
            r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close), window.close()
        }

        handleQuickMode() {
            return o(this, void 0, void 0, function* () {
                A.XLStatNS.trackEvent("core_event", "apply_for_disk_space_fast"), this.launchingFileAssistant = !0;
                let e = (yield(yield s.asyncRemoteCall.getCurrentWindow()).getNativeWindowHandle()).readUIntLE(0, 4);
                g.enableWindow(e, !1), 0 === (yield h.client.callServerFunction("LaunchFileAssistant")) && A.XLStatNS.trackEvent("core_event", "apply_for_disk_space_fast_succ"), g.enableWindow(e, !0), r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.OK), this.launchingFileAssistant = !1, window.close()
            })
        }

        selectTraditionalMode() {
            r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Cancel), window.close()
        }

        handleTraditionalMode() {
            A.XLStatNS.trackEvent("core_event", "apply_for_disk_space_normal"), this.selectTraditionalMode()
        }

        mounted() {
            v.information("CreateBigFile mounted"), A.XLStatNS.trackEvent("core_event", "apply_for_disk_space_show"), setInterval(() => {
                this.launchingFileAssistant || (this.countDownSeconds--, 0 === this.countDownSeconds && this.selectTraditionalMode())
            }, 1e3)
        }
    };
    n([l.Prop()], m.prototype, "boxId", void 0), m = n([l.Component], m), t.default = m
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(393), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(29), s = i(5), a = i(28), l = i(30), c = i(15);
    let u = class extends (r.mixins(l.PositionMixin)) {
        get imgSrc() {
            let e = "";
            do {
                if (!this.options) break;
                if (!this.options.src) break;
                e = this.options.src
            } while (0);
            return e
        }

        get imgStyle() {
            let e = "";
            do {
                if (!this.options) break;
                if (!this.options.width || !this.options.height) break;
                e = `margin-top: -30px; width: ${this.options.width}px; height: ${this.options.height}px; background-size: 100% 100%;`
            } while (0);
            return e
        }

        handleCloseButton() {
            c.XLStatNS.trackEvent("clienttop", "guid_download_shoulei_click"), o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, a.MessageBoxNS.Action.Close), window.close()
        }

        mounted() {
            c.XLStatNS.trackEvent("clienttop", "guid_download_shoulei_show")
        }
    };
    n([s.Prop()], u.prototype, "boxId", void 0), n([s.Prop()], u.prototype, "options", void 0), u = n([s.Component], u), t.default = u
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(395), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(28), c = i(1), u = i(3), d = i(81), h = i(4), p = i(15), f = i(2),
        A = i(9), g = i(137), v = i(196), m = i(124), C = i(165), y = {margin: 0, width: 72},
        w = c.default.getLogger("copy-link-share"), b = A.default(f.join(__rootDir, "../bin/ThunderHelper.node"));
    let I = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.loading = !0, this.failed = !1, this.shareLink = "", this.shareLinkDlj = "", this.birdkeyStatus = 0, this.taskBirdKeyData = "", this.curBirdKey = "", this.expiresDate = "", this.isChecked = !1, this.encryptBirdKey = "", this.commonBirdKey = "", this.userpwd = "", this.encryptTextTemplate = "", this.textTemplate = "", this.messageType = "success", this.messageText = "", this.copyBtnDisabled = !1, this.picUrlPrefix = "https://sl-m-ssl.xunlei.com/h5/page/download-share/images/", this.hasPicExtList = "3gp;.3pg;.7z;.apk;.avi;.doc;.docx;.flv;.mkv;.mov;.mp4;.mpg;.png;.ppt;.pptx;.rar;.rm;.rmvb;.tar;.txt;.web;.wmv;.xls;.xlsx;.zip;", this.musicExtList = ".wav;.flac;.mp3;.aac;.wma;.m4a;.mid;.ape;.ogg;.ra;.mod;", this.musicPic = "music.png", this.torrentPic = "bt.png", this.unknownPic = "other.png"
        }

        get birdkeyText() {
            let e = "";
            return e = this.isChecked && "" !== this.userpwd ? (e = (e = this.encryptTextTemplate.replace("$key$", this.curBirdKey)).replace("$passwd$", this.userpwd)).replace("$date$", this.expiresDate) : (e = this.textTemplate.replace("$key$", this.curBirdKey)).replace("$date$", this.expiresDate)
        }

        handleCheck(e) {
            this.isChecked = e;
            let t = "", i = !1;
            this.userpwd = "", this.isChecked ? (t = "common", i = !0) : (t = "encrypted", i = !1), v.setBirdKeyPriority(this.taskBirdKeyData, t, i).then(e => {
                e && 200 === e.status && (this.isChecked ? this.onEncryptKey() : "" === this.commonBirdKey ? v.queryBirdKeyInfo(this.taskBirdKeyData, this.options.userId).then(e => {
                    if (e && "ok" === e.result) {
                        this.curBirdKey = e.bird_key;
                        let t = (new Date).getTime(), i = new Date(t + 5184e6);
                        this.expiresDate = g.TimeHelperNS.formatDate(i, "yyyy年MM月d日")
                    }
                }) : this.curBirdKey = this.commonBirdKey)
            })
        }

        onEncryptKey() {
            let e = "";
            e = this.isChecked ? "encrypted" : "common", this.options.userId ? this.handleEncryptBirdKey(this.options.userId, this.taskBirdKeyData, e) : m.default(!1, !0, "download_detail_birdkey").then(t => {
                t ? this.handleEncryptBirdKey(t, this.taskBirdKeyData, e) : this.isChecked = !1
            })
        }

        handleEncryptBirdKey(e, t, i) {
            v.encodeBirdKey(t, e, i).then(e => {
                e && 200 === e.status && (this.encryptBirdKey = e.data.bird_key, this.curBirdKey = e.data.bird_key, this.userpwd = e.data.passwd)
            })
        }

        onCopyBirdkeyBtnClick() {
            let e = this.birdkeyText;
            e = (e = (e = e.replace(/\r\n/g, "")).replace(/\n/g, "")).replace(/\s+/g, ""), u.clipboard.writeText(e), this.showTips("口令复制成功，去粘贴")
        }

        showTips(e) {
            this.messageType = "success", this.messageText = e, this.$refs.message.show()
        }

        retryEncode() {
            this.initBirdkey().catch()
        }

        handleClose(e) {
            u.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.Cancel), window.close()
        }

        handleRetry() {
            this.loading = !0, this.failed = !1, this.$nextTick(() => {
                d.ThunderWindowNS.resizeToFitContent(), this.queryShareLink().catch()
            })
        }

        handleCopyShareLink() {
            u.clipboard.writeText(this.shareLink), this.showTips("链接复制成功, 去粘贴"), p.XLStatNS.trackEvent("download_leftpanel", "share_float_click", "", 0, 0, 0, 0, "button=copy")
        }

        getPicUrl() {
            let e = `${this.picUrlPrefix}${this.unknownPic}`;
            if (this.options.ext) {
                let t = this.options.ext.substring(1), i = this.options.ext + ";";
                "torrent" === t ? e = `${this.picUrlPrefix}${this.torrentPic}.png` : -1 !== this.hasPicExtList.indexOf(i) ? e = `${this.picUrlPrefix}${t}.png` : -1 !== this.musicExtList.indexOf(i) && (e = `${this.picUrlPrefix}${this.musicPic}.png`)
            }
            return e
        }

        handleShareQQ() {
            let e = `http://connect.qq.com/widget/shareqq/index.html?url=${encodeURIComponent(this.shareLink)}&sharesource=qzone&title=${encodeURIComponent(this.options.taskName)}&pics=${this.getPicUrl()}&summary=${encodeURIComponent("邀你查看我的分享链接")}&desc=${encodeURIComponent("我正在下载这个任务")}`;
            b.openURLByDefault(e), p.XLStatNS.trackEvent("download_leftpanel", "share_float_click", "", 0, 0, 0, 0, "button=QQ"), u.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.OK), window.close()
        }

        handleShareQQZone() {
            let e = `https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=${encodeURIComponent(this.shareLink)}&sharesource=qzone&title=${encodeURIComponent(this.options.taskName)}&pics=${this.getPicUrl()}&summary=${encodeURIComponent("邀你查看我的分享链接")}&desc=${encodeURIComponent("我正在下载这个任务")}`;
            b.openURLByDefault(e), p.XLStatNS.trackEvent("download_leftpanel", "share_float_click", "", 0, 0, 0, 0, "button=QQ_Zone"), u.ipcRenderer.send(`message-box-resolve-${this.boxId}`, l.MessageBoxNS.Action.OK), window.close()
        }

        queryShareLink() {
            return o(this, void 0, void 0, function* () {
                this.shareLink = yield h.client.callServerFunction("GetShouleiShareLink", this.options.taskId, "link", this.options.shareFrom || ""), this.loading = !1, this.shareLinkDlj = yield h.client.callServerFunction("GetShouleiShareLinkDlj", this.options.taskId, "pic", this.options.shareFrom || ""), this.shareLinkDlj && "" !== this.shareLinkDlj ? (this.failed = !1, this.$nextTick(() => {
                    let e = document.getElementById("qrcodecanvas");
                    C.toCanvas(e, this.shareLinkDlj, y, e => {
                        w.information("QRCode.toCanvas error = ", e)
                    })
                })) : this.failed = !0, this.$nextTick(() => {
                    d.ThunderWindowNS.resizeToFitContent()
                })
            })
        }

        initBirdkey() {
            return o(this, void 0, void 0, function* () {
                this.birdkeyStatus = 0;
                let e = yield h.client.callServerFunction("GetTaskBirdKeyData", this.options.taskId);
                if (e && "" !== e) if (this.taskBirdKeyData = e, (e = yield v.queryBirdKeyInfo(e, this.options.userId)) && 200 === e.status && "ok" === e.data.result) {
                    this.birdkeyStatus = 1, this.curBirdKey = e.data.bird_key;
                    let t = (new Date).getTime(), i = new Date(t + 5184e6);
                    this.expiresDate = g.TimeHelperNS.formatDate(i, "yyyy年MM月d日"), e.link && e.link.uid && e.link.uid.toString() === this.options.userId && "encrypted" === e.link.type ? (this.isChecked = !0, this.encryptBirdKey = e.data.bird_key) : (this.isChecked = !1, this.commonBirdKey = e.data.bird_key)
                } else this.isChecked = !1, this.birdkeyStatus = 2; else this.birdkeyStatus = 2
            })
        }

        created() {
            return o(this, void 0, void 0, function* () {
                w.information("options = ", this.options), p.XLStatNS.trackEvent("download_leftpanel", "share_float_show", "", 0, 0, 0, 0, "type=1"), this.queryShareLink().catch(), this.initBirdkey().catch();
                let e = yield h.client.callServerFunction("GetConfigModules", "birdKey", "encryptTextTemplate");
                e || (e = "【迅雷口令#X$key$#】复制口令，打开最新版迅雷，接下来就是见证奇迹的时刻！提取密码：$passwd$（$date$失效）"), this.encryptTextTemplate = e, this.textTemplate = yield h.client.callServerFunction("GetConfigModules", "birdKey", "textTemplate"), this.textTemplate || (this.textTemplate = "【迅雷口令#X$key$#】复制口令，打开最新版迅雷，接下来就是见证奇迹的时刻！（$date$失效）")
            })
        }
    };
    n([s.Prop()], I.prototype, "options", void 0), n([s.Prop()], I.prototype, "boxId", void 0), I = n([s.Component], I), t.default = I
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(397), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(6), s = i(1), a = i(5), l = i(3), c = i(7), u = i(41), d = i(4), h = i(15), p = i(64), f = i(28);
    i(1091);
    const A = s.default.getLogger("Favorites");
    let g = class extends a.Vue {
        constructor() {
            super(...arguments), this.showClearHistoryFlag = !1, this.messageType = "", this.messageContent = "", this.orginBookmarks = [], this.bookmarks = [], this.editing = !1, this.historys = [], this.loadedCount = 0, this.historysDates = [], this.historysMaps = {}, this.tabs = [{
                title: "我的收藏",
                key: "my_favorites"
            }, {title: "浏览记录", key: "history"}], this.activeKey = "my_favorites"
        }

        onTabChange(e, t) {
            if ("history" === e) {
                let e = `button=history_tab,tab=${t}`;
                h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, e)
            }
        }

        onOptionsChange() {
            this.options && (this.orginBookmarks = [...this.options])
        }

        onHistorysGet(e, t) {
            let i = [], n = {};
            for (let t of e) i.includes(t.date) || (i.push(t.date), n[t.date] = []), n[t.date].push(t);
            this.historysDates = i, this.historysMaps = n
        }

        onOrder() {
            let e = this.orginBookmarks.map(e => (e.top = e.top || !1, e.toptime = e.toptime || 0, e));
            e.sort((e, t) => e.top ? t.top ? (t.toptime || 0) - (e.toptime || 0) : -1 : t.top ? 1 : 0), this.bookmarks = e
        }

        get partialHistorys() {
            let e = this.loadedCount;
            return e > this.historys.length && (e = this.historys.length, this.loadedCount = this.historys.length), this.historys.slice(0, e)
        }

        get hasMore() {
            return this.loadedCount !== this.historys.length
        }

        onLoadMore() {
            let e = `button=view_more,tab=${this.activeKey}`;
            h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, e);
            let t = this.loadedCount + 100;
            t > this.historys.length ? this.loadedCount = this.historys.length : this.loadedCount = t
        }

        dateDisplay(e) {
            let t = new Date;
            return r.format("%d/%d/%d", t.getFullYear(), t.getMonth() + 1, t.getDate()) === e ? "今天" : e
        }

        onHistoryClick(e) {
            let t = `url=${encodeURIComponent(e.url)},button=site,tab=${this.activeKey}`;
            h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, t), d.client.callServerFunction("OpenNewTab", e.url, JSON.stringify({extData: JSON.stringify({search_from: "top_search_address-historic_record"})}))
        }

        onHistoryItemMenu(e, t, i) {
            return o(this, void 0, void 0, function* () {
                let n = [{
                        label: "复制", click: () => {
                            let t = `url=${encodeURIComponent(e.url)},button=copy,tab=${this.activeKey}`;
                            h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, t), l.clipboard.writeText(e.url), this.messageType = "success", this.messageContent = "地址复制成功", this.$refs.message.show()
                        }
                    }, {
                        label: "删除", click: () => {
                            let n = `url=${encodeURIComponent(e.url)},button=remove,tab=${this.activeKey}`;
                            h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, n);
                            for (let t = 0; t < this.historys.length; t++) {
                                let i = this.historys[t];
                                if (i.url === e.url && i.accessTime === e.accessTime) {
                                    this.historys.splice(t, 1);
                                    break
                                }
                            }
                            let o = this.historysMaps[e.date];
                            o && o.length > 0 && (t < o.length ? (this.historysMaps[e.date].splice(t, 1), 0 === this.historysMaps[e.date].length && (i < this.historysDates.length ? (this.historysDates.splice(i, 1), delete this.historysMaps[e.date]) : A.warning("history exception on delete one day", i, this.historysDates.length))) : A.warning("history exception on delete item", t, o.length)), u.NativeCallModule.nativeCall.CallNativeFunction("DeleteHistoryItem", JSON.stringify(e))
                        }
                    }], o = yield c.asyncRemoteCall.getCurrentWindow(),
                    r = yield(yield c.asyncRemoteCall.getMenu()).buildFromTemplate(n);
                yield p.MenuSkinNS.setStyle(r, {}), yield r.popup(Object.assign({}, {window: o}))
            })
        }

        onClearHistorys() {
            return o(this, void 0, void 0, function* () {
                let e = `button=clean_all,tab=${this.activeKey}`;
                h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, e), this.showClearHistoryFlag = !0
            })
        }

        doClearHistory() {
            this.showClearHistoryFlag = !1, u.NativeCallModule.nativeCall.CallNativeFunction("ClearHistorys"), this.historys = [], this.historysMaps = {}, this.historysDates = []
        }

        cancelClearHistory() {
            this.showClearHistoryFlag = !1
        }

        onFavItemClick(e) {
            let t = `url=${encodeURIComponent(e.url)},button=site,tab=${this.activeKey}`;
            h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, t), d.client.callServerFunction("OpenNewTab", e.url, JSON.stringify({extData: JSON.stringify({search_from: "top_search_address-favorite"})}))
        }

        onFavItemMenu(e, t) {
            return o(this, void 0, void 0, function* () {
                let t = `url=${encodeURIComponent(e.url)},tab=${this.activeKey}`;
                h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_rk_click", "", 0, 0, 0, 0, t);
                let i = [{
                    label: "复制", click: () => {
                        let t = `url=${encodeURIComponent(e.url)},button=copy,tab=${this.activeKey}`;
                        h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, t), l.clipboard.writeText(e.url), this.messageType = "success", this.messageContent = "地址复制成功", this.$refs.message.show()
                    }
                }, {
                    label: "编辑", click: () => {
                        let t = `url=${encodeURIComponent(e.url)},button=edit,tab=${this.activeKey}`;
                        h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, t), this.editing = !0, u.NativeCallModule.nativeCall.CallNativeFunction("EditBookmarksItemAW", {
                            url: e.url,
                            title: e.name,
                            iconUrl: e.iconUrl,
                            state: "edit"
                        }, (t, i) => o(this, void 0, void 0, function* () {
                            yield(yield c.asyncRemoteCall.getCurrentWindow()).focus(), this.editing = !1, i.action === f.MessageBoxNS.Action.OK ? "ok" === i.args.state && this.updateTitle({
                                url: e.url,
                                title: i.args.title
                            }) : i.action === f.MessageBoxNS.Action.Cancel && this.deleteItem(e.url)
                        }))
                    }
                }, {
                    label: "取消收藏", click: () => {
                        let t = `url=${encodeURIComponent(e.url)},button=remove,tab=${this.activeKey}`;
                        h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, t), this.deleteItem(e.url), l.ipcRenderer.send("delete-book-list", {url: e.url})
                    }
                }];
                e.top ? i.splice(1, 0, {
                    label: "取消置顶", click: () => {
                        let t = `url=${encodeURIComponent(e.url)},button=top,tab=${this.activeKey}`;
                        h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, t), u.NativeCallModule.nativeCall.CallNativeFunction("TopBookmarksItem", {
                            url: e.url,
                            top: !1
                        }, (t, i) => {
                            this.updateTopStatus({url: e.url, top: !1})
                        })
                    }
                }) : i.splice(1, 0, {
                    label: "置顶", click: () => {
                        let t = `url=${encodeURIComponent(e.url)},button=top,tab=${this.activeKey}`;
                        h.XLStatNS.trackEvent("clienttop", "clienttop_address_favorites_click", "", 0, 0, 0, 0, t), u.NativeCallModule.nativeCall.CallNativeFunction("TopBookmarksItem", {
                            url: e.url,
                            top: !0
                        }, (t, i) => {
                            this.updateTopStatus({url: e.url, top: !0})
                        })
                    }
                });
                let n = yield c.asyncRemoteCall.getCurrentWindow(),
                    r = yield(yield c.asyncRemoteCall.getMenu()).buildFromTemplate(i);
                yield p.MenuSkinNS.setStyle(r, {}), yield r.popup(Object.assign({}, {window: n}))
            })
        }

        deleteItem(e) {
            for (let t = 0; t < this.orginBookmarks.length; t++) {
                if (e === this.orginBookmarks[t].url) {
                    this.orginBookmarks.splice(t, 1);
                    break
                }
            }
            d.client.callServerFunction("DeleteBookMarksItem", e)
        }

        updateTitle(e) {
            do {
                if (!e.title) break;
                for (let t = 0; t < this.orginBookmarks.length; t++) {
                    let i = this.orginBookmarks[t];
                    if (e.url === i.url) {
                        i.name = e.title;
                        break
                    }
                }
            } while (0)
        }

        updateTopStatus(e) {
            for (let t = 0; t < this.orginBookmarks.length; t++) {
                let i = this.orginBookmarks[t];
                if (e.url === i.url) {
                    e.top ? (i.top = !0, i.toptime = (new Date).getTime()) : (i.top = !1, i.toptime = 0), a.Vue.set(this.orginBookmarks, String(t), Object.assign({}, i));
                    break
                }
            }
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                let e = yield c.asyncRemoteCall.getCurrentWindow();
                e.show(), e.focus(), e.on("blur", e => {
                    this.editing || window.close()
                }), u.NativeCallModule.nativeCall.CallNativeFunction("GetRecentHistorys", (e, t) => {
                    0 === e && (this.historys = JSON.parse(t), this.loadedCount = this.historys.length > 100 ? 100 : this.historys.length)
                })
            })
        }
    };
    n([a.Prop({})], g.prototype, "options", void 0), n([a.Watch("activeKey")], g.prototype, "onTabChange", null), n([a.Watch("options", {immediate: !0})], g.prototype, "onOptionsChange", null), n([a.Watch("partialHistorys")], g.prototype, "onHistorysGet", null), n([a.Watch("orginBookmarks", {immediate: !0})], g.prototype, "onOrder", null), g = n([a.Component({})], g), t.default = g
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(399), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(7), a = i(29), l = i(5), c = i(28), u = i(30);
    let d = class extends (a.mixins(u.DraggableMixin, u.PositionMixin)) {
        constructor() {
            super(...arguments), this.username = "", this.password = "", this.isShowTips = !1, this.tipsText = ""
        }

        handleClose() {
            r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, c.MessageBoxNS.Action.Close), window.close()
        }

        handleOK() {
            do {
                if ("" === this.username) {
                    this.tipsText = "用户名不能为空！", this.isShowTips = !0;
                    break
                }
                r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, c.MessageBoxNS.Action.OK, {
                    username: this.username,
                    password: this.password
                }), window.close()
            } while (0)
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                window.addEventListener("keyup", e => {
                    "Enter" === e.key ? this.handleOK() : "Escape" === e.key && this.handleClose()
                }, !0), document.addEventListener("click", () => {
                    this.isShowTips = !1
                }), (yield s.asyncRemoteCall.getCurrentWindow()).hookWindowMessage(528, () => {
                    this.isShowTips = !1
                }), r.ipcRenderer.on("message-box-resolve-systemmenu", () => {
                    r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, c.MessageBoxNS.Action.Close)
                })
            })
        }
    };
    n([l.Prop()], d.prototype, "options", void 0), n([l.Prop()], d.prototype, "boxId", void 0), d = n([l.Component], d), t.default = d
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(401), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(3), c = i(28), u = i(81), d = i(1), h = i(4), p = i(15), f = i(165),
        A = {margin: 0, width: 100}, g = d.default.getLogger("Shoulei-Sync-Guide");
    let v = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.showGuide = !1, this.state = "offline"
        }

        closeDialog() {
            l.ipcRenderer.send(`message-box-resolve-${this.boxId}`, c.MessageBoxNS.Action.Close), window.close()
        }

        handleCancel() {
            let e = this.options.statFrom || "", t = "";
            t = "online" === this.state ? "connect_shoulei_connected_page_click" : this.showGuide ? "connect_shoulei_scan_page_click" : "connect_shoulei_entry_page_click", p.XLStatNS.trackEvent("download_leftpanel", t, "", 0, 0, 0, 0, `from=${e},click_id=close`), this.closeDialog()
        }

        handleOk() {
            let e = this.options.statFrom || "";
            p.XLStatNS.trackEvent("download_leftpanel", "connect_shoulei_connected_page_click", "", 0, 0, 0, 0, `from=${e},click_id=ok`), this.closeDialog()
        }

        handleOpen() {
            return o(this, void 0, void 0, function* () {
                let e = this.options.statFrom || "";
                p.XLStatNS.trackEvent("download_leftpanel", "connect_shoulei_entry_page_click", "", 0, 0, 0, 0, `from=${e},click_id=open`), this.showGuide = !0, this.$nextTick(() => {
                    let e = this.options.statFrom || "";
                    p.XLStatNS.trackEvent("download_leftpanel", "connect_shoulei_scan_page_show", "", 0, 0, 0, 0, `from=${e}`);
                    let t = document.getElementById("qrcodecanvas"), i = this.options.sfrom || "";
                    f.toCanvas(t, `http://sl-m-ssl.xunlei.com/pages/activities/download/?sfrom=${i}`, A, e => {
                        g.information("QRCode.toCanvas error = ", e)
                    }), u.ThunderWindowNS.resizeToFitContent(0, 0, u.ThunderWindowNS.fitWindowPosInParent)
                })
            })
        }

        onShouleiConnectStateChanged(e, t) {
            this.state = t, g.information("onShouleiConnectStateChanged", t, this.showGuide), this.showGuide && "online" === t && (this.showGuide = !1), this.sendShowStat(), this.$nextTick(() => {
                this.$nextTick(() => {
                    u.ThunderWindowNS.resizeToFitContent(0, 0, u.ThunderWindowNS.fitWindowPosInParent)
                })
            })
        }

        sendShowStat() {
            let e = this.options.statFrom || "";
            "offline" === this.state ? p.XLStatNS.trackEvent("download_leftpanel", "connect_shoulei_entry_page_show", "", 0, 0, 0, 0, `from=${e}`) : p.XLStatNS.trackEvent("download_leftpanel", "connect_shoulei_connected_page_show", "", 0, 0, 0, 0, `from=${e}`)
        }

        created() {
            this.state = "remoting" === this.options.type ? "online" : "offline", h.client.attachServerEvent("OnShouleiConnectStateChanged", this.onShouleiConnectStateChanged.bind(this))
        }

        mounted() {
            g.information("mounted"), this.sendShowStat(), this.$nextTick(() => {
                u.ThunderWindowNS.resizeToFitContent(0, 0, u.ThunderWindowNS.fitWindowPosInParent)
            })
        }
    };
    n([s.Prop()], v.prototype, "options", void 0), n([s.Prop()], v.prototype, "boxId", void 0), v = n([s.Component], v), t.default = v
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(403), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(3), c = i(7), u = i(28), d = i(4), h = i(839), p = i(15), f = i(16),
        A = i(43), g = i(165), v = {margin: 0, width: 78};
    let m = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.qrcodeFailed = !0
        }

        handleCancel() {
            p.XLStatNS.trackEvent("download_detail", "dltab_detail_sendfile_tab_qrcode_click", "", 0, 0, 0, 0, "page=sendfile_pop,button=close"), l.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close), window.close()
        }

        handleRefreshQRCode() {
            return o(this, void 0, void 0, function* () {
                p.XLStatNS.trackEvent("download_detail", "dltab_detail_sendfile_tab_qrcode_click", "", 0, 0, 0, 0, "page=sendfile_pop,button=refresh");
                let e = yield d.client.callServerFunction("GetSubNetUploader");
                if (e) {
                    let t = yield d.client.callServerFunction("GetShouleiFileTransferDlj", this.options.taskBase.taskId, e, "pic", "leftlist_rk_phone");
                    t && "" !== t && (this.qrcodeFailed = !1, this.$nextTick(() => {
                        let e = document.getElementById("qrcodecanvas");
                        g.toCanvas(e, t, v, () => {
                        })
                    }))
                }
            })
        }

        popupDownloadShoulei() {
            return o(this, void 0, void 0, function* () {
                p.XLStatNS.trackEvent("download_detail", "dltab_detail_sendfile_tab_qrcode_click", "", 0, 0, 0, 0, "page=sendfile_pop,button=download_shoulei");
                let e = (yield c.asyncRemoteCall.getCurrentWindow()).id;
                h.getMobileImgSrc().then(t => {
                    d.client.callServerFunction("MessageBoxCustom", "img-dlg", {
                        parentId: e,
                        src: t,
                        width: 400,
                        height: 276
                    }, {width: 400, height: 276}).catch()
                }).catch()
            })
        }

        translateFileTypeToString(e) {
            let t = "other";
            switch (e) {
                case A.TaskUtilHelper.FileExtType.Video:
                    t = "video";
                    break;
                case A.TaskUtilHelper.FileExtType.Music:
                    t = "music";
                    break;
                case A.TaskUtilHelper.FileExtType.Doc:
                    t = "doc";
                    break;
                case A.TaskUtilHelper.FileExtType.Software:
                    t = "exe"
            }
            return t
        }

        getFileType(e, t) {
            let i = "";
            if (e.taskType === f.DownloadKernel.TaskType.Bt) {
                if (t && t.length > 0) for (let e = 0; e < t.length; ++e) {
                    let n = A.TaskUtilHelper.getTaskFileType(t[e].fileName), o = this.translateFileTypeToString(n);
                    if ("other" !== o) {
                        i = o;
                        break
                    }
                }
            } else {
                let t = A.TaskUtilHelper.getTaskFileType(e.taskName);
                i = this.translateFileTypeToString(t)
            }
            return i
        }

        getTaskType(e) {
            let t = "unknown";
            switch (e.taskType) {
                case f.DownloadKernel.TaskType.P2sp:
                    t = "p2sp";
                    break;
                case f.DownloadKernel.TaskType.Bt:
                    t = "bt";
                    break;
                case f.DownloadKernel.TaskType.Emule:
                    t = "emule";
                    break;
                case f.DownloadKernel.TaskType.Group:
                    t = "group";
                    break;
                case f.DownloadKernel.TaskType.Magnet:
                    t = "magnet"
            }
            return t
        }

        mounted() {
            let e = this.options.shareLink, t = this.options.taskBase, i = "";
            e && "" !== e ? (i = "success", this.qrcodeFailed = !1) : (e = "https://mobile.xunlei.com/m/channel.html?from=xunlei10daoliang", i = "default");
            let n = `page=sendfile_pop,qr_type=${i},file_type=${this.getFileType(t, this.options.subFileList)},task_type=${this.getTaskType(t)}`;
            p.XLStatNS.trackEvent("download_detail", "dltab_detail_sendfile_qrcode_show", "", 0, 0, 0, 0, n), this.$nextTick(() => {
                let e = document.getElementById("qrcodecanvas");
                g.toCanvas(e, this.options.shareLink, v, () => {
                })
            })
        }
    };
    n([s.Prop()], m.prototype, "options", void 0), n([s.Prop()], m.prototype, "boxId", void 0), m = n([s.Component], m), t.default = m
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(405), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(3), r = i(5), s = i(29), a = i(28), l = i(30), c = i(150), u = i(103);
    let d = class extends (s.mixins(l.DraggableMixin, l.PositionMixin)) {
        constructor() {
            super(...arguments), this.formData = Object.assign({}, this.options.formData), this.action = a.MessageBoxNS.Action, this.hours = Array.from({length: 24}, (e, t) => t), this.minutes = Array.from({length: 60}, (e, t) => t)
        }

        maxUploadSpeedInput(e, t) {
            let i = Number(t || e);
            do {
                if (i < 30) {
                    i = 30;
                    break
                }
                if (i > 2048) {
                    i = 2048;
                    break
                }
            } while (0);
            this.handleInput(i, "maxUploadSpeed")
        }

        maxDownloadSpeedInput(e, t) {
            let i = Number(t || e);
            do {
                if (i < 60) {
                    i = 60;
                    break
                }
                if (i > 51200) {
                    i = 51200;
                    break
                }
            } while (0);
            this.handleInput(i, "maxDownloadSpeed")
        }

        handleInput(e, t) {
            this.formData[t].value = e
        }

        handleLimitInput(e, t) {
            this.formData.limitTime[t].value = e
        }

        handleCancel(e) {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, e), window.close()
        }

        handleOK() {
            o.ipcRenderer.send(`message-box-resolve-${this.boxId}`, this.action.OK, this.formData), window.close()
        }
    };
    n([r.Prop()], d.prototype, "options", void 0), n([r.Prop()], d.prototype, "boxId", void 0), d = n([r.Component({
        components: {
            LimitInput: c.default,
            SelectNative: u.default
        }
    })], d), t.default = d
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(407), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(3), s = i(7), a = i(5), l = i(29), c = i(30), u = i(28);
    let d = class extends (l.mixins(c.DraggableMixin, c.PositionMixin)) {
        constructor() {
            super(...arguments), this.action = u.MessageBoxNS.Action, this.isMax = !1, this.imgWidth = 0, this.imgHeight = 0, this.clientWidth = 0, this.clientHeight = 0, this.imgRatio = 0, this.scale = 1, this.scaleInc = .1, this.isResume = !1, this.defaultLeft = 0, this.defaultTop = 0, this.movementX = 0, this.movementY = 0, this.cursor = "zoom-in", this.lastScale = 1, this.isLoading = !0
        }

        onScaleChange() {
            let e = this.scale - this.lastScale, t = e * this.showWidth, i = e * this.showHeight;
            this.movementX -= Math.round(t / 2), this.movementY -= Math.round(i / 2)
        }

        get imgSrc() {
            return this.options && (this.options.src || this.options.imgSrc) ? this.options.imgSrc || this.options.src : ""
        }

        resume(e) {
            this.isResume = !this.isResume, this.lastScale = 1, this.scale = 1, this.movementX = 0, this.movementY = 0, "zoom-in" === this.cursor ? this.cursor = "zoom-out" : "zoom-out" === this.cursor && (this.cursor = "zoom-in"), this.isResume ? (this.isLong ? this.defaultTop = 0 : this.defaultTop = (this.clientHeight - this.showHeight) / 2, this.defaultLeft = (this.clientWidth - this.showWidth) / 2) : (this.defaultLeft = (this.clientWidth - this.showWidth) / 2, this.defaultTop = (this.clientHeight - this.showHeight) / 2)
        }

        onZoomIn() {
            this.scale <= 4.9 && (this.lastScale = this.scale, this.scale += this.scaleInc)
        }

        onZoomOut() {
            this.scale >= .2 && (this.lastScale = this.scale, this.scale -= this.scaleInc)
        }

        onMouseMove(e) {
            1 === e.buttons && (this.movementX += e.movementX, this.movementY += e.movementY)
        }

        updateNativeSize() {
            this.clientWidth = window.innerWidth, this.clientHeight = window.innerHeight - 40 - 31, this.isLong ? this.defaultTop = 0 : this.defaultTop = (this.clientHeight - this.showHeight) / 2, this.defaultLeft = (this.clientWidth - this.showWidth) / 2
        }

        handleCtrlScroll(e) {
            this.lastScale = this.scale, e.deltaY < 0 && this.scale <= 4.9 ? this.scale += this.scaleInc : e.deltaY > 0 && this.scale >= .2 && (this.scale -= this.scaleInc)
        }

        imgLoaded() {
            this.isLoading = !1;
            let e = this.$refs.image;
            this.imgWidth = e.naturalWidth, this.imgHeight = e.naturalHeight, this.imgRatio = this.imgWidth / this.imgHeight, this.imgWidth <= this.clientWidth && this.imgHeight <= this.clientHeight && (this.cursor = "default"), this.updateNativeSize()
        }

        get clientRatio() {
            return this.clientWidth / this.clientHeight
        }

        get left() {
            return (this.movementX + this.defaultLeft) / this.clientWidth * 100
        }

        get top() {
            return (this.movementY + this.defaultTop) / this.clientHeight * 100
        }

        get showWidth() {
            return this.showHeight * this.imgRatio
        }

        get showHeight() {
            return this.isResume ? this.imgHeight : this.imgRatio >= this.clientRatio ? this.imgWidth <= this.clientWidth ? this.imgHeight : this.imgHeight / this.imgWidth * this.clientWidth : this.imgHeight <= this.clientHeight ? this.imgHeight : this.clientHeight
        }

        get isLong() {
            return this.showHeight * this.scale > this.clientHeight ? (this.defaultTop = 0, !0) : (this.defaultTop = this.clientHeight / 2, !1)
        }

        minimizeWindow() {
            return o(this, void 0, void 0, function* () {
                yield(yield s.asyncRemoteCall.getCurrentWindow()).minimize()
            })
        }

        closeWindow() {
            r.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close), window.close()
        }

        resizeWindow(e) {
            return o(this, void 0, void 0, function* () {
                this.isMax = !this.isMax;
                let t = yield s.asyncRemoteCall.getCurrentWindow();
                "maximize" === e ? yield t.maximize() : yield t.unmaximize()
            })
        }

        mounted() {
            window.addEventListener("resize", this.updateNativeSize)
        }

        beforeDestroy() {
            window.removeEventListener("resize", this.updateNativeSize)
        }
    };
    n([a.Prop()], d.prototype, "boxId", void 0), n([a.Prop()], d.prototype, "options", void 0), n([a.Watch("scale")], d.prototype, "onScaleChange", null), d = n([a.Component], d), t.default = d
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(409), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(29), s = i(5), a = i(30), l = i(3), c = i(28), u = i(844), d = i(845), h = i(846);
    let p = class extends (r.mixins(a.DraggableMixin, a.PositionMixin)) {
        constructor() {
            super(...arguments), this.visible = !0, this.list = [u, d, h]
        }

        handleCancel(e) {
            return o(this, void 0, void 0, function* () {
                yield l.ipcRenderer.send(`message-box-resolve-${this.boxId}`, c.MessageBoxNS.Action.Close), window.close()
            })
        }
    };
    n([s.Prop()], p.prototype, "options", void 0), n([s.Prop()], p.prototype, "boxId", void 0), p = n([s.Component], p), t.default = p
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(411), o = i.n(n);
    for (var r in n) "default" !== r && function (e) {
        i.d(t, e, function () {
            return n[e]
        })
    }(r);
    t.default = o.a
}, function (e, t, i) {
    "use strict";
    var n = this && this.__decorate || function (e, t, i, n) {
        var o, r = arguments.length, s = r < 3 ? t : null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
        if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) s = Reflect.decorate(e, t, i, n); else for (var a = e.length - 1; a >= 0; a--) (o = e[a]) && (s = (r < 3 ? o(s) : r > 3 ? o(t, i, s) : o(t, i)) || s);
        return r > 3 && s && Object.defineProperty(t, i, s), s
    }, o = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const r = i(4), s = i(29), a = i(5), l = i(30), c = i(3), u = i(28), d = i(1), h = i(7), {shouldAuth: p} = i(849),
        f = d.default.getLogger("phone-auth-renderer");
    let A = class extends (s.mixins(l.DraggableMixin, l.PositionMixin)) {
        constructor() {
            super(...arguments), this.phoneauth = p
        }

        handleClose(e) {
            return o(this, void 0, void 0, function* () {
                yield r.client.broadcastEvent("PhoneAuthEnd", {action: u.MessageBoxNS.Action.Close}), yield c.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close), window.close()
            })
        }

        getAuthPlatformParamObj() {
            return o(this, void 0, void 0, function* () {
                const e = yield r.client.callServerFunction("GetUserInfoAw"),
                    t = yield r.client.callServerFunction("GetThunderVersion");
                return Object.assign({}, e, {appid: 165, clientVersion: t})
            })
        }

        mounted() {
            return o(this, void 0, void 0, function* () {
                const e = yield this.getAuthPlatformParamObj();
                e.deviceid = "123456", p("thunder11", e, this.options.from).then(e => o(this, void 0, void 0, function* () {
                    yield r.client.broadcastEvent("PhoneAuthEnd", {result: "success"}), yield c.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.OK, {
                        action: u.MessageBoxNS.Action.OK,
                        result: "success"
                    })
                })).catch(e => o(this, void 0, void 0, function* () {
                    "auth error" !== e.message && "not login" !== e.message && f.warning(e), yield r.client.broadcastEvent("PhoneAuthEnd", {
                        action: u.MessageBoxNS.Action.Cancel,
                        error: e.message
                    }), yield c.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Cancel, {error: e.message})
                })).finally(() => {
                    window.close()
                });
                let t = yield h.asyncRemoteCall.getCurrentWindow(), i = yield t.getBounds();
                yield t.setBounds({
                    height: 406,
                    width: 280,
                    x: i.x,
                    y: i.y
                }), r.client.attachServerEvent("OnLogout", (e, ...t) => o(this, void 0, void 0, function* () {
                    yield r.client.broadcastEvent("PhoneAuthEnd", {
                        action: u.MessageBoxNS.Action.Cancel,
                        error: "user logout."
                    }), yield c.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Cancel, {error: "user logout."}), window.close()
                })), c.ipcRenderer.on("message-box-resolve-systemmenu", () => {
                    r.client.broadcastEvent("PhoneAuthEnd", {
                        action: u.MessageBoxNS.Action.Close,
                        error: "User Close"
                    }), c.ipcRenderer.send(`message-box-resolve-${this.boxId}`, u.MessageBoxNS.Action.Close, {error: "User Close"})
                })
            })
        }
    };
    n([a.Prop({})], A.prototype, "options", void 0), n([a.Prop()], A.prototype, "boxId", void 0), A = n([a.Component({})], A), t.default = A
}, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , function (e, t, i) {
    var n = i(477), o = i(180), r = i(495), s = i(507), a = i(508), l = i(509);

    function c(e, t, i) {
        if (void 0 === e) throw new Error("String required as first argument");
        if (void 0 === i && (i = t, t = {}), "function" != typeof i) {
            if (!n()) throw new Error("Callback required as last argument");
            t = i || {}, i = null
        }
        return {opts: t, cb: i}
    }

    function u(e) {
        switch (e) {
            case"svg":
                return l;
            case"txt":
            case"utf8":
                return s;
            case"png":
            case"image/png":
            default:
                return r
        }
    }

    function d(e, t, i) {
        if (!i.cb) return new Promise(function (n, r) {
            try {
                var s = o.create(t, i.opts);
                return e(s, i.opts, function (e, t) {
                    return e ? r(e) : n(t)
                })
            } catch (e) {
                r(e)
            }
        });
        try {
            var n = o.create(t, i.opts);
            return e(n, i.opts, i.cb)
        } catch (e) {
            i.cb(e)
        }
    }

    t.create = o.create, t.toCanvas = i(510).toCanvas, t.toString = function (e, t, i) {
        var n = c(e, t, i);
        return d(function (e) {
            switch (e) {
                case"svg":
                    return l;
                case"terminal":
                    return a;
                case"utf8":
                default:
                    return s
            }
        }(n.opts.type).render, e, n)
    }, t.toDataURL = function (e, t, i) {
        var n = c(e, t, i);
        return d(u(n.opts.type).renderToDataURL, e, n)
    }, t.toBuffer = function (e, t, i) {
        var n = c(e, t, i);
        return d(u(n.opts.type).renderToBuffer, e, n)
    }, t.toFile = function (e, t, i, o) {
        if ("string" != typeof e || "string" != typeof t && "object" != typeof t) throw new Error("Invalid argument");
        if (arguments.length < 3 && !n()) throw new Error("Too few arguments provided");
        var r = c(t, i, o);
        return d(u(r.opts.type || function (e) {
            return e.slice(2 + (e.lastIndexOf(".") - 1 >>> 0)).toLowerCase()
        }(e)).renderToFile.bind(null, e), t, r)
    }, t.toFileStream = function (e, t, i) {
        if (arguments.length < 2) throw new Error("Too few arguments provided");
        var n = c(t, i, e.emit.bind(e, "error"));
        d(u("png").renderToFileStream.bind(null, e), t, n)
    }
}, function (e, t, i) {
    "use strict";
    var n = i(478);
    e.exports = function () {
        return "function" == typeof n.Promise && "function" == typeof n.Promise.prototype.then
    }
}, function (e, t, i) {
    "use strict";
    e.exports = "object" == typeof self && self.self === self && self || "object" == typeof global && global.global === global && global || this
}, function (e, t) {
    function i() {
        this.buffer = [], this.length = 0
    }

    i.prototype = {
        get: function (e) {
            var t = Math.floor(e / 8);
            return 1 == (this.buffer[t] >>> 7 - e % 8 & 1)
        }, put: function (e, t) {
            for (var i = 0; i < t; i++) this.putBit(1 == (e >>> t - i - 1 & 1))
        }, getLengthInBits: function () {
            return this.length
        }, putBit: function (e) {
            var t = Math.floor(this.length / 8);
            this.buffer.length <= t && this.buffer.push(0), e && (this.buffer[t] |= 128 >>> this.length % 8), this.length++
        }
    }, e.exports = i
}, function (e, t, i) {
    var n = i(101);

    function o(e) {
        if (!e || e < 1) throw new Error("BitMatrix size must be defined and greater than 0");
        this.size = e, this.data = new n(e * e), this.data.fill(0), this.reservedBit = new n(e * e), this.reservedBit.fill(0)
    }

    o.prototype.set = function (e, t, i, n) {
        var o = e * this.size + t;
        this.data[o] = i, n && (this.reservedBit[o] = !0)
    }, o.prototype.get = function (e, t) {
        return this.data[e * this.size + t]
    }, o.prototype.xor = function (e, t, i) {
        this.data[e * this.size + t] ^= i
    }, o.prototype.isReserved = function (e, t) {
        return this.reservedBit[e * this.size + t]
    }, e.exports = o
}, function (e, t, i) {
    var n = i(82).getSymbolSize;
    t.getRowColCoords = function (e) {
        if (1 === e) return [];
        for (var t = Math.floor(e / 7) + 2, i = n(e), o = 145 === i ? 26 : 2 * Math.ceil((i - 13) / (2 * t - 2)), r = [i - 7], s = 1; s < t - 1; s++) r[s] = r[s - 1] - o;
        return r.push(6), r.reverse()
    }, t.getPositions = function (e) {
        for (var i = [], n = t.getRowColCoords(e), o = n.length, r = 0; r < o; r++) for (var s = 0; s < o; s++) 0 === r && 0 === s || 0 === r && s === o - 1 || r === o - 1 && 0 === s || i.push([n[r], n[s]]);
        return i
    }
}, function (e, t, i) {
    var n = i(82).getSymbolSize;
    t.getPositions = function (e) {
        var t = n(e);
        return [[0, 0], [t - 7, 0], [0, t - 7]]
    }
}, function (e, t) {
    t.Patterns = {
        PATTERN000: 0,
        PATTERN001: 1,
        PATTERN010: 2,
        PATTERN011: 3,
        PATTERN100: 4,
        PATTERN101: 5,
        PATTERN110: 6,
        PATTERN111: 7
    };
    var i = 3, n = 3, o = 40, r = 10;

    function s(e, i, n) {
        switch (e) {
            case t.Patterns.PATTERN000:
                return (i + n) % 2 == 0;
            case t.Patterns.PATTERN001:
                return i % 2 == 0;
            case t.Patterns.PATTERN010:
                return n % 3 == 0;
            case t.Patterns.PATTERN011:
                return (i + n) % 3 == 0;
            case t.Patterns.PATTERN100:
                return (Math.floor(i / 2) + Math.floor(n / 3)) % 2 == 0;
            case t.Patterns.PATTERN101:
                return i * n % 2 + i * n % 3 == 0;
            case t.Patterns.PATTERN110:
                return (i * n % 2 + i * n % 3) % 2 == 0;
            case t.Patterns.PATTERN111:
                return (i * n % 3 + (i + n) % 2) % 2 == 0;
            default:
                throw new Error("bad maskPattern:" + e)
        }
    }

    t.isValid = function (e) {
        return null != e && "" !== e && !isNaN(e) && e >= 0 && e <= 7
    }, t.from = function (e) {
        return t.isValid(e) ? parseInt(e, 10) : void 0
    }, t.getPenaltyN1 = function (e) {
        for (var t = e.size, n = 0, o = 0, r = 0, s = null, a = null, l = 0; l < t; l++) {
            o = r = 0, s = a = null;
            for (var c = 0; c < t; c++) {
                var u = e.get(l, c);
                u === s ? o++ : (o >= 5 && (n += i + (o - 5)), s = u, o = 1), (u = e.get(c, l)) === a ? r++ : (r >= 5 && (n += i + (r - 5)), a = u, r = 1)
            }
            o >= 5 && (n += i + (o - 5)), r >= 5 && (n += i + (r - 5))
        }
        return n
    }, t.getPenaltyN2 = function (e) {
        for (var t = e.size, i = 0, o = 0; o < t - 1; o++) for (var r = 0; r < t - 1; r++) {
            var s = e.get(o, r) + e.get(o, r + 1) + e.get(o + 1, r) + e.get(o + 1, r + 1);
            4 !== s && 0 !== s || i++
        }
        return i * n
    }, t.getPenaltyN3 = function (e) {
        for (var t = e.size, i = 0, n = 0, r = 0, s = 0; s < t; s++) {
            n = r = 0;
            for (var a = 0; a < t; a++) n = n << 1 & 2047 | e.get(s, a), a >= 10 && (1488 === n || 93 === n) && i++, r = r << 1 & 2047 | e.get(a, s), a >= 10 && (1488 === r || 93 === r) && i++
        }
        return i * o
    }, t.getPenaltyN4 = function (e) {
        for (var t = 0, i = e.data.length, n = 0; n < i; n++) t += e.data[n];
        return Math.abs(Math.ceil(100 * t / i / 5) - 10) * r
    }, t.applyMask = function (e, t) {
        for (var i = t.size, n = 0; n < i; n++) for (var o = 0; o < i; o++) t.isReserved(o, n) || t.xor(o, n, s(e, o, n))
    }, t.getBestMask = function (e, i) {
        for (var n = Object.keys(t.Patterns).length, o = 0, r = 1 / 0, s = 0; s < n; s++) {
            i(s), t.applyMask(s, e);
            var a = t.getPenaltyN1(e) + t.getPenaltyN2(e) + t.getPenaltyN3(e) + t.getPenaltyN4(e);
            t.applyMask(s, e), a < r && (r = a, o = s)
        }
        return o
    }
}, function (e, t, i) {
    var n = i(101), o = i(485);

    function r(e) {
        this.genPoly = void 0, this.degree = e, this.degree && this.initialize(this.degree)
    }

    r.prototype.initialize = function (e) {
        this.degree = e, this.genPoly = o.generateECPolynomial(this.degree)
    }, r.prototype.encode = function (e) {
        if (!this.genPoly) throw new Error("Encoder not initialized");
        var t = new n(this.degree);
        t.fill(0);
        var i = n.concat([e, t], e.length + this.degree), r = o.mod(i, this.genPoly), s = this.degree - r.length;
        if (s > 0) {
            var a = new n(this.degree);
            return a.fill(0), r.copy(a, s), a
        }
        return r
    }, e.exports = r
}, function (e, t, i) {
    var n = i(101), o = i(486);
    t.mul = function (e, t) {
        var i = new n(e.length + t.length - 1);
        i.fill(0);
        for (var r = 0; r < e.length; r++) for (var s = 0; s < t.length; s++) i[r + s] ^= o.mul(e[r], t[s]);
        return i
    }, t.mod = function (e, t) {
        for (var i = new n(e); i.length - t.length >= 0;) {
            for (var r = i[0], s = 0; s < t.length; s++) i[s] ^= o.mul(t[s], r);
            for (var a = 0; a < i.length && 0 === i[a];) a++;
            i = i.slice(a)
        }
        return i
    }, t.generateECPolynomial = function (e) {
        for (var i = new n([1]), r = 0; r < e; r++) i = t.mul(i, [1, o.exp(r)]);
        return i
    }
}, function (e, t, i) {
    var n = i(101);
    if (n.alloc) var o = n.alloc(512), r = n.alloc(256); else o = new n(512), r = new n(256);
    !function () {
        for (var e = 1, t = 0; t < 255; t++) o[t] = e, r[e] = t, 256 & (e <<= 1) && (e ^= 285);
        for (t = 255; t < 512; t++) o[t] = o[t - 255]
    }(), t.log = function (e) {
        if (e < 1) throw new Error("log(" + e + ")");
        return r[e]
    }, t.exp = function (e) {
        return o[e]
    }, t.mul = function (e, t) {
        return 0 === e || 0 === t ? 0 : o[r[e] + r[t]]
    }
}, function (e, t, i) {
    var n = i(82), o = i(181), r = i(157), s = i(83), a = i(182), l = i(184), c = n.getBCHDigit(7973);

    function u(e, t) {
        return s.getCharCountIndicator(e, t) + 4
    }

    function d(e, t) {
        var i = 0;
        return e.forEach(function (e) {
            var n = u(e.mode, t);
            i += n + e.getBitsLength()
        }), i
    }

    t.from = function (e, t) {
        return a.isValid(e) ? parseInt(e, 10) : t
    }, t.getCapacity = function (e, t, i) {
        if (!a.isValid(e)) throw new Error("Invalid QR Code version");
        void 0 === i && (i = s.BYTE);
        var r = 8 * (n.getSymbolTotalCodewords(e) - o.getTotalCodewordsCount(e, t));
        if (i === s.MIXED) return r;
        var l = r - u(i, e);
        switch (i) {
            case s.NUMERIC:
                return Math.floor(l / 10 * 3);
            case s.ALPHANUMERIC:
                return Math.floor(l / 11 * 2);
            case s.KANJI:
                return Math.floor(l / 13);
            case s.BYTE:
            default:
                return Math.floor(l / 8)
        }
    }, t.getBestVersionForData = function (e, i) {
        var n, o = r.from(i, r.M);
        if (l(e)) {
            if (e.length > 1) return function (e, i) {
                for (var n = 1; n <= 40; n++) if (d(e, n) <= t.getCapacity(n, i, s.MIXED)) return n
            }(e, o);
            if (0 === e.length) return 1;
            n = e[0]
        } else n = e;
        return function (e, i, n) {
            for (var o = 1; o <= 40; o++) if (i <= t.getCapacity(o, n, e)) return o
        }(n.mode, n.getLength(), o)
    }, t.getEncodedBits = function (e) {
        if (!a.isValid(e) || e < 7) throw new Error("Invalid QR Code version");
        for (var t = e << 12; n.getBCHDigit(t) - c >= 0;) t ^= 7973 << n.getBCHDigit(t) - c;
        return e << 12 | t
    }
}, function (e, t, i) {
    var n = i(82), o = n.getBCHDigit(1335);
    t.getEncodedBits = function (e, t) {
        for (var i = e.bit << 3 | t, r = i << 10; n.getBCHDigit(r) - o >= 0;) r ^= 1335 << n.getBCHDigit(r) - o;
        return 21522 ^ (i << 10 | r)
    }
}, function (e, t, i) {
    var n = i(83), o = i(490), r = i(491), s = i(492), a = i(493), l = i(183), c = i(82), u = i(494);

    function d(e) {
        return unescape(encodeURIComponent(e)).length
    }

    function h(e, t, i) {
        for (var n, o = []; null !== (n = e.exec(i));) o.push({
            data: n[0],
            index: n.index,
            mode: t,
            length: n[0].length
        });
        return o
    }

    function p(e) {
        var t, i, o = h(l.NUMERIC, n.NUMERIC, e), r = h(l.ALPHANUMERIC, n.ALPHANUMERIC, e);
        return c.isKanjiModeEnabled() ? (t = h(l.BYTE, n.BYTE, e), i = h(l.KANJI, n.KANJI, e)) : (t = h(l.BYTE_KANJI, n.BYTE, e), i = []), o.concat(r, t, i).sort(function (e, t) {
            return e.index - t.index
        }).map(function (e) {
            return {data: e.data, mode: e.mode, length: e.length}
        })
    }

    function f(e, t) {
        switch (t) {
            case n.NUMERIC:
                return o.getBitsLength(e);
            case n.ALPHANUMERIC:
                return r.getBitsLength(e);
            case n.KANJI:
                return a.getBitsLength(e);
            case n.BYTE:
                return s.getBitsLength(e)
        }
    }

    function A(e, t) {
        var i, l = n.getBestModeForData(e);
        if ((i = n.from(t, l)) !== n.BYTE && i.bit < l.bit) throw new Error('"' + e + '" cannot be encoded with mode ' + n.toString(i) + ".\n Suggested mode is: " + n.toString(l));
        switch (i !== n.KANJI || c.isKanjiModeEnabled() || (i = n.BYTE), i) {
            case n.NUMERIC:
                return new o(e);
            case n.ALPHANUMERIC:
                return new r(e);
            case n.KANJI:
                return new a(e);
            case n.BYTE:
                return new s(e)
        }
    }

    t.fromArray = function (e) {
        return e.reduce(function (e, t) {
            return "string" == typeof t ? e.push(A(t, null)) : t.data && e.push(A(t.data, t.mode)), e
        }, [])
    }, t.fromString = function (e, i) {
        for (var o = function (e, t) {
            for (var i = {}, o = {start: {}}, r = ["start"], s = 0; s < e.length; s++) {
                for (var a = e[s], l = [], c = 0; c < a.length; c++) {
                    var u = a[c], d = "" + s + c;
                    l.push(d), i[d] = {node: u, lastCount: 0}, o[d] = {};
                    for (var h = 0; h < r.length; h++) {
                        var p = r[h];
                        i[p] && i[p].node.mode === u.mode ? (o[p][d] = f(i[p].lastCount + u.length, u.mode) - f(i[p].lastCount, u.mode), i[p].lastCount += u.length) : (i[p] && (i[p].lastCount = u.length), o[p][d] = f(u.length, u.mode) + 4 + n.getCharCountIndicator(u.mode, t))
                    }
                }
                r = l
            }
            for (h = 0; h < r.length; h++) o[r[h]].end = 0;
            return {map: o, table: i}
        }(function (e) {
            for (var t = [], i = 0; i < e.length; i++) {
                var o = e[i];
                switch (o.mode) {
                    case n.NUMERIC:
                        t.push([o, {data: o.data, mode: n.ALPHANUMERIC, length: o.length}, {
                            data: o.data,
                            mode: n.BYTE,
                            length: o.length
                        }]);
                        break;
                    case n.ALPHANUMERIC:
                        t.push([o, {data: o.data, mode: n.BYTE, length: o.length}]);
                        break;
                    case n.KANJI:
                        t.push([o, {data: o.data, mode: n.BYTE, length: d(o.data)}]);
                        break;
                    case n.BYTE:
                        t.push([{data: o.data, mode: n.BYTE, length: d(o.data)}])
                }
            }
            return t
        }(p(e, c.isKanjiModeEnabled())), i), r = u.find_path(o.map, "start", "end"), s = [], a = 1; a < r.length - 1; a++) s.push(o.table[r[a]].node);
        return t.fromArray(function (e) {
            return e.reduce(function (e, t) {
                var i = e.length - 1 >= 0 ? e[e.length - 1] : null;
                return i && i.mode === t.mode ? (e[e.length - 1].data += t.data, e) : (e.push(t), e)
            }, [])
        }(s))
    }, t.rawSplit = function (e) {
        return t.fromArray(p(e, c.isKanjiModeEnabled()))
    }
}, function (e, t, i) {
    var n = i(83);

    function o(e) {
        this.mode = n.NUMERIC, this.data = e.toString()
    }

    o.getBitsLength = function (e) {
        return 10 * Math.floor(e / 3) + (e % 3 ? e % 3 * 3 + 1 : 0)
    }, o.prototype.getLength = function () {
        return this.data.length
    }, o.prototype.getBitsLength = function () {
        return o.getBitsLength(this.data.length)
    }, o.prototype.write = function (e) {
        var t, i, n;
        for (t = 0; t + 3 <= this.data.length; t += 3) i = this.data.substr(t, 3), n = parseInt(i, 10), e.put(n, 10);
        var o = this.data.length - t;
        o > 0 && (i = this.data.substr(t), n = parseInt(i, 10), e.put(n, 3 * o + 1))
    }, e.exports = o
}, function (e, t, i) {
    var n = i(83),
        o = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", " ", "$", "%", "*", "+", "-", ".", "/", ":"];

    function r(e) {
        this.mode = n.ALPHANUMERIC, this.data = e
    }

    r.getBitsLength = function (e) {
        return 11 * Math.floor(e / 2) + e % 2 * 6
    }, r.prototype.getLength = function () {
        return this.data.length
    }, r.prototype.getBitsLength = function () {
        return r.getBitsLength(this.data.length)
    }, r.prototype.write = function (e) {
        var t;
        for (t = 0; t + 2 <= this.data.length; t += 2) {
            var i = 45 * o.indexOf(this.data[t]);
            i += o.indexOf(this.data[t + 1]), e.put(i, 11)
        }
        this.data.length % 2 && e.put(o.indexOf(this.data[t]), 6)
    }, e.exports = r
}, function (e, t, i) {
    var n = i(101), o = i(83);

    function r(e) {
        this.mode = o.BYTE, this.data = new n(e)
    }

    r.getBitsLength = function (e) {
        return 8 * e
    }, r.prototype.getLength = function () {
        return this.data.length
    }, r.prototype.getBitsLength = function () {
        return r.getBitsLength(this.data.length)
    }, r.prototype.write = function (e) {
        for (var t = 0, i = this.data.length; t < i; t++) e.put(this.data[t], 8)
    }, e.exports = r
}, function (e, t, i) {
    var n = i(83), o = i(82);

    function r(e) {
        this.mode = n.KANJI, this.data = e
    }

    r.getBitsLength = function (e) {
        return 13 * e
    }, r.prototype.getLength = function () {
        return this.data.length
    }, r.prototype.getBitsLength = function () {
        return r.getBitsLength(this.data.length)
    }, r.prototype.write = function (e) {
        var t;
        for (t = 0; t < this.data.length; t++) {
            var i = o.toSJIS(this.data[t]);
            if (i >= 33088 && i <= 40956) i -= 33088; else {
                if (!(i >= 57408 && i <= 60351)) throw new Error("Invalid SJIS character: " + this.data[t] + "\nMake sure your charset is UTF-8");
                i -= 49472
            }
            i = 192 * (i >>> 8 & 255) + (255 & i), e.put(i, 13)
        }
    }, e.exports = r
}, function (e, t, i) {
    "use strict";
    var n = {
        single_source_shortest_paths: function (e, t, i) {
            var o = {}, r = {};
            r[t] = 0;
            var s, a, l, c, u, d, h, p = n.PriorityQueue.make();
            for (p.push(t, 0); !p.empty();) for (l in a = (s = p.pop()).value, c = s.cost, u = e[a] || {}) u.hasOwnProperty(l) && (d = c + u[l], h = r[l], (void 0 === r[l] || h > d) && (r[l] = d, p.push(l, d), o[l] = a));
            if (void 0 !== i && void 0 === r[i]) {
                var f = ["Could not find a path from ", t, " to ", i, "."].join("");
                throw new Error(f)
            }
            return o
        }, extract_shortest_path_from_predecessor_list: function (e, t) {
            for (var i = [], n = t; n;) i.push(n), e[n], n = e[n];
            return i.reverse(), i
        }, find_path: function (e, t, i) {
            var o = n.single_source_shortest_paths(e, t, i);
            return n.extract_shortest_path_from_predecessor_list(o, i)
        }, PriorityQueue: {
            make: function (e) {
                var t, i = n.PriorityQueue, o = {};
                for (t in e = e || {}, i) i.hasOwnProperty(t) && (o[t] = i[t]);
                return o.queue = [], o.sorter = e.sorter || i.default_sorter, o
            }, default_sorter: function (e, t) {
                return e.cost - t.cost
            }, push: function (e, t) {
                var i = {value: e, cost: t};
                this.queue.push(i), this.queue.sort(this.sorter)
            }, pop: function () {
                return this.queue.shift()
            }, empty: function () {
                return 0 === this.queue.length
            }
        }
    };
    e.exports = n
}, function (e, t, i) {
    var n = i(19), o = i(496).PNG, r = i(142);
    t.render = function (e, t) {
        var i = r.getOptions(t), n = i.rendererOpts, s = r.getImageWidth(e.modules.size, i);
        n.width = s, n.height = s;
        var a = new o(n);
        return r.qrToImageData(a.data, e, i), a
    }, t.renderToDataURL = function (e, i, n) {
        void 0 === n && (n = i, i = void 0), t.renderToBuffer(e, i, function (e, t) {
            e && n(e);
            var i = "data:image/png;base64,";
            i += t.toString("base64"), n(null, i)
        })
    }, t.renderToBuffer = function (e, i, n) {
        void 0 === n && (n = i, i = void 0);
        var o = t.render(e, i), r = [];
        o.on("error", n), o.on("data", function (e) {
            r.push(e)
        }), o.on("end", function () {
            n(null, Buffer.concat(r))
        }), o.pack()
    }, t.renderToFile = function (e, i, o, r) {
        void 0 === r && (r = o, o = void 0);
        var s = n.createWriteStream(e);
        s.on("error", r), s.on("close", r), t.renderToFileStream(s, i, o)
    }, t.renderToFileStream = function (e, i, n) {
        t.render(i, n).pack().pipe(e)
    }
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(76), r = i(497), s = i(499), a = i(502), l = t.PNG = function (e) {
        o.call(this), e = e || {}, this.width = 0 | e.width, this.height = 0 | e.height, this.data = this.width > 0 && this.height > 0 ? new Buffer(4 * this.width * this.height) : null, e.fill && this.data && this.data.fill(0), this.gamma = 0, this.readable = this.writable = !0, this._parser = new r(e), this._parser.on("error", this.emit.bind(this, "error")), this._parser.on("close", this._handleClose.bind(this)), this._parser.on("metadata", this._metadata.bind(this)), this._parser.on("gamma", this._gamma.bind(this)), this._parser.on("parsed", function (e) {
            this.data = e, this.emit("parsed", e)
        }.bind(this)), this._packer = new s(e), this._packer.on("data", this.emit.bind(this, "data")), this._packer.on("end", this.emit.bind(this, "end")), this._parser.on("close", this._handleClose.bind(this)), this._packer.on("error", this.emit.bind(this, "error"))
    };
    n.inherits(l, o), l.sync = a, l.prototype.pack = function () {
        return this.data && this.data.length ? (process.nextTick(function () {
            this._packer.pack(this.data, this.width, this.height, this.gamma)
        }.bind(this)), this) : (this.emit("error", "No data provided"), this)
    }, l.prototype.parse = function (e, t) {
        var i, n;
        t && (i = function (e) {
            this.removeListener("error", n), this.data = e, t(null, this)
        }.bind(this), n = function (e) {
            this.removeListener("parsed", i), t(e, null)
        }.bind(this), this.once("parsed", i), this.once("error", n));
        return this.end(e), this
    }, l.prototype.write = function (e) {
        return this._parser.write(e), !0
    }, l.prototype.end = function (e) {
        this._parser.end(e)
    }, l.prototype._metadata = function (e) {
        this.width = e.width, this.height = e.height, this.emit("metadata", e)
    }, l.prototype._gamma = function (e) {
        this.gamma = e
    }, l.prototype._handleClose = function () {
        this._parser.writable || this._packer.readable || this.emit("close")
    }, l.bitblt = function (e, t, i, n, o, r, s, a) {
        if (n |= 0, o |= 0, r |= 0, s |= 0, a |= 0, (i |= 0) > e.width || n > e.height || i + o > e.width || n + r > e.height) throw new Error("bitblt reading outside image");
        if (s > t.width || a > t.height || s + o > t.width || a + r > t.height) throw new Error("bitblt writing outside image");
        for (var l = 0; l < r; l++) e.data.copy(t.data, (a + l) * t.width + s << 2, (n + l) * e.width + i << 2, (n + l) * e.width + i + o << 2)
    }, l.prototype.bitblt = function (e, t, i, n, o, r, s) {
        return l.bitblt(this, e, t, i, n, o, r, s), this
    }, l.adjustGamma = function (e) {
        if (e.gamma) {
            for (var t = 0; t < e.height; t++) for (var i = 0; i < e.width; i++) for (var n = e.width * t + i << 2, o = 0; o < 3; o++) {
                var r = e.data[n + o] / 255;
                r = Math.pow(r, 1 / 2.2 / e.gamma), e.data[n + o] = Math.round(255 * r)
            }
            e.gamma = 0
        }
    }, l.prototype.adjustGamma = function () {
        l.adjustGamma(this)
    }
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(63), r = i(185), s = i(498), a = i(189), l = i(191), c = i(192), u = e.exports = function (e) {
        r.call(this), this._parser = new a(e, {
            read: this.read.bind(this),
            error: this._handleError.bind(this),
            metadata: this._handleMetaData.bind(this),
            gamma: this.emit.bind(this, "gamma"),
            palette: this._handlePalette.bind(this),
            transColor: this._handleTransColor.bind(this),
            finished: this._finished.bind(this),
            inflateData: this._inflateData.bind(this)
        }), this._options = e, this.writable = !0, this._parser.start()
    };
    n.inherits(u, r), u.prototype._handleError = function (e) {
        this.emit("error", e), this.writable = !1, this.destroy(), this._inflate && this._inflate.destroy && this._inflate.destroy(), this._filter && (this._filter.destroy(), this._filter.on("error", function () {
        })), this.errord = !0
    }, u.prototype._inflateData = function (e) {
        if (!this._inflate) if (this._bitmapInfo.interlace) this._inflate = o.createInflate(), this._inflate.on("error", this.emit.bind(this, "error")), this._filter.on("complete", this._complete.bind(this)), this._inflate.pipe(this._filter); else {
            var t = (1 + (this._bitmapInfo.width * this._bitmapInfo.bpp * this._bitmapInfo.depth + 7 >> 3)) * this._bitmapInfo.height,
                i = Math.max(t, o.Z_MIN_CHUNK);
            this._inflate = o.createInflate({chunkSize: i});
            var n = t, r = this.emit.bind(this, "error");
            this._inflate.on("error", function (e) {
                n && r(e)
            }), this._filter.on("complete", this._complete.bind(this));
            var s = this._filter.write.bind(this._filter);
            this._inflate.on("data", function (e) {
                n && (e.length > n && (e = e.slice(0, n)), n -= e.length, s(e))
            }), this._inflate.on("end", this._filter.end.bind(this._filter))
        }
        this._inflate.write(e)
    }, u.prototype._handleMetaData = function (e) {
        this.emit("metadata", e), this._bitmapInfo = Object.create(e), this._filter = new s(this._bitmapInfo)
    }, u.prototype._handleTransColor = function (e) {
        this._bitmapInfo.transColor = e
    }, u.prototype._handlePalette = function (e) {
        this._bitmapInfo.palette = e
    }, u.prototype._finished = function () {
        this.errord || (this._inflate ? this._inflate.end() : this.emit("error", "No Inflate block"), this.destroySoon())
    }, u.prototype._complete = function (e) {
        if (!this.errord) {
            try {
                var t = l.dataToBitMap(e, this._bitmapInfo), i = c(t, this._bitmapInfo);
                t = null
            } catch (e) {
                return void this._handleError(e)
            }
            this.emit("parsed", i)
        }
    }
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(185), r = i(186), s = e.exports = function (e) {
        o.call(this);
        var t = [], i = this;
        this._filter = new r(e, {
            read: this.read.bind(this), write: function (e) {
                t.push(e)
            }, complete: function () {
                i.emit("complete", Buffer.concat(t))
            }
        }), this._filter.start()
    };
    n.inherits(s, o)
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(76), r = i(127), s = i(193), a = e.exports = function (e) {
        o.call(this);
        var t = e || {};
        this._packer = new s(t), this._deflate = this._packer.createDeflate(), this.readable = !0
    };
    n.inherits(a, o), a.prototype.pack = function (e, t, i, n) {
        this.emit("data", new Buffer(r.PNG_SIGNATURE)), this.emit("data", this._packer.packIHDR(t, i)), n && this.emit("data", this._packer.packGAMA(n));
        var o = this._packer.filterData(e, t, i);
        this._deflate.on("error", this.emit.bind(this, "error")), this._deflate.on("data", function (e) {
            this.emit("data", this._packer.packIDAT(e))
        }.bind(this)), this._deflate.on("end", function () {
            this.emit("data", this._packer.packIEND()), this.emit("end")
        }.bind(this)), this._deflate.end(o)
    }
}, function (e, t, i) {
    "use strict";
    var n = i(127);
    e.exports = function (e, t, i, o) {
        var r, s = -1 !== [n.COLORTYPE_COLOR_ALPHA, n.COLORTYPE_ALPHA].indexOf(o.colorType);
        if (o.colorType === o.inputColorType) {
            var a = (r = new ArrayBuffer(2), new DataView(r).setInt16(0, 256, !0), 256 !== new Int16Array(r)[0]);
            if (8 === o.bitDepth || 16 === o.bitDepth && a) return e
        }
        var l = 16 !== o.bitDepth ? e : new Uint16Array(e.buffer), c = 255,
            u = n.COLORTYPE_TO_BPP_MAP[o.inputColorType];
        4 != u || o.inputHasAlpha || (u = 3);
        var d = n.COLORTYPE_TO_BPP_MAP[o.colorType];
        16 === o.bitDepth && (c = 65535, d *= 2);
        var h = new Buffer(t * i * d), p = 0, f = 0, A = o.bgColor || {};

        function g(e, t) {
            var i, r, a, l = c;
            switch (o.inputColorType) {
                case n.COLORTYPE_COLOR_ALPHA:
                    l = e[t + 3], i = e[t], r = e[t + 1], a = e[t + 2];
                    break;
                case n.COLORTYPE_COLOR:
                    i = e[t], r = e[t + 1], a = e[t + 2];
                    break;
                case n.COLORTYPE_ALPHA:
                    l = e[t + 1], r = i = e[t], a = i;
                    break;
                case n.COLORTYPE_GRAYSCALE:
                    r = i = e[t], a = i;
                    break;
                default:
                    throw new Error("input color type:" + o.inputColorType + " is not supported at present")
            }
            return o.inputHasAlpha && (s || (l /= c, i = Math.min(Math.max(Math.round((1 - l) * A.red + l * i), 0), c), r = Math.min(Math.max(Math.round((1 - l) * A.green + l * r), 0), c), a = Math.min(Math.max(Math.round((1 - l) * A.blue + l * a), 0), c))), {
                red: i,
                green: r,
                blue: a,
                alpha: l
            }
        }

        void 0 === A.red && (A.red = c), void 0 === A.green && (A.green = c), void 0 === A.blue && (A.blue = c);
        for (var v = 0; v < i; v++) for (var m = 0; m < t; m++) {
            var C = g(l, p);
            switch (o.colorType) {
                case n.COLORTYPE_COLOR_ALPHA:
                case n.COLORTYPE_COLOR:
                    8 === o.bitDepth ? (h[f] = C.red, h[f + 1] = C.green, h[f + 2] = C.blue, s && (h[f + 3] = C.alpha)) : (h.writeUInt16BE(C.red, f), h.writeUInt16BE(C.green, f + 2), h.writeUInt16BE(C.blue, f + 4), s && h.writeUInt16BE(C.alpha, f + 6));
                    break;
                case n.COLORTYPE_ALPHA:
                case n.COLORTYPE_GRAYSCALE:
                    var y = (C.red + C.green + C.blue) / 3;
                    8 === o.bitDepth ? (h[f] = y, s && (h[f + 1] = C.alpha)) : (h.writeUInt16BE(y, f), s && h.writeUInt16BE(C.alpha, f + 2))
            }
            p += u, f += d
        }
        return h
    }
}, function (e, t, i) {
    "use strict";
    var n = i(188);
    var o = {
        0: function (e, t, i, n, o) {
            for (var r = 0; r < i; r++) n[o + r] = e[t + r]
        }, 1: function (e, t, i, n, o, r) {
            for (var s = 0; s < i; s++) {
                var a = s >= r ? e[t + s - r] : 0, l = e[t + s] - a;
                n[o + s] = l
            }
        }, 2: function (e, t, i, n, o) {
            for (var r = 0; r < i; r++) {
                var s = t > 0 ? e[t + r - i] : 0, a = e[t + r] - s;
                n[o + r] = a
            }
        }, 3: function (e, t, i, n, o, r) {
            for (var s = 0; s < i; s++) {
                var a = s >= r ? e[t + s - r] : 0, l = t > 0 ? e[t + s - i] : 0, c = e[t + s] - (a + l >> 1);
                n[o + s] = c
            }
        }, 4: function (e, t, i, o, r, s) {
            for (var a = 0; a < i; a++) {
                var l = a >= s ? e[t + a - s] : 0, c = t > 0 ? e[t + a - i] : 0,
                    u = t > 0 && a >= s ? e[t + a - (i + s)] : 0, d = e[t + a] - n(l, c, u);
                o[r + a] = d
            }
        }
    }, r = {
        0: function (e, t, i) {
            for (var n = 0, o = t + i, r = t; r < o; r++) n += Math.abs(e[r]);
            return n
        }, 1: function (e, t, i, n) {
            for (var o = 0, r = 0; r < i; r++) {
                var s = r >= n ? e[t + r - n] : 0, a = e[t + r] - s;
                o += Math.abs(a)
            }
            return o
        }, 2: function (e, t, i) {
            for (var n = 0, o = t + i, r = t; r < o; r++) {
                var s = t > 0 ? e[r - i] : 0, a = e[r] - s;
                n += Math.abs(a)
            }
            return n
        }, 3: function (e, t, i, n) {
            for (var o = 0, r = 0; r < i; r++) {
                var s = r >= n ? e[t + r - n] : 0, a = t > 0 ? e[t + r - i] : 0, l = e[t + r] - (s + a >> 1);
                o += Math.abs(l)
            }
            return o
        }, 4: function (e, t, i, o) {
            for (var r = 0, s = 0; s < i; s++) {
                var a = s >= o ? e[t + s - o] : 0, l = t > 0 ? e[t + s - i] : 0,
                    c = t > 0 && s >= o ? e[t + s - (i + o)] : 0, u = e[t + s] - n(a, l, c);
                r += Math.abs(u)
            }
            return r
        }
    };
    e.exports = function (e, t, i, n, s) {
        var a;
        if ("filterType" in n && -1 !== n.filterType) {
            if ("number" != typeof n.filterType) throw new Error("unrecognised filter types");
            a = [n.filterType]
        } else a = [0, 1, 2, 3, 4];
        16 === n.bitDepth && (s *= 2);
        for (var l = t * s, c = 0, u = 0, d = new Buffer((l + 1) * i), h = a[0], p = 0; p < i; p++) {
            if (a.length > 1) for (var f = 1 / 0, A = 0; A < a.length; A++) {
                var g = r[a[A]](e, u, l, s);
                g < f && (h = a[A], f = g)
            }
            d[c] = h, c++, o[h](e, u, l, d, c, s), c += l, u += l
        }
        return d
    }
}, function (e, t, i) {
    "use strict";
    var n = i(503), o = i(506);
    t.read = function (e, t) {
        return n(e, t || {})
    }, t.write = function (e, t) {
        return o(e, t)
    }
}, function (e, t, i) {
    "use strict";
    var n = !0, o = i(63), r = i(504);
    o.deflateSync || (n = !1);
    var s = i(194), a = i(505), l = i(189), c = i(191), u = i(192);
    e.exports = function (e, t) {
        if (!n) throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");
        var i, d, h;
        var p = [];
        var f = new s(e);
        if (new l(t, {
            read: f.read.bind(f), error: function (e) {
                i = e
            }, metadata: function (e) {
                d = e
            }, gamma: function (e) {
                h = e
            }, palette: function (e) {
                d.palette = e
            }, transColor: function (e) {
                d.transColor = e
            }, inflateData: function (e) {
                p.push(e)
            }
        }).start(), f.process(), i) throw i;
        var A, g = Buffer.concat(p);
        if (p.length = 0, d.interlace) A = o.inflateSync(g); else {
            var v = (1 + (d.width * d.bpp * d.depth + 7 >> 3)) * d.height;
            A = r(g, {chunkSize: v, maxLength: v})
        }
        if (g = null, !A || !A.length) throw new Error("bad png - invalid inflate data response");
        var m = a.process(A, d);
        g = null;
        var C = c.dataToBitMap(m, d);
        m = null;
        var y = u(C, d);
        return d.data = y, d.gamma = h || 0, d
    }
}, function (e, t, i) {
    "use strict";
    var n = i(98).ok, o = i(63), r = i(6), s = i(40).kMaxLength;

    function a(e) {
        if (!(this instanceof a)) return new a(e);
        e && e.chunkSize < o.Z_MIN_CHUNK && (e.chunkSize = o.Z_MIN_CHUNK), o.Inflate.call(this, e), this._offset = void 0 === this._offset ? this._outOffset : this._offset, this._buffer = this._buffer || this._outBuffer, e && null != e.maxLength && (this._maxLength = e.maxLength)
    }

    function l(e, t) {
        t && process.nextTick(t), e._handle && (e._handle.close(), e._handle = null)
    }

    function c(e, t) {
        return function (e, t) {
            if ("string" == typeof t && (t = Buffer.from(t)), !(t instanceof Buffer)) throw new TypeError("Not a string or buffer");
            var i = e._finishFlushFlag;
            return null == i && (i = o.Z_FINISH), e._processChunk(t, i)
        }(new a(t), e)
    }

    a.prototype._processChunk = function (e, t, i) {
        if ("function" == typeof i) return o.Inflate._processChunk.call(this, e, t, i);
        var r, a = this, c = e && e.length, u = this._chunkSize - this._offset, d = this._maxLength, h = 0, p = [],
            f = 0;

        function A(e, t) {
            if (!a._hadError) {
                var i = u - t;
                if (n(i >= 0, "have should not go down"), i > 0) {
                    var o = a._buffer.slice(a._offset, a._offset + i);
                    if (a._offset += i, o.length > d && (o = o.slice(0, d)), p.push(o), f += o.length, 0 === (d -= o.length)) return !1
                }
                return (0 === t || a._offset >= a._chunkSize) && (u = a._chunkSize, a._offset = 0, a._buffer = Buffer.allocUnsafe(a._chunkSize)), 0 === t && (h += c - e, c = e, !0)
            }
        }

        this.on("error", function (e) {
            r = e
        }), n(this._handle, "zlib binding closed");
        do {
            var g = this._handle.writeSync(t, e, h, c, this._buffer, this._offset, u);
            g = g || this._writeState
        } while (!this._hadError && A(g[0], g[1]));
        if (this._hadError) throw r;
        if (f >= s) throw l(this), new RangeError("Cannot create final Buffer. It would be larger than 0x" + s.toString(16) + " bytes");
        var v = Buffer.concat(p, f);
        return l(this), v
    }, r.inherits(a, o.Inflate), e.exports = t = c, t.Inflate = a, t.createInflate = function (e) {
        return new a(e)
    }, t.inflateSync = c
}, function (e, t, i) {
    "use strict";
    var n = i(194), o = i(186);
    t.process = function (e, t) {
        var i = [], r = new n(e);
        return new o(t, {
            read: r.read.bind(r), write: function (e) {
                i.push(e)
            }, complete: function () {
            }
        }).start(), r.process(), Buffer.concat(i)
    }
}, function (e, t, i) {
    "use strict";
    var n = !0, o = i(63);
    o.deflateSync || (n = !1);
    var r = i(127), s = i(193);
    e.exports = function (e, t) {
        if (!n) throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");
        var i = new s(t || {}), a = [];
        a.push(new Buffer(r.PNG_SIGNATURE)), a.push(i.packIHDR(e.width, e.height)), e.gamma && a.push(i.packGAMA(e.gamma));
        var l = i.filterData(e.data, e.width, e.height), c = o.deflateSync(l, i.getDeflateOptions());
        if (l = null, !c || !c.length) throw new Error("bad png - invalid compressed data response");
        return a.push(i.packIDAT(c)), a.push(i.packIEND()), Buffer.concat(a)
    }
}, function (e, t, i) {
    var n = i(142), o = {WW: " ", WB: "▄", BB: "█", BW: "▀"};
    t.render = function (e, t, i) {
        var r = e.modules.size, s = e.modules.data, a = n.getOptions(t), l = "",
            c = Array(r + 2 * a.margin + 1).join(o.WW);
        c = Array(a.margin / 2 + 1).join(c + "\n");
        var u, d, h = Array(a.margin + 1).join(o.WW);
        l += c;
        for (var p = 0; p < r; p += 2) {
            l += h;
            for (var f = 0; f < r; f++) {
                var A = s[p * r + f], g = s[(p + 1) * r + f];
                l += (d = g, (u = A) && d ? o.BB : u && !d ? o.BW : !u && d ? o.WB : o.WW)
            }
            l += h + "\n"
        }
        return l += c.slice(0, -1), "function" == typeof i && i(null, l), l
    }, t.renderToFile = function (e, n, o, r) {
        void 0 === r && (r = o, o = void 0);
        var s = i(19), a = t.render(n, o);
        s.writeFile(e, a, r)
    }
}, function (e, t) {
    t.render = function (e, t, i) {
        var n = e.modules.size, o = e.modules.data, r = "[47m  [0m", s = "", a = Array(n + 3).join(r),
            l = Array(2).join(r);
        s += a + "\n";
        for (var c = 0; c < n; ++c) {
            s += r;
            for (var u = 0; u < n; u++) s += o[c * n + u] ? "[40m  [0m" : r;
            s += l + "\n"
        }
        return s += a + "\n", "function" == typeof i && i(null, s), s
    }
}, function (e, t, i) {
    var n = i(195);
    t.render = n.render, t.renderToFile = function (e, n, o, r) {
        void 0 === r && (r = o, o = void 0);
        var s = i(19),
            a = '<?xml version="1.0" encoding="utf-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">' + t.render(n, o);
        s.writeFile(e, a, r)
    }
}, function (e, t, i) {
    var n = i(511), o = i(180), r = i(512), s = i(195);

    function a(e, t, i, r, s) {
        var a = [].slice.call(arguments, 1), l = a.length, c = "function" == typeof a[l - 1];
        if (!c && !n()) throw new Error("Callback required as last argument");
        if (!c) {
            if (l < 1) throw new Error("Too few arguments provided");
            return 1 === l ? (i = t, t = r = void 0) : 2 !== l || t.getContext || (r = i, i = t, t = void 0), new Promise(function (n, s) {
                try {
                    var a = o.create(i, r);
                    n(e(a, t, r))
                } catch (e) {
                    s(e)
                }
            })
        }
        if (l < 2) throw new Error("Too few arguments provided");
        2 === l ? (s = i, i = t, t = r = void 0) : 3 === l && (t.getContext && void 0 === s ? (s = r, r = void 0) : (s = r, r = i, i = t, t = void 0));
        try {
            var u = o.create(i, r);
            s(null, e(u, t, r))
        } catch (e) {
            s(e)
        }
    }

    t.create = o.create, t.toCanvas = a.bind(null, r.render), t.toDataURL = a.bind(null, r.renderToDataURL), t.toString = a.bind(null, function (e, t, i) {
        return s.render(e, i)
    })
}, function (e, t) {
    e.exports = function () {
        return "function" == typeof Promise && Promise.prototype && Promise.prototype.then
    }
}, function (e, t, i) {
    var n = i(142);
    t.render = function (e, t, i) {
        var o = i, r = t;
        void 0 !== o || t && t.getContext || (o = t, t = void 0), t || (r = function () {
            try {
                return document.createElement("canvas")
            } catch (e) {
                throw new Error("You need to specify a canvas element")
            }
        }()), o = n.getOptions(o);
        var s = n.getImageWidth(e.modules.size, o), a = r.getContext("2d"), l = a.createImageData(s, s);
        return n.qrToImageData(l.data, e, o), function (e, t, i) {
            e.clearRect(0, 0, t.width, t.height), t.style || (t.style = {}), t.height = i, t.width = i, t.style.height = i + "px", t.style.width = i + "px"
        }(a, r, s), a.putImageData(l, 0, 0), r
    }, t.renderToDataURL = function (e, i, n) {
        var o = n;
        void 0 !== o || i && i.getContext || (o = i, i = void 0), o || (o = {});
        var r = t.render(e, i, o), s = o.type || "image/png", a = o.rendererOpts || {};
        return r.toDataURL(s, a.quality)
    }
}, , function (e, t, i) {
    e.exports = function (e) {
        function t(n) {
            if (i[n]) return i[n].exports;
            var o = i[n] = {i: n, l: !1, exports: {}};
            return e[n].call(o.exports, o, o.exports, t), o.l = !0, o.exports
        }

        var i = {};
        return t.m = e, t.c = i, t.i = function (e) {
            return e
        }, t.d = function (e, i, n) {
            t.o(e, i) || Object.defineProperty(e, i, {configurable: !1, enumerable: !0, get: n})
        }, t.n = function (e) {
            var i = e && e.__esModule ? function () {
                return e.default
            } : function () {
                return e
            };
            return t.d(i, "a", i), i
        }, t.o = function (e, t) {
            return Object.prototype.hasOwnProperty.call(e, t)
        }, t.p = "/dist/", t(t.s = 4)
    }([function (e, t) {
        e.exports = {
            inserted: function (e, t, i) {
                var n = i.context.$refs[t.arg];
                n && n.addItem({el: e, value: t.value})
            }, unbind: function (e, t, i) {
                var n = i.context.$refs[t.arg];
                n && n.removeItem({el: e, value: t.value})
            }
        }
    }, function (e, t, i) {
        var n = i(5)(i(2), i(6), null, null, null);
        e.exports = n.exports
    }, function (e, t, i) {
        "use strict";
        Object.defineProperty(t, "__esModule", {value: !0});
        var n = i(3);
        t.default = {
            name: "Popup",
            props: {
                appendToBody: {type: Boolean, default: !0},
                arrowClass: String,
                direction: {type: String, default: "bottom"},
                display: {type: Boolean, default: !1},
                padding: {type: Number, default: 0},
                trigger: {type: String, default: "hover"},
                scrollShow: {type: Boolean, default: !0}
            },
            data: function () {
                return {
                    arrowStyle: {},
                    delay: 100,
                    directionMap: {top: "height", left: "width"},
                    secondDirection: "",
                    left: 0,
                    top: 0,
                    currentElement: null,
                    willHide: !1
                }
            },
            computed: {
                directionClass: function () {
                    var e = /(top)|(bottom)|(left)|(right)/i, t = e.exec(this.direction) || [],
                        i = this.secondDirection ? e.exec(this.secondDirection)[0] : "", n = t[0] || "";
                    return "" === i ? "popup-" + n : "popup-" + i
                }, triggerEvent: function () {
                    switch (this.trigger) {
                        case"hover":
                            return "mouseenter";
                        case"focus":
                            return "focus";
                        case"click":
                            return "click"
                    }
                }, unTriggerEl: function () {
                    return "click" === this.trigger ? document : this.$el
                }, unTriggerEvent: function () {
                    switch (this.trigger) {
                        case"hover":
                            return "mouseleave";
                        case"focus":
                            return "blur";
                        case"click":
                            return "click"
                    }
                }
            },
            mounted: function () {
                this.appendToBody && document.body.appendChild(this.$el), this.$el.addEventListener(this.triggerEvent, this.handlePopupVisible), this.unTriggerEl.addEventListener(this.unTriggerEvent, this.handlePopupInvisible), this.handleResizeThrottle = i.i(n.a)(this.handleResize, 16), window.addEventListener("resize", this.handleResizeThrottle)
            },
            beforeDestroy: function () {
                this.$el.removeEventListener(this.triggerEvent, this.handlePopupVisible), this.unTriggerEl.removeEventListener(this.unTriggerEvent, this.handlePopupInvisible), window.removeEventListener("resize", this.handleResizeThrottle)
            },
            destroyed: function () {
                this.appendToBody && this.$el && document.body.hasChildNodes(this.$el) && document.body.removeChild(this.$el)
            },
            methods: {
                addItem: function (e) {
                    e.el.handleVisible = this.handleVisible.bind(this, e.value, e.el), e.el.addEventListener(this.triggerEvent, e.el.handleVisible), "click" !== this.trigger && (e.el.handleInvisible = this.handleInvisible.bind(this, e.value), e.el.addEventListener(this.unTriggerEvent, e.el.handleInvisible)), this.bindScroll(e.el)
                }, removeItem: function (e) {
                    e.el.removeEventListener(this.triggerEvent, e.el.handleVisible), "click" !== this.trigger && e.el.removeEventListener(this.unTriggerEvent, e.el.handleInvisible), this.unbindScroll(e.el)
                }, bindScroll: function (e) {
                    for (e = e.parentNode; e;) e.addEventListener("scroll", this.handleScroll), e = e.parentNode
                }, unbindScroll: function (e) {
                    for (e = e.parentNode; e;) e.removeEventListener("scroll", this.handleScroll), e = e.parentNode
                }, computePosition: function (e, t) {
                    e = e.getBoundingClientRect();
                    var i = 0, n = 0, o = (t = t.getBoundingClientRect()).top - e.height - this.padding,
                        r = t.left + t.width + this.padding, s = t.top + t.height + this.padding,
                        a = t.left - e.width - this.padding;
                    /(top)|(bottom)/i.test(this.direction) ? (i = t.left + (t.width - e.width) / 2, "bottomStart" !== this.direction && "topStart" !== this.direction || (i = t.left), "bottomEnd" !== this.direction && "topEnd" !== this.direction || (i = t.left - e.width + t.width), i < 0 ? (i = 0, this.arrowStyle = {left: (t.left + t.right) / 2 + "px"}) : i + e.width > window.innerWidth ? (i = window.innerWidth - e.width, this.arrowStyle = {left: (t.left + t.right) / 2 - i + "px"}) : this.arrowStyle = {left: (t.left + t.right) / 2 - i + "px"}, "top" === this.direction || "topStart" === this.direction || "topEnd" === this.direction ? o < 0 && s + e.height <= window.innerHeight ? (n = s, this.secondDirection = "bottom", "topStart" === this.direction && (this.secondDirection = "bottomStart", this.arrowStyle = {left: (t.left + t.right) / 2 - i + "px"}), "topEnd" === this.direction && (this.secondDirection = "bottomEnd", this.arrowStyle = {left: (t.left + t.right) / 2 - i + "px"})) : (n = o, this.secondDirection = "", this.arrowStyle = {left: (t.left + t.right) / 2 - i + "px"}) : s + e.height > window.innerHeight && o >= 0 ? (n = o, this.secondDirection = "top", "bottomStart" === this.direction && (this.secondDirection = "topStart", this.arrowStyle = {left: (t.left + t.right) / 2 - i + "px"}), "bottomEnd" === this.direction && (this.secondDirection = "topEnd", this.arrowStyle = {left: (t.left + t.right) / 2 - i + "px"})) : (n = s, this.secondDirection = "", this.arrowStyle = {left: (t.left + t.right) / 2 - i + "px"})) : /(left)|(right)/i.test(this.direction) && (n = t.top + (t.height - e.height) / 2, "leftStart" !== this.direction && "rightStart" !== this.direction || (n = t.top), "leftEnd" !== this.direction && "rightEnd" !== this.direction || (n = t.top - e.height + t.height), n < 0 ? (n = 0, this.arrowStyle = {top: (t.top + t.bottom) / 2 + "px"}) : n + e.height > window.innerHeight ? (n = window.innerHeight - e.height, this.arrowStyle = {top: (t.top + t.bottom) / 2 - n + "px"}) : this.arrowStyle = {top: (t.top + t.bottom) / 2 - n + "px"}, "left" === this.direction || "leftStart" === this.direction || "leftEnd" === this.direction ? a < 0 && r + e.width <= window.innerWidth ? (i = r, this.secondDirection = "right", "leftStart" === this.direction && (this.secondDirection = "rightStart", this.arrowStyle = {top: (t.top + t.bottom) / 2 - n + "px"}), "leftEnd" === this.direction && (this.secondDirection = "rightEnd", this.arrowStyle = {top: (t.top + t.bottom) / 2 - n + "px"})) : (i = a, this.secondDirection = "", this.arrowStyle = {top: (t.top + t.bottom) / 2 - n + "px"}) : r + e.width > window.innerWidth && a >= 0 ? (i = a, this.secondDirection = "left", "rightStart" === this.direction && (this.secondDirection = "leftStart", this.arrowStyle = {top: (t.top + t.bottom) / 2 - n + "px"}), "rightEnd" === this.direction && (this.secondDirection = "leftEnd", this.arrowStyle = {top: (t.top + t.bottom) / 2 - n + "px"})) : (i = r, this.secondDirection = "", this.arrowStyle = {top: (t.top + t.bottom) / 2 - n + "px"})), this.top = n, this.left = i
                }, handleVisible: function (e, t, i) {
                    var n = this;
                    if ("click" === this.trigger && this.display && !0 !== i) return this.handleInvisible(e);
                    this.willHide = !1, this.currentElement = t, this.currentValue = e, this.$emit("update:display", !0), this.$emit("show", e), this.$nextTick(function () {
                        setTimeout(function () {
                            n.computePosition(n.$el, n.currentElement)
                        })
                    })
                }, handleInvisible: function (e) {
                    var t = this;
                    "click" === this.trigger ? (this.$emit("update:display", !1), this.$emit("hide", e)) : (this.willHide = !0, setTimeout(function () {
                        t.willHide && (t.$emit("update:display", !1), t.$emit("hide", e))
                    }, this.delay))
                }, handleScroll: function () {
                    this.scrollShow ? this.display && this.computePosition(this.$el, this.currentElement) : (this.$emit("update:display", !1), this.$emit("hide"))
                }, handlePopupVisible: function (e) {
                    e.stopPropagation(), this.willHide = !1, this.$emit("update:display", !0), this.$emit("show", this.value)
                }, handlePopupInvisible: function (e) {
                    var t = this;
                    "click" === this.trigger && this.isClosest(e.target, this.currentElement) || ("click" === this.trigger ? (this.$emit("update:display", !1), this.$emit("hide", this.value)) : (this.willHide = !0, setTimeout(function () {
                        t.willHide && (t.$emit("update:display", !1), t.$emit("hide", t.value))
                    }, this.delay)))
                }, handleResize: function () {
                    this.display && this.handleVisible(this.value, this.currentElement, !0)
                }, show: function (e, t) {
                    this.handleVisible(t, e)
                }, hide: function () {
                    this.handleInvisible()
                }, isDirectionLine: function (e) {
                    return "top" === e || "bottom" === e ? "top" === this.direction || "bottom" === this.direction : "left" === this.direction || "right" === this.direction
                }, isClosest: function (e, t) {
                    return e !== document && (e === t || this.isClosest(e.parentNode, t))
                }
            }
        }
    }, function (e, t, i) {
        "use strict";
        t.a = function (e, t) {
            var i = this, n = 0;
            return function () {
                for (var o = arguments.length, r = Array(o), s = 0; s < o; s++) r[s] = arguments[s];
                var a = +new Date;
                a - n > t && (e.apply(i, r), n = a)
            }
        }
    }, function (e, t, i) {
        var n = i(0), o = i(1);
        o.install = function (e) {
            e.directive("popup", n), e.component(o.name, o)
        }, e.exports = o
    }, function (e, t) {
        e.exports = function (e, t, i, n, o) {
            var r, s = e = e || {}, a = typeof e.default;
            "object" !== a && "function" !== a || (r = e, s = e.default);
            var l, c = "function" == typeof s ? s.options : s;
            if (t && (c.render = t.render, c.staticRenderFns = t.staticRenderFns), n && (c._scopeId = n), o ? (l = function (e) {
                (e = e || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) || "undefined" == typeof __VUE_SSR_CONTEXT__ || (e = __VUE_SSR_CONTEXT__), i && i.call(this, e), e && e._registeredComponents && e._registeredComponents.add(o)
            }, c._ssrRegister = l) : i && (l = i), l) {
                var u = c.functional, d = u ? c.render : c.beforeCreate;
                u ? c.render = function (e, t) {
                    return l.call(t), d(e, t)
                } : c.beforeCreate = d ? [].concat(d, l) : [l]
            }
            return {esModule: r, exports: s, options: c}
        }
    }, function (e, t) {
        e.exports = {
            render: function () {
                var e = this, t = e.$createElement, i = e._self._c || t;
                return i("div", {
                    class: e.directionClass,
                    style: {display: e.display ? "block" : "none", left: e.left + "px", top: e.top + "px"},
                    attrs: {tabindex: "999"}
                }, [e._t("default"), e._v(" "), i("span", {
                    staticClass: "popup-arrow",
                    class: e.arrowClass,
                    style: e.arrowStyle
                })], 2)
            }, staticRenderFns: []
        }
    }])
}, function (e, t, i) {
    "use strict";
    var n = i(1e3);
    i.n(n).a
}, , , function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        e[e.Success = 0] = "Success", e[e.FunctionUnExist = 1] = "FunctionUnExist", e[e.ParamError = 2] = "ParamError", e[e.CallFailed = 3] = "CallFailed", e[e.NotAllowed = 4] = "NotAllowed"
    }(t.NativeFunctionErrorCode || (t.NativeFunctionErrorCode = {}))
}, , , , , , , function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        let t;
        !function (e) {
            e[e.Default = 0] = "Default", e[e.Normal = 1] = "Normal", e[e.Vip = 2] = "Vip", e[e.SuperVip = 3] = "SuperVip"
        }(t = e.SkinType || (e.SkinType = {})), e.defaultSkinInfo = {
            type: t.Default,
            id: 1
        }, e.cacheDir = `${__profilesDir}/speedcurve-skin`
    }(t.SpeedCurveSkinHelperNS || (t.SpeedCurveSkinHelperNS = {}))
}, function (e, t, i) {
    "use strict";
    var n = i(204);

    function o() {
        this._state = 0, this._response = {
            host: "unknown",
            alive: !1,
            output: "unknown",
            time: "unknown",
            min: "unknown",
            max: "unknown",
            avg: "unknown",
            stddev: "unknown"
        }, this._times = [], this._lines = [], this._stripRegex = /[ ]*\r?\n?$/g
    }

    o.prototype.STATES = {INIT: 0, HEADER: 1, BODY: 2, FOOTER: 3, END: 4}, o.prototype._changeState = function (e) {
        if (n.values(this.STATES).indexOf(e) < 0) throw new Error("Unknown state");
        return this._state = e, this
    }, o.prototype._processHeader = function (e) {
        throw new Error("Subclass should implement this method")
    }, o.prototype._processBody = function (e) {
        throw new Error("Subclass should implement this method")
    }, o.prototype._processFooter = function (e) {
        throw new Error("Subclass should implement this method")
    }, o.prototype.eat = function (e) {
        var t = [this.STATES.INIT, this.STATES.HEADER];
        this._lines.push(e);
        var i = e.replace(this._stripRegex, "");
        if (0 === i.length) ; else if (t.indexOf(this._state) >= 0) this._processHeader(i); else if (this._state === this.STATES.BODY) this._processBody(i); else if (this._state === this.STATES.FOOTER) this._processFooter(i); else if (this._state !== this.STATES.END) throw new Error("Unknown state");
        return this
    }, o.prototype.getResult = function () {
        var e = n.extend({}, this._response);
        if (e.output = this._lines.join("\n"), e.alive = this._times.length > 0, e.alive && (e.time = this._response.time = this._times[0]), "unknown" === e.stddev && e.alive) {
            var t = this._times.length, i = n.reduce(this._times, function (t, i) {
                return t + Math.pow(i - e.avg, 2)
            }, 0) / t;
            e.stddev = Math.round(1e3 * Math.sqrt(i)) / 1e3
        }
        return n.each(["min", "avg", "max", "stddev"], function (t) {
            var i = e[t];
            n.isNumber(i) && (e[t] = i.toFixed(3))
        }), e
    }, e.exports = o
}, function (e, t, i) {
    "use strict";
    var n = i(1081);
    i.n(n).a
}, , , , , , function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return "confirm" === e.popType ? i("confirm", {
            attrs: {options: e.options, "box-id": e.boxId},
            on: {
                "update:options": function (t) {
                    e.options = t
                }
            },
            nativeOn: {
                dragstart: function (e) {
                    e.preventDefault()
                }
            }
        }) : "message-box" === e.popType ? i("message-box", {
            attrs: {
                options: e.options,
                formData: e.options.formData,
                "box-id": e.boxId
            }, on: {
                "update:formData": function (t) {
                    e.$set(e.options, "formData", t)
                }
            }, nativeOn: {
                dragstart: function (e) {
                    e.preventDefault()
                }
            }
        }) : i(e.popType, {
            tag: "component",
            attrs: {options: e.options, "box-id": e.boxId},
            nativeOn: {
                dragstart: function (e) {
                    e.preventDefault()
                }
            }
        })
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, , , , , , , , , , , , function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": ["xly-dialog-about"], "footer-enabled": !1, visible: ""},
            on: {close: e.handleCancel}
        }, [i("div", {staticClass: "xly-dialog-about__content"}, [i("div", {staticClass: "xly-dialog-about__info"}, [i("div", {staticClass: "xly-dialog-about__logo"}, [i("i", {staticClass: "xly-icon-logo"})]), e._v(" "), i("div", {staticClass: "xly-dialog-about__title"}, [i("h1", [e._v("\n          迅雷\n          "), i("span", [e._v("11")])])])]), e._v(" "), i("a", {
            staticClass: "td-button td-button--other"
        }, [e._v("检查更新")]), e._v(" "), i("p", {staticClass: "xly-dialog-about__text"}, [e._v("版本："), i("span", [e._v(e._s(e.thunderVersion))])]), e._v(" "), i("div", {
            staticClass: "xly-dialog-about__version",
            class: e.expandClass
        }, [i("a", {
            staticClass: "xly-dialog-about__link",
            on: {click: e.handleExpand}
        }, [e._v("\n        查看组件版本\n        "), i("i", {staticClass: "td-icon-arrow-drop"})]), e._v(" "), i("div", {staticClass: "xly-dialog-about__more"}, [i("ul", [i("li", [i("span", {staticClass: "title"}, [e._v("下载引擎：")]), e._v(" "), i("span", {staticClass: "text"}, [e._v(e._s(e.downloadSDKVersion))])]), e._v(" "), i("li", [i("span", {staticClass: "title"}, [e._v("XDAS：")]), e._v(" "), i("span", {staticClass: "text"}, [e._v(e._s(e.xdasVersion))])]), e._v(" "), i("li", [i("span", {staticClass: "title"}, [e._v("Electron：")]), e._v(" "), i("span", {staticClass: "text"}, [e._v(e._s(e.electronVersion))])]), e._v(" "), i("li", [i("span", {staticClass: "title"}, [e._v("Chromium：")]), e._v(" "), i("span", {staticClass: "text"}, [e._v(e._s(e.chromiumVersion))])]), e._v(" "), i("li", [i("span", {staticClass: "title"}, [e._v("Node：")]), e._v(" "), i("span", {staticClass: "text"}, [e._v(e._s(e.nodeVersion))])]), e._v(" "), i("li", [i("span", {staticClass: "title"}, [e._v("V8：")]), e._v(" "), i("span", {staticClass: "text"}, [e._v(e._s(e.v8Version))])])])])]), e._v(" "), i("div", {staticClass: "xly-dialog-about__copyright"}, [i("p", [e._v("© 2003-" + e._s(e.year) + " 深圳市迅雷网络技术有限公司")]), e._v(" "), i("p", [i("span", [e._v("© 2003-" + e._s(e.year) + " Xunlei Networking Technologies.LTD")]), e._v(" "), i("a", {
            staticStyle: {cursor: "pointer"},
            on: {click: e.handleHomePage}
        }, [e._v("www.xunlei.com")])])])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", e._g(e._b({
            class: e.options.customClass, attrs: {visible: ""}, on: {
                close: function (t) {
                    e.handleCancel(e.action.Close)
                }
            }
        }, "td-dialog", e.$attrs, !1), e.$listeners), [i("div", {staticClass: "td-dialog-comfirm"}, [e.options.type ? i("span", {staticClass: "td-dialog-comfirm__icon"}, [i("td-icon", {attrs: {type: e.icon[e.options.type]}})], 1) : e._e(), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__content"}, [i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v(e._s(e.options.title))]), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__text"}, [e.options.checkboxEnabled ? i("td-checkbox", {
            attrs: {value: e.options.checkboxChecked},
            on: {input: e.handleInput}
        }, [e._v(e._s(e.options.checkboxLabel))]) : e.options.content ? i("span", {domProps: {innerHTML: e._s(e.options.content)}}) : e.options.fileName ? i("div", {
            staticClass: "xlx-dialog-comfirm__film-name",
            attrs: {title: e.options.fileName}
        }, [e._v(e._s(e.options.fileName))]) : e._e()], 1)])]), e._v(" "), i("template", {slot: "footer"}, ["okVisible" in e.options && !e.options.okVisible ? e._e() : i("td-button", {on: {click: e.handleOK}}, [e._v(e._s(e.options.okText || "确定"))]), e._v(" "), "cancelVisible" in e.options && !e.options.cancelVisible ? e._e() : i("td-button", {
            attrs: {secondary: ""},
            on: {
                click: function (t) {
                    e.handleCancel(e.action.Cancel)
                }
            }
        }, [e._v(e._s(e.options.cancelText || "取消"))])], 1)], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": e.customClass, visible: ""}, on: {
                close: function (t) {
                    e.handleCancel(e.action.Close)
                }
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v(e._s(e.options.title))]), e._v(" "), e.options.schemas ? i("div", {staticClass: "xlx-dialog-setting__content"}, [i("div", {staticClass: "xlx-dialog-setting__speed"}, e._l(e.options.schemas, function (t) {
            return i("generator-view", {
                key: t.name,
                attrs: {item: t, value: e.formData[t.name], formData: e.formData},
                on: {input: e.handleInput}
            })
        }))]) : e.options.message ? [e._v(e._s(e.options.message))] : e._e(), e._v(" "), i("div", {
            staticClass: "xly-dialog__footer",
            attrs: {slot: "footer"},
            slot: "footer"
        }, [i("div", {staticClass: "xly-dialog__button"}, ["okVisible" in e.options && !e.options.okVisible ? e._e() : i("td-button", {
            attrs: {disabled: !e.comfirmButtonActive},
            on: {click: e.handleOK}
        }, [e._v(e._s(e.options.okText || "确定"))]), e._v(" "), "cancelVisible" in e.options && !e.options.cancelVisible ? e._e() : i("td-button", {
            staticClass: "td-button--other",
            on: {
                click: function (t) {
                    e.handleCancel(e.action.Cancel)
                }
            }
        }, [e._v(e._s(e.options.cancelText || "取消"))])], 1)])], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-time", "footer-enabled": !1, visible: ""},
            on: {close: e.handleClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("计划任务，按时下载")]), e._v(" "), i("div", {staticClass: "xly-dialog-time__setting"}, [i("div", {staticClass: "xly-dialog-time__part"}, [i("td-tooltip", {
            attrs: {
                content: e.sget(e.errorFields, "hours", 0, "message"),
                visible: Boolean(e.sget(e.errorFields, "hours"))
            }
        }, [i("td-input", {
            attrs: {placeholder: "0"}, model: {
                value: e.hours, callback: function (t) {
                    e.hours = t
                }, expression: "hours"
            }
        })], 1), e._v(" "), i("span", {staticClass: "xly-dialog-time__text"}, [e._v("时")]), e._v(" "), i("td-tooltip", {
            attrs: {
                content: e.sget(e.errorFields, "minutes", 0, "message"),
                visible: Boolean(e.sget(e.errorFields, "minutes"))
            }
        }, [i("td-input", {
            attrs: {placeholder: "0"}, model: {
                value: e.minutes, callback: function (t) {
                    e.minutes = t
                }, expression: "minutes"
            }
        })], 1), e._v(" "), i("span", {staticClass: "xly-dialog-time__text"}, [e._v("分")]), e._v("\n      后\n    ")], 1), e._v(" "), i("div", {staticClass: "xly-dialog-time__part"}, [i("select-native", {
            attrs: {
                options: e.operations,
                useNative: !0
            }, model: {
                value: e.operation, callback: function (t) {
                    e.operation = t
                }, expression: "operation"
            }
        }), e._v(" "), i("td-button", {
            attrs: {disabled: e.plans && e.plans.length >= 3},
            on: {click: e.addPlan}
        }, [i("i", {staticClass: "xly-icon-add"})])], 1)]), e._v(" "), i("div", {staticClass: "xly-dialog-time__result"}, [i("ul", e._l(e.plans, function (t, n) {
            return i("li", {
                key: n,
                staticClass: "xly-dialog-time__result-item"
            }, [i("p", {staticClass: "xly-dialog-time__text"}, [i("span", {staticClass: "xly-dialog-time__period"}, [e._v(e._s(t.hours) + " 小时 " + e._s(t.minutes) + " 分 " + e._s(t.seconds) + " 秒")]), e._v(" "), i("span", [e._v("后")]), e._v(" "), i("span", {staticClass: "xly-dialog-time__status"}, [e._v(e._s(t.operation))])]), e._v(" "), i("a", {
                staticClass: "td-button td-button--secondary",
                attrs: {href: "javascript:;"},
                on: {
                    click: function (t) {
                        e.removePlan(n)
                    }
                }
            }, [i("i", {staticClass: "xly-icon-close"})])])
        }))])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {visible: "", "custom-class": "xly-dialog-rename"},
            on: {close: e.handleClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("重命名")]), e._v(" "), i("td-tooltip", {
            staticStyle: {display: "block"},
            attrs: {content: e.tipsText, visible: e.isShowTips, placement: "top"}
        }, [i("td-input", {
            ref: "input",
            attrs: {label: "", type: "textarea", placeholder: "请输入文件名"},
            model: {
                value: e.newName, callback: function (t) {
                    e.newName = t
                }, expression: "newName"
            }
        })], 1), e._v(" "), i("div", {
            staticClass: "xly-dialog__footer",
            attrs: {slot: "footer"},
            slot: "footer"
        }, [i("div", {staticClass: "xly-dialog__button"}, [i("td-button", {
            on: {click: e.handleOK},
            nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [e._v(e._s("确定"))]), e._v(" "), i("td-button", {
            staticClass: "td-button--other",
            on: {click: e.handleClose}
        }, [e._v(e._s("取消"))])], 1)])], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-repeat", visible: "", "footer-enabled": !1},
            on: {close: e.handleClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [i("i", {staticClass: "xly-icon-note-bold"}), e._v(" 下载列表已存在相同任务")]), e._v(" "), i("div", {staticClass: "xly-dialog-repeat__operate"}, [i("td-button", {
            staticClass: "td-button--other",
            attrs: {size: "large"},
            on: {
                click: function (t) {
                    e.handleOK("ignore")
                }
            }
        }, [i("i", {staticClass: "xly-icon-skip"}), e._v("跳过重复文件，继续下载")]), e._v(" "), i("td-button", {
            staticClass: "td-button--other",
            attrs: {size: "large"},
            on: {
                click: function (t) {
                    e.handleOK("delete")
                }
            }
        }, [i("i", {staticClass: "xly-icon-replace"}), e._v("替换重复文件，覆盖下载")]), e._v(" "), i("td-button", {
            staticClass: "td-button--other",
            attrs: {size: "large"},
            on: {click: e.handleClose}
        }, [i("i", {staticClass: "xly-icon-close-small"}), e._v("不做任何操作")])], 1)])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-repeat", visible: "", "footer-enabled": !1},
            on: {close: e.handleClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [i("i", {staticClass: "xly-icon-note-bold"}), e._v(" 发现重复文件")]), e._v(" "), i("div", {staticClass: "xly-dialog-repeat__list"}, [i("p", {domProps: {innerHTML: e._s(e.files)}})]), e._v(" "), i("div", {staticClass: "xly-dialog-repeat__operate"}, [i("td-button", {
            staticClass: "td-button--other",
            attrs: {size: "large"},
            on: {
                click: function (t) {
                    e.handleOK("ignore")
                }
            }
        }, [i("i", {staticClass: "xly-icon-skip"}), e._v("跳过重复文件，继续下载\n    ")]), e._v(" "), i("td-button", {
            staticClass: "td-button--other",
            attrs: {size: "large"},
            on: {
                click: function (t) {
                    e.handleOK("delete")
                }
            }
        }, [i("i", {staticClass: "xly-icon-replace"}), e._v("替换重复文件，覆盖下载\n    ")]), e._v(" "), i("td-button", {
            staticClass: "td-button--other",
            attrs: {size: "large"},
            on: {click: e.handleClose}
        }, [i("i", {staticClass: "xly-icon-close-small"}), e._v("不做任何操作\n    ")])], 1)])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {visible: "", "custom-class": "xly-dialog-secret"}, on: {
                close: function (t) {
                    e.handleClose("close")
                }
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("设置私人空间密码")]), e._v(" "), i("div", {staticClass: "xly-dialog-secret__form"}, [i("ul", [i("li", {staticClass: "xly-dialog-secret__item"}, [i("label", {staticClass: "td-input"}, [i("span", {staticClass: "td-input__label"}, [e._v("输入密码")]), e._v(" "), i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.password,
                expression: "password"
            }],
            staticClass: "td-input__inner",
            attrs: {type: "password", maxlength: "50", placeholder: "请输入密码"},
            domProps: {value: e.password},
            on: {
                input: function (t) {
                    t.target.composing || (e.password = t.target.value)
                }
            }
        })])]), e._v(" "), i("li", {staticClass: "xly-dialog-secret__item"}, [i("label", {staticClass: "td-input"}, [i("span", {staticClass: "td-input__label"}, [e._v("确认密码")]), e._v(" "), i("td-tooltip", {
            staticStyle: {
                display: "flex",
                flex: "1"
            }, attrs: {content: e.tipsText, visible: e.isShowTips, placement: "top"}
        }, [i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.secondPassword,
                expression: "secondPassword"
            }],
            staticClass: "td-input__inner",
            attrs: {type: "password", maxlength: "50", placeholder: "再次输入密码"},
            domProps: {value: e.secondPassword},
            on: {
                input: function (t) {
                    t.target.composing || (e.secondPassword = t.target.value)
                }
            }
        })])], 1)])]), e._v(" "), i("label", {
            staticClass: "td-checkbox",
            class: {"is-checked": e.isSetHide}
        }, [i("input", {
            directives: [{name: "model", rawName: "v-model", value: e.isSetHide, expression: "isSetHide"}],
            staticClass: "td-checkbox__inner",
            attrs: {type: "checkbox"},
            domProps: {checked: Array.isArray(e.isSetHide) ? e._i(e.isSetHide, null) > -1 : e.isSetHide},
            on: {
                change: function (t) {
                    var i = e.isSetHide, n = t.target, o = !!n.checked;
                    if (Array.isArray(i)) {
                        var r = e._i(i, null);
                        n.checked ? r < 0 && (e.isSetHide = i.concat([null])) : r > -1 && (e.isSetHide = i.slice(0, r).concat(i.slice(r + 1)))
                    } else e.isSetHide = o
                }
            }
        }), e._v(" "), i("span", {staticClass: "td-checkbox__label"}, [e._v("在本地隐藏私人空间对应文件夹")])])]), e._v(" "), i("template", {slot: "footer"}, [i("div", {staticClass: "xly-dialog__footer"}, [i("div", {staticClass: "xly-dialog__button"}, [i("td-button", {
            on: {
                click: function (t) {
                    return t.stopPropagation(), e.handleOK(t)
                }
            }
        }, [e._v("确定")]), e._v(" "), i("td-button", {
            attrs: {secondary: ""}, on: {
                click: function (t) {
                    e.handleClose("cancel")
                }
            }
        }, [e._v("取消")])], 1)])])], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-secret", visible: ""}, on: {
                close: function (t) {
                    e.handleClose("close")
                }
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("私人空间密码验证")]), e._v(" "), i("div", {staticClass: "xly-dialog-secret__verify"}, [i("label", {staticClass: "td-input"}, [i("span", {staticClass: "td-input__label"}), e._v(" "), i("td-tooltip", {
            staticStyle: {
                display: "flex",
                flex: "1"
            }, attrs: {content: e.tipsText, visible: e.isShowTips, placement: "top"}
        }, [i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.newPassword,
                expression: "newPassword"
            }],
            ref: "pwdInput",
            staticClass: "td-input__inner",
            attrs: {maxlength: "50", placeholder: "请输入密码"},
            domProps: {value: e.newPassword},
            on: {
                input: function (t) {
                    t.target.composing || (e.newPassword = t.target.value)
                }
            }
        })])], 1)]), e._v(" "), i("template", {slot: "footer"}, [i("div", {staticClass: "xly-dialog__footer"}, [i("div", {staticClass: "xly-dialog__footer-operate"}, [i("a", {
            attrs: {href: "javascript:;"},
            on: {
                click: function (t) {
                    return t.stopPropagation(), e.handleForget(t)
                }
            }
        }, [e._v("忘记密码>")])]), e._v(" "), i("div", {staticClass: "xly-dialog__button"}, [i("td-button", {
            on: {click: e.handleOK},
            nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [e._v("确定")]), e._v(" "), i("td-button", {
            attrs: {secondary: ""}, on: {
                click: function (t) {
                    e.handleClose("cancel")
                }
            }
        }, [e._v("取消")])], 1)])])], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {visible: "", "custom-class": "xly-dialog-secret"}, on: {
                close: function (t) {
                    e.handleClose("close")
                }
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("登录帐号身份验证")]), e._v(" "), i("p", {staticClass: "xly-dialog-secret__tips"}, [e._v(e._s(e.promptContent))]), e._v(" "), i("ul", [i("li", {staticClass: "xly-dialog-secret__item"}, [i("label", {staticClass: "td-input"}, [i("span", {staticClass: "td-input__label"}, [e._v("手机号")]), e._v(" "), i("td-tooltip", {
            staticStyle: {
                display: "flex",
                flex: "1"
            }, attrs: {content: e.verifyCodeGetTipsText, visible: e.isShowVerifyCodeGetTips, placement: "top"}
        }, [i("input", {
            directives: [{name: "model", rawName: "v-model", value: e.mobile, expression: "mobile"}],
            ref: "phoneInput",
            staticClass: "td-input__inner",
            attrs: {type: "text", readonly: "readonly", placeholder: "请输入绑定手机号"},
            domProps: {value: e.mobile},
            on: {
                input: function (t) {
                    t.target.composing || (e.mobile = t.target.value)
                }
            }
        })])], 1), e._v(" "), i("span", {
            staticClass: "xly-dialog-secret__code",
            class: {"is-disabled": e.verifyCodeBtnDisabled},
            on: {
                click: function (t) {
                    t.stopPropagation(), e.handleGetVerifyCode()
                }
            }
        }, [i("i", {staticClass: "xly-line"}), e._v("\n        " + e._s(e.verifyCodeBtntext) + "\n      ")])]), e._v(" "), i("li", {staticClass: "xly-dialog-secret__item"}, [i("label", {staticClass: "td-input"}, [i("span", {staticClass: "td-input__label"}, [e._v("验证码")]), e._v(" "), i("td-tooltip", {
            staticStyle: {
                display: "flex",
                flex: "1"
            }, attrs: {content: e.verifyCodeTipsText, visible: e.isShowVerifyCodeTips, placement: "top"}
        }, [i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.verifyCode,
                expression: "verifyCode"
            }],
            staticClass: "td-input__inner",
            attrs: {type: "text", placeholder: "验证码"},
            domProps: {value: e.verifyCode},
            on: {
                input: function (t) {
                    t.target.composing || (e.verifyCode = t.target.value)
                }
            }
        })])], 1)])]), e._v(" "), i("template", {slot: "footer"}, [i("div", {staticClass: "xly-dialog__footer"}, [i("div", {staticClass: "xly-dialog__footer-operate"}, [i("a", {
            staticClass: "xly-dialog__footer-link",
            attrs: {href: "javascript:;"},
            on: {
                click: function (t) {
                    return t.stopPropagation(), e.handleModifierPhone(t)
                }
            }
        }, [e._v("修改安全手机>")])]), e._v(" "), i("div", {staticClass: "xly-dialog__button"}, [i("td-button", {
            attrs: {disabled: e.okDisabled},
            nativeOn: {
                click: function (t) {
                    return t.stopPropagation(), e.handleOK(t)
                }
            }
        }, [e._v("确定")]), e._v(" "), i("td-button", {
            attrs: {secondary: ""}, on: {
                click: function (t) {
                    e.handleClose("cancel")
                }
            }
        }, [e._v("取消")])], 1)])]), e._v(" "), e.isShowFigureCode ? i("div", {attrs: {id: "boxid"}}, [i("iframe", {
            staticStyle: {
                width: "100%",
                height: "100%"
            }, attrs: {src: e.reviewurl}, on: {load: e.showFigureCode}
        })]) : e._e()], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {visible: "", "custom-class": "xly-dialog-secret"},
            on: {close: e.handleClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("私人下载存储目录设置")]), e._v(" "), i("div", {staticClass: "xly-dialog-site"}, [i("div", {
            staticClass: "td-select",
            attrs: {tabindex: "0"}
        }, [i("td-tooltip", {
            staticStyle: {display: "block"},
            attrs: {content: e.pathTips, visible: e.isShowPathTips, placement: "top"}
        }, [i("path-selector", {
            attrs: {
                enableDelete: !1,
                enablePrivateSpace: !1,
                value: e.savePath,
                appendDirs: e.appendDirs
            }, on: {input: e.handleChangePath}
        })], 1)], 1), e._v(" "), i("label", {
            staticClass: "td-checkbox",
            class: {"is-checked": e.hideLocalDir}
        }, [i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.hideLocalDir,
                expression: "hideLocalDir"
            }],
            staticClass: "td-checkbox__inner",
            attrs: {type: "checkbox"},
            domProps: {checked: Array.isArray(e.hideLocalDir) ? e._i(e.hideLocalDir, null) > -1 : e.hideLocalDir},
            on: {
                change: function (t) {
                    var i = e.hideLocalDir, n = t.target, o = !!n.checked;
                    if (Array.isArray(i)) {
                        var r = e._i(i, null);
                        n.checked ? r < 0 && (e.hideLocalDir = i.concat([null])) : r > -1 && (e.hideLocalDir = i.slice(0, r).concat(i.slice(r + 1)))
                    } else e.hideLocalDir = o
                }
            }
        }), e._v(" "), i("span", {staticClass: "td-checkbox__label"}, [e._v("在本地隐藏私人空间对应文件夹")])])]), e._v(" "), i("template", {slot: "footer"}, [i("div", {staticClass: "xly-dialog__footer"}, [i("div", {staticClass: "xly-dialog__button"}, [i("td-button", {
            on: {
                click: function (t) {
                    return t.stopPropagation(), e.handleOK(t)
                }
            }
        }, [e._v("确定")]), e._v(" "), i("td-button", {
            attrs: {secondary: ""},
            on: {click: e.handleClose}
        }, [e._v("取消")])], 1)])])], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {attrs: {visible: ""}, on: {close: e.handleClose}}, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("私人下载任务管理")]), e._v(" "), i("div", {staticClass: "xlx-dialog-secret__setting"}, [i("ul", [i("li", [i("span", [e._v("同时下载的最大任务数")]), e._v(" "), i("div", {staticClass: "td-select xlx-select-size-1"}, [i("div", {staticClass: "td-select-group"}, [i("label", {staticClass: "td-input"}, [i("input", {
            directives: [{
                name: "model",
                rawName: "v-model.number",
                value: e.maxTaskCount,
                expression: "maxTaskCount",
                modifiers: {number: !0}
            }],
            staticClass: "td-input__inner",
            attrs: {type: "number", placeholder: "5"},
            domProps: {value: e.maxTaskCount},
            on: {
                input: function (t) {
                    t.target.composing || (e.maxTaskCount = e._n(t.target.value))
                }, blur: function (t) {
                    e.$forceUpdate()
                }
            }
        })]), e._v(" "), i("a", {
            staticClass: "td-select__drop",
            attrs: {href: "javascript:;"}
        }, [i("i", {staticClass: "td-icon-arrow-drop"})])])]), e._v(" "), i("span", {staticClass: "xlx-setting-content__tips"}, [e._v("（1-50）")])])]), e._v(" "), i("p", {staticClass: "td-dialog-comfirm__text"}, [i("label", {staticClass: "td-checkbox is-checked"}, [i("input", {
            staticClass: "td-checkbox__inner",
            attrs: {type: "checkbox", checked: ""}
        }), e._v(" "), i("span", {staticClass: "td-checkbox__label"}, [e._v("自动将低速任务移动至列尾")])])])]), e._v(" "), i("template", {slot: "footer"}, [i("td-button", {
            on: {
                click: function (t) {
                    return t.stopPropagation(), e.handleOK(t)
                }
            }
        }, [e._v("确定")]), e._v(" "), i("td-button", {
            attrs: {secondary: ""},
            on: {click: e.handleClose}
        }, [e._v("取消")])], 1)], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-repeat", visible: ""},
            on: {close: e.handleOK}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [i("i", {staticClass: "xly-icon-note-bold"}), e._v("下载列表已存在相同任务")]), e._v(" "), i("p", {staticClass: "xly-dialog-repeat__text"}, [e._v(e._s(e.title))]), e._v(" "), i("div", {staticClass: "xly-dialog-repeat__list is-nowrap"}, [i("p", {domProps: {innerHTML: e._s(e.urls)}})]), e._v(" "), i("td-button", {
            attrs: {
                slot: "footer",
                size: "large"
            }, on: {click: e.handleOK}, nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }, slot: "footer"
        }, [e._v("我知道了")])], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {
                "custom-class": "xly-dialog-batch",
                visible: "",
                "before-close": e.handleClose
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("新建下载任务")]), e._v(" "), i("div", {staticClass: "xly-dialog-batch__filter"}, [i("p", [e._v("批量下载功能可以方便的创建多个包含共同特征的下载任务。例如网站A提供了10个这样的下载链接：")]), e._v(" "), i("p", [e._v("http://www.a.com/01.zip")]), e._v(" "), i("p", [e._v("http://www.a.com/02.zip")]), e._v("...\n    "), i("p", [e._v("http://www.a.com/10.zip")]), e._v(" "), i("br"), e._v(" "), i("p", [e._v("这10个地址只有数字部分不同，如果用(*)表示不同的部分，这些地址可以写成：")]), e._v(" "), i("p", [e._v("http://www.a.com/(*).zip")]), e._v(" "), i("br"), e._v(" "), i("p", [e._v("同时，通配符长度指的是这些地址不同部分数字的长度，例如：")]), e._v(" "), i("p", [e._v("从01.zip－10.zip，通配符长度是2；")]), e._v(" "), i("p", [e._v("从001.zip－010.zip，通配符长度是3。")]), e._v(" "), i("br"), e._v(" "), i("p", [e._v("注意，在填写从xxx到xxx的时候，虽然是从01到10或者是001到010，但是，当您设定了通配符长度以后，就只需要填写成从1到10。 填写完成后，在示意窗口会显示第一个和最后一个任务的具体链接地址，您可以检查是否正确，然后点确定完成操作。")])]), e._v(" "), i("div", {staticClass: "xly-dialog-batch__down-input"}, [i("td-tooltip", {
            staticStyle: {display: "block"},
            attrs: {content: e.tipsText, visible: e.isShowTips, placement: "top"}
        }, [i("td-input", {
            attrs: {label: "通过URL过滤：", placeholder: ""},
            model: {
                value: e.urlExample, callback: function (t) {
                    e.urlExample = t
                }, expression: "urlExample"
            }
        })], 1)], 1), e._v(" "), i("div", {staticClass: "xly-dialog-batch__down-filter"}, [i("ul", [i("li", [i("td-radio", {
            attrs: {label: "number"},
            model: {
                value: e.picked, callback: function (t) {
                    e.picked = t
                }, expression: "picked"
            }
        }), e._v(" "), i("span", {staticClass: "xly-dialog-batch__text"}, [e._v("从")]), e._v(" "), i("limit-input", {
            attrs: {
                isNumber: !0,
                readonly: "number" !== e.picked,
                value: e.numFrom,
                min: 0,
                max: e.numMax
            }, on: {input: e.handleNumFromChange}
        }), e._v(" "), i("span", {staticClass: "xly-dialog-batch__text"}, [e._v("到")]), e._v(" "), i("limit-input", {
            attrs: {
                isNumber: !0,
                readonly: "number" !== e.picked,
                value: e.numTo,
                min: 0,
                max: e.numMax
            }, on: {input: e.handleNumToChange}
        }), e._v(" "), i("span", {staticClass: "xly-dialog-batch__text"}, [e._v("通配符长度：")]), e._v(" "), i("select-native", {
            attrs: {
                readonly: "number" !== e.picked,
                value: e.wildcardLength,
                options: e.selectOptions
            }, on: {input: e.handleWildcardChange}
        })], 1), e._v(" "), i("li", [i("td-radio", {
            attrs: {label: "alpha"},
            model: {
                value: e.picked, callback: function (t) {
                    e.picked = t
                }, expression: "picked"
            }
        }), e._v(" "), i("span", {staticClass: "xly-dialog-batch__text"}, [e._v("从")]), e._v(" "), i("limit-input", {
            attrs: {
                isAlpha: !0,
                readonly: "alpha" !== e.picked,
                value: e.alphaFrom
            }, on: {input: e.handleAlphaFromChange}
        }), e._v(" "), i("span", {staticClass: "xly-dialog-batch__text"}, [e._v("到")]), e._v(" "), i("limit-input", {
            attrs: {
                isAlpha: !0,
                readonly: "alpha" !== e.picked,
                value: e.alphaTo
            }, on: {input: e.handleAlphaToChange}
        }), e._v(" "), i("span", {staticClass: "xly-dialog-batch__text"}, [e._v("区分大小写")])], 1)]), e._v(" "), i("label", {staticClass: "td-textarea"}, [i("textarea", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.context,
                expression: "context"
            }],
            staticClass: "td-textarea__inner",
            attrs: {readonly: "", placeholder: ""},
            domProps: {value: e.context},
            on: {
                input: function (t) {
                    t.target.composing || (e.context = t.target.value)
                }
            }
        })])]), e._v(" "), i("template", {slot: "footer"}, [i("td-button", {
            on: {click: e.handleOK},
            nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [e._v(e._s("确定"))])], 1)], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "td-cover"}, [i("div", {staticClass: "td-dialog xly-dialog-url"}, [i("div", {staticClass: "td-dialog__header"}, [i("h2", [e._v(e._s("add" === e.options.state ? "已添加书签" : "修改书签"))]), e._v(" "), i("a", {
            staticClass: "td-dialog__close",
            attrs: {href: "javascript:;", title: "关闭"},
            on: {click: e.handleClose}
        }, [i("i", {staticClass: "td-icon-close"})])]), e._v(" "), i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "xly-dialog-url__form"}, [i("ul", [i("li", {staticClass: "xly-dialog-url__item"}, [i("label", {staticClass: "td-input"}, [i("span", {staticClass: "td-input__label"}, [e._v("名称")]), e._v(" "), i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.value,
                expression: "value"
            }],
            ref: "titleInput",
            staticClass: "td-input__inner",
            attrs: {type: "text"},
            domProps: {value: e.value},
            on: {
                input: function (t) {
                    t.target.composing || (e.value = t.target.value)
                }
            }
        })])]), e._v(" "), i("li", {staticClass: "xly-dialog-url__item"}, [i("span", {staticClass: "td-input__label"}, [e._v("添加到")]), e._v(" "), i("div", {staticClass: "td-select"}, [i("div", {staticClass: "td-select-group"}, [i("span", {staticClass: "td-select-group__label"}, ["edit" === e.options.state ? i("i", {
            staticClass: "xly-icon-url",
            class: {"is-active": "edit" === e.options.state}
        }) : e._e(), e._v("书签栏")]), e._v(" "), e._m(0)])])])])])]), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("div", {staticClass: "xly-dialog__footer"}, [i("div", {staticClass: "xly-dialog__button"}, [i("a", {
            staticClass: "td-button",
            class: {"is-disabled": "" === e.value.trim()},
            attrs: {href: "javascript:;"},
            on: {click: e.handleOk}
        }, [e._v("确定")]), e._v(" "), i("a", {
            staticClass: "td-button td-button--secondary",
            attrs: {href: "javascript:;"},
            on: {click: e.handleDelete}
        }, [e._v("删除")])])])])])])])
    }, o = [function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("a", {
            staticClass: "td-select__drop",
            attrs: {href: "javascript:;"}
        }, [t("i", {staticClass: "td-icon-arrow-drop"})])
    }];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {
            ref: "list",
            staticClass: "td-context-menu xlx-context-menu--bookmarks is-left"
        }, [i("ul", {staticClass: "td-context-menu__main"}, e._l(e.options, function (t, n) {
            return i("li", {
                key: t.url,
                staticClass: "td-context-menu__item",
                attrs: {title: t.name + "\n" + t.url},
                on: {
                    click: function (i) {
                        return "button" in i || !e._k(i.keyCode, "left", 37, i.key, ["Left", "ArrowLeft"]) ? "button" in i && 0 !== i.button ? null : (i.stopPropagation(), void e.openNewTab(t.url, t.name)) : null
                    }, contextmenu: function (i) {
                        i.stopPropagation(), e.showBookMarkMenu(t.url, t.name, n)
                    }
                }
            }, [i("div", {staticClass: "td-context-menu__content"}, [i("i", {staticClass: "td-icon"}, [e.isShowDefaultIcon(t.url, t.iconUrl) ? i("i", {staticClass: "xlx-icon-net"}) : i("img", {attrs: {src: t.iconUrl}})]), e._v(" "), i("span", {staticClass: "td-context-menu__text"}, [e._v(e._s(t.name))])])])
        }))])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": ["xly-dialog-subtitle"], "footer-enabled": !1, visible: ""},
            on: {close: e.handleCancel}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("字幕搜索")]), e._v(" "), i("div", {staticClass: "xly-subtitle-search"}, [i("td-media", {attrs: {align: "middle"}}, [i("i", {
            staticClass: "xly-icon-type",
            class: e.taskIcon,
            attrs: {slot: "media"},
            slot: "media"
        }), e._v(" "), i("p", {
            staticClass: "title",
            attrs: {title: e.taskName}
        }, [e._v(e._s(e.taskName))]), e._v(" "), i("p", {
            staticClass: "total",
            on: {click: e.onVideoNumberTextClick}
        }, [e._v(e._s(e.videoNum) + "个视频文件")])]), e._v(" "), i("div", {staticClass: "xly-subtitle-search__list"}, [i("td-table", {
            attrs: {
                columns: e.columns,
                data: e.fileList
            }, scopedSlots: e._u([{
                key: "default", fn: function (t) {
                    var n = t.prop, o = (t.value, t.row);
                    return ["fileName" === n ? [i("span", {
                        staticClass: "xly-subtitle-search__name",
                        attrs: {title: o.fileName}
                    }, [e._v(e._s(o.fileName))])] : e._e(), e._v(" "), "operate" === n ? [i("a", {
                        staticClass: "xly-subtitle-search__link",
                        attrs: {href: "javascript:;"},
                        on: {
                            click: function (t) {
                                e.popSutitleMessageBox(o)
                            }
                        }
                    }, [e._v("搜索字幕")])] : e._e()]
                }
            }])
        })], 1), e._v(" "), i("a", {
            staticClass: "xly-subtitle-search__access",
            attrs: {href: "javascript:;"},
            on: {
                click: function (t) {
                    e.searchShooter()
                }
            }
        }, [e._v("访问SubHD搜索字幕")])], 1)])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": ["xly-dialog-subtitle"], "footer-enabled": !1, visible: ""},
            on: {close: e.handleCancel}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("字幕搜索")]), e._v(" "), i("div", {staticClass: "xly-subtitle-search"}, [i("div", {staticClass: "xly-subtitle-search__form"}, [i("td-input", {
            attrs: {placeholder: "输入关键词"},
            model: {
                value: e.searchText, callback: function (t) {
                    e.searchText = t
                }, expression: "searchText"
            }
        }), e._v(" "), i("a", {
            staticClass: "td-button", attrs: {href: "javascript:;"}, on: {
                click: function (t) {
                    e.searchSubtitleByName("btn")
                }
            }
        }, [e._v("搜索")])], 1), e._v(" "), i("div", {staticClass: "xly-subtitle-search__list"}, [0 === e.searchStatus ? [i("div", {staticClass: "xly-subtitle-search__empty"}, [i("div", {staticClass: "xly-subtitle-search__tips"}, [i("i", {staticClass: "xly-icon-loading"}), e._v(" "), i("p", [e._v("搜索中")])])])] : 2 === e.searchStatus ? [i("div", {staticClass: "xly-subtitle-search__empty"}, [i("div", {staticClass: "xly-subtitle-search__tips"}, [i("p", [e._v("\n              无相关字幕，建议换名搜索"), i("br"), e._v("或前往\n              "), i("a", {
            attrs: {href: "javascript:;"},
            on: {
                click: function (t) {
                    e.searchShooter()
                }
            }
        }, [e._v("SubHD")]), e._v("\n              查找\n            ")])])])] : 1 === e.searchStatus ? [i("td-table", {
            attrs: {columns: e.columns, data: e.tableData}, scopedSlots: e._u([{
                key: "default", fn: function (t) {
                    var n = t.prop, o = (t.value, t.row);
                    return ["sname" === n ? [i("span", {
                        staticClass: "xly-subtitle-search__name",
                        attrs: {title: e.getName(o)}
                    }, [e._v(e._s(e.getName(o)))])] : e._e(), e._v(" "), "language" === n ? [i("span", [e._v(e._s(o.language))])] : e._e(), e._v(" "), "comment" === n ? [i("td-rate", {
                        attrs: {
                            value: Number(o.rate),
                            readonly: ""
                        }
                    })] : e._e(), e._v(" "), "operate" === n ? [0 === o.status ? [i("a", {
                        staticClass: "xly-subtitle-search__link",
                        attrs: {href: "javascript:;"},
                        on: {
                            click: function (t) {
                                e.onOperationTextClick(o)
                            }
                        }
                    }, [e._v("下载字幕")])] : e._e(), e._v(" "), 1 === o.status ? [i("a", {
                        staticClass: "xly-subtitle-search__link",
                        attrs: {href: "javascript:;"},
                        on: {
                            click: function (t) {
                                e.onOperationTextClick(o)
                            }
                        }
                    }, [e._v("播放视频")])] : e._e(), e._v(" "), 2 === o.status ? [i("i", {staticClass: "xly-icon-loading"})] : e._e(), e._v(" "), 3 === o.status ? [i("a", {
                        staticClass: "xly-subtitle-search__link is-failed",
                        attrs: {href: "javascript:;"},
                        on: {
                            click: function (t) {
                                e.onOperationTextClick(o)
                            }
                        }
                    }, [e._v("下载失败")])] : e._e()] : e._e()]
                }
            }])
        })] : e._e()], 2), e._v(" "), i("a", {
            staticClass: "xly-subtitle-search__access",
            attrs: {href: "javascript:;"},
            on: {
                click: function (t) {
                    e.searchShooter()
                }
            }
        }, [e._v("访问SubHD搜索字幕")])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return e.showMoreSupport ? i("td-dialog", {
            attrs: {
                "custom-class": "xly-dialog-support",
                "footer-enabled": !1,
                visible: ""
            }, on: {
                close: function (t) {
                    e.handleCloseButton("list")
                }
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("超100万人在使用浏览器下载支持")]), e._v(" "), i("div", {
            staticClass: "xly-dialog-support__help",
            staticStyle: {"-webkit-app-region": "no-drag"}
        }, [i("td-tooltip", {
            attrs: {
                trigger: "hover",
                content: "如取消支持，请到浏览器的扩展管理设置",
                placement: "left"
            }
        }, [i("i", {staticClass: "xly-icon-help"})])], 1), e._v(" "), i("div", {staticClass: "xly-dialog-support__carousel"}, [i("td-carousel", {
            attrs: {
                "auto-play": !0,
                timeout: 5e3
            }
        }, e._l(2, function (t, n) {
            return i("td-carousel-item", {key: t}, [i("img", {attrs: {src: e.list[n], alt: ""}})])
        }))], 1), e._v(" "), i("div", {staticClass: "xly-dialog-support__list"}, [i("ul", e._l(e.browserList, function (t) {
            return i("li", {
                key: t.name,
                staticClass: "xly-dialog-support__item"
            }, [i("span", {class: t.icon}), e._v(" "), i("span", {staticClass: "xly-dialog-support__name"}, [e._v(e._s(t.name))]), i("span", {staticClass: "xly-dialog-support__text"}, [e._v("下载支持")]), e._v(" "), t.default ? i("i", {
                staticClass: "xly-icon-default",
                attrs: {title: "默认浏览器"}
            }) : e._e(), e._v(" "), t.open ? i("td-button", {attrs: {disabled: ""}}, [e._v("已开启")]) : e._e(), e._v(" "), t.open && t.install ? e._e() : i("td-button", {
                on: {
                    click: function (i) {
                        e.handleOpen(t.exeName)
                    }
                }
            }, [e._v("一键开启")])], 1)
        }))])]) : i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-support", visible: "", "footer-enabled": !0},
            on: {
                close: function (t) {
                    e.handleCloseButton("startup")
                }
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v(e._s(e.showTitle) + "下载支持")]), e._v(" "), i("a", {
            staticClass: "xly-dialog-support__link",
            attrs: {href: "javascript:;"},
            on: {
                click: function (t) {
                    e.handleClickMore(!0)
                }
            }
        }, [e._v("其它支持")]), e._v(" "), i("div", {staticClass: "xly-dialog-support__carousel"}, [i("td-carousel", {
            attrs: {
                "auto-play": !0,
                timeout: 5e3
            }
        }, e._l(2, function (t, n) {
            return i("td-carousel-item", {key: t}, [i("img", {attrs: {src: e.list[n], alt: ""}})])
        }))], 1), e._v(" "), i("div", {
            staticClass: "xly-dialog__footer",
            attrs: {slot: "footer"},
            slot: "footer"
        }, [i("td-button", {
            attrs: {size: "large"},
            on: {click: e.handleConfigBrowser}
        }, [e._v("一键开启")]), e._v(" "), i("p", [i("span", [e._v("超100万人在使用")])])], 1)])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": ["xlx-dialog--fix"], "footer-enabled": !1, visible: ""},
            on: {close: e.handleCancel}
        }, [i("div", {staticClass: "td-dialog-comfirm"}, [i("span", {staticClass: "td-dialog-comfirm__icon"}, [i("i", {staticClass: "icon-fix"})]), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__content"}, [0 === e.status ? i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("修复迅雷影音播放组件\n        "), i("br"), e._v(" "), i("span", [e._v(e._s(e.progress) + "%")])]) : 1 === e.status ? i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("修复成功")]) : i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("修复失败\n        "), i("br"), e._v(" "), i("a", {
            staticClass: "link-down",
            attrs: {href: "javascript:;"},
            on: {click: e.onClickDownloadXmp}
        }, [e._v("下载官方版迅雷影音")])])])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": ["xlx-dialog-setting"], "footer-enabled": !1, visible: ""},
            on: {close: e.handleCancel}
        }, [i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "td-dialog-comfirm"}, [i("span", {staticClass: "td-dialog-comfirm__icon"}, [i("i", {staticClass: "td-icon-warning"})]), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__content"}, [i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("您还没有安装迅雷影音，需要现在\n          "), i("br"), e._v("下载吗？\n        ")])])])]), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("a", {
            staticClass: "td-button",
            attrs: {href: "javascript:;"},
            on: {click: e.onClickDownloadXmpEx}
        }, [e._v("立即下载")]), e._v(" "), i("a", {
            staticClass: "td-button td-button--secondary",
            attrs: {href: "javascript:;"},
            on: {click: e.handleCancel}
        }, [e._v("取消")])])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", [1 === e.options.showType ? i("td-dialog", {
            attrs: {
                "custom-class": "xlx-dialog--cipher xlx-dialog--small",
                visible: "",
                "footer-enabled": !1
            }, on: {close: e.onClickClose}
        }, [i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "td-dialog-comfirm"}, [i("span", {staticClass: "td-dialog-comfirm__icon"}, [i("i", {staticClass: "xlx-icon-bird"})]), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__content"}, [i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("正在生成口令...")])])])])]) : 0 === e.options.showType ? i("td-dialog", {
            ref: "dialogDecode",
            attrs: {"custom-class": "xlx-dialog--cipher xlx-dialog--small", visible: "", "footer-enabled": !1},
            on: {close: e.onClickClose}
        }, [i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "td-dialog-comfirm"}, [i("span", {staticClass: "td-dialog-comfirm__icon"}, [i("i", {staticClass: "xlx-icon-bird"})]), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__content"}, [i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("正在翻译口令...")])])])])]) : 3 === e.options.showType ? i("td-dialog", {
            attrs: {
                "custom-class": "xlx-dialog--cipher xlx-dialog--small",
                visible: "",
                "footer-enabled": !1
            }, on: {close: e.onClickClose}
        }, [i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "td-dialog-comfirm"}, [i("span", {staticClass: "td-dialog-comfirm__icon"}, [i("i", {staticClass: "td-icon-error"})]), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__content"}, [i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("生成口令失败")])])])]), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("button", {
            staticClass: "td-button td-button--secondary",
            on: {click: e.retryEncode}
        }, [e._v("重试")])])])]) : 2 === e.options.showType ? i("td-dialog", {
            attrs: {
                "custom-class": "xlx-dialog--cipher xlx-dialog--small",
                visible: "",
                "footer-enabled": !1
            }, on: {close: e.onClickClose}
        }, [i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "td-dialog-comfirm"}, [i("span", {staticClass: "td-dialog-comfirm__icon"}, [i("i", {staticClass: "td-icon-error"})]), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__content"}, [i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("翻译口令失败")])])])]), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("button", {
            staticClass: "td-button td-button--secondary",
            on: {click: e.retryDecode}
        }, [e._v("重试")])])])]) : 4 === e.options.showType ? i("td-dialog", {
            attrs: {
                "custom-class": "xlx-dialog--cipher",
                visible: "",
                "footer-enabled": !1
            }, on: {close: e.onClickClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("您的迅雷口令已生成")]), e._v(" "), i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "xlx-dialog-chipher"}, [e._v(e._s(e.tips))]), e._v(" "), i("div", {staticClass: "xlx-dialog-chipher__encryption"}, [i("td-checkbox", {
            attrs: {value: e.isChecked},
            on: {input: e.handleCheck}
        }, [e._v("加密迅雷口令")]), e._v(" "), i("td-input", {
            ref: "inputObj",
            attrs: {value: e.userpwd, disabled: !e.isChecked, placeholder: "请输入密码"},
            on: {input: e.handleInput}
        }), e._v(" "), i("td-button", {
            attrs: {disabled: 0 === e.userpwd.length || !e.isChecked},
            on: {click: e.onEncryptKey}
        }, [e._v("加密")])], 1)]), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("td-button", {
            attrs: {disabled: e.disableCopy},
            on: {click: e.onCopyBtnClick}
        }, [e._v("复制口令")])], 1)]), e._v(" "), e.showEncryptRet ? i("div", {staticClass: "td-cover td-cover--message"}, [!0 === e.encryptResult ? i("div", {staticClass: "td-message td-message--success"}, [i("i", {staticClass: "td-icon-success"}), e._v(" "), i("span", {staticClass: "td-message__text"}, [e._v("口令加密成功")])]) : i("div", {staticClass: "td-message td-message--error"}, [i("i", {staticClass: "td-icon-error"}), e._v(" "), i("span", {staticClass: "td-message__text"}, [e._v("口令加密失败")])])]) : e._e()]) : 5 === e.options.showType ? i("td-dialog", {
            attrs: {
                "custom-class": "xlx-dialog--cipher",
                visible: "",
                "footer-enabled": !1
            }, on: {close: e.onClickClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("您的迅雷口令已生成")]), e._v(" "), i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "xlx-dialog-chipher"}, [e._v(e._s(e.tips))])]), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("button", {staticClass: "td-button is-disabled"}, [i("i", {staticClass: "td-icon-success"}), e._v("已复制，快去粘贴\n          "), i("span", [e._v("（" + e._s(e.timeToClose) + "秒后关闭）")])])])])]) : e._e()], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "td-context-menu xlx-context-menu--browser"}, [i("h3", [e._v("已打开标签页"), i("span", [e._v(e._s(e.unpinnedLength))]), e._v("个")]), e._v(" "), i("ul", {
            staticClass: "td-context-menu__main",
            staticStyle: {width: "145px", height: "336px"}
        }, e._l(e.tabsCopy, function (t, n) {
            return t.pinned ? e._e() : i("li", {
                key: t.key,
                ref: "item" + n,
                refInFor: !0,
                staticClass: "td-context-menu__item",
                attrs: {"data-index": n},
                on: {
                    click: function (t) {
                        e.handleUpdateCurrent(n)
                    }
                }
            }, [i("div", {
                staticClass: "td-context-menu__content",
                class: {"is-active": n === e.currentCopy}
            }, [i("i", {staticClass: "td-icon"}, [e.isShowDefaultIcon(n) ? i("i", {staticClass: "xlx-icon-net"}) : i("img", {attrs: {src: e.handleIconUrl(n)}})]), e._v(" "), i("span", {staticClass: "td-context-menu__text"}, [e._v(e._s(t.title))]), e._v(" "), i("a", {
                staticClass: "td-icon-close",
                attrs: {href: "javascript: void 0;"},
                on: {
                    click: function (t) {
                        t.stopPropagation(), e.handleRemove(n)
                    }
                }
            })])])
        }))])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xlx-skin", "footer-enabled": !1, visible: ""},
            on: {close: e.handleClose}
        }, [i("div", {
            directives: [{
                name: "show",
                rawName: "v-show",
                value: "skin" === e.activeKey && !e.isVip,
                expression: "activeKey === 'skin' && !isVip"
            }], staticClass: "xlx-skin-vip"
        }, [i("td-button", {on: {click: e.openVip}}, [e._v("开通会员")])], 1), e._v(" "), i("td-tabs", {
            staticClass: "xlx-skin__title",
            attrs: {tabs: e.tabs, "active-key": e.activeKey},
            on: {
                "update:activeKey": [function (t) {
                    e.activeKey = t
                }, e.changeMainTab]
            },
            scopedSlots: e._u([{
                key: "default", fn: function (t) {
                    var n = t.tab;
                    return ["skin" === n.key ? i("td-tabs", {
                        attrs: {tabs: e.skinTabs, "active-key": e.skinActiveKey},
                        on: {
                            "update:activeKey": [function (t) {
                                e.skinActiveKey = t
                            }, e.changeTab]
                        },
                        scopedSlots: e._u([{
                            key: "title", fn: function (t) {
                                var n = t.tab;
                                return [i("div", {class: n.class}, [e._v(e._s(n.title)), n.title_suffix ? i("i", {class: n.title_suffix}) : e._e()])]
                            }
                        }, {
                            key: "default", fn: function (t) {
                                var n = t.tab;
                                return ["featured" === n.key ? i("pane-skin-featured", {
                                    ref: "paneSkinFeatured",
                                    attrs: {
                                        options: e.options,
                                        "skin-info": e.skinInfo,
                                        wallpaper: e.wallpaper,
                                        "is-logined": e.isLogined,
                                        "is-vip": e.isVip
                                    },
                                    on: {
                                        "set-skin-info": e.setSkinInfo,
                                        "close-window": e.closeWindow,
                                        "update-last-skin-info": e.updateLastSkinInfo,
                                        "restore-skin": e.restoreSkin
                                    }
                                }) : e._e(), e._v(" "), "speedcurve" === n.key ? i("pane-skin-speedcurve", {
                                    attrs: {
                                        "skin-info": e.speedCurveSkinInfo,
                                        "is-logined": e.isLogined,
                                        "is-vip": e.isVip,
                                        "is-platinum-vip": e.isPlatinumVip,
                                        "is-super-vip": e.isSuperVip,
                                        "vas-type": e.vasType
                                    },
                                    on: {
                                        "set-skin-info": e.setSpeedCurveSkinInfo,
                                        "cover-show": e.onCoverShow,
                                        "close-window": e.closeWindow
                                    }
                                }) : e._e(), e._v(" "), "suspension" === n.key ? i("pane-skin-suspension", {
                                    attrs: {
                                        "skin-info": e.suspensionSkinInfo,
                                        "is-logined": e.isLogined,
                                        "is-vip": e.isVip,
                                        "vas-type": e.vasType
                                    },
                                    on: {
                                        "set-skin-info": e.setSuspensionSkinInfo,
                                        "cover-show": e.onCoverShow,
                                        "close-window": e.closeWindow
                                    }
                                }) : e._e(), e._v(" "), "supervip" === n.key ? i("pane-skin-super-cool", {
                                    ref: "paneSkinSuperCool",
                                    attrs: {
                                        options: e.options,
                                        "skin-info": e.skinInfo,
                                        "shake-info": e.shakeInfo,
                                        wallpaper: e.wallpaper,
                                        "is-logined": e.isLogined,
                                        "is-vip": e.isVip,
                                        "is-super-vip": e.isSuperVip,
                                        "vas-type": e.vasType
                                    },
                                    on: {
                                        "cover-show": e.onCoverShow,
                                        "set-skin-info": e.setSkinInfo,
                                        "set-shake-info": e.setShakeInfo,
                                        "close-window": e.closeWindow,
                                        "update-last-skin-info": e.updateLastSkinInfo
                                    }
                                }) : e._e(), e._v(" "), i("panel-try-cover", {
                                    directives: [{
                                        name: "show",
                                        rawName: "v-show",
                                        value: e.tryCoverShow,
                                        expression: "tryCoverShow"
                                    }],
                                    attrs: {
                                        from: e.coverFrom,
                                        currentTabKey: e.skinActiveKey,
                                        skinInfo: e.currentTabSkinInfo,
                                        "temp-shake": e.tempShakeWallpaper,
                                        lastSkinInfo: e.currentTabLastSkinInfo,
                                        wallpaper: e.wallpaper,
                                        "is-logined": e.isLogined,
                                        "is-vip": e.isVip,
                                        "vas-type": e.vasType
                                    },
                                    on: {
                                        "cover-show": e.onCoverShow,
                                        "close-window": e.closeWindow,
                                        "set-skin-info": e.setLastSkinInfo,
                                        "restore-shake-info": e.restoreShakeInfo
                                    }
                                })]
                            }
                        }])
                    }) : e._e(), e._v(" "), "avatar" === n.key ? i("pane-avatar") : e._e()]
                }
            }])
        })], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-setting", visible: ""},
            on: {close: e.handleClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("代理添加/编辑")]), e._v(" "), i("div", {staticClass: "xly-dialog-setting__content"}, [i("ul", {staticClass: "xly-dialog-setting__form"}, [i("li", {staticClass: "xly-dialog-setting__item"}, [i("span", {staticClass: "xly-dialog-setting__label"}, [e._v("代理名称")]), e._v(" "), i("td-input", {
            staticClass: "xly-setting__input-1",
            attrs: {maxlength: "20"},
            model: {
                value: e.proxyName, callback: function (t) {
                    e.proxyName = t
                }, expression: "proxyName"
            }
        })], 1), e._v(" "), i("li", {staticClass: "xly-dialog-setting__item"}, [i("span", {staticClass: "xly-dialog-setting__label"}, [e._v("服 务 器")]), e._v(" "), i("td-input", {
            attrs: {maxlength: "50"},
            model: {
                value: e.host, callback: function (t) {
                    e.host = t
                }, expression: "host"
            }
        })], 1), e._v(" "), i("li", {staticClass: "xly-dialog-setting__item"}, [i("span", {staticClass: "xly-dialog-setting__label"}, [e._v("端口")]), e._v(" "), i("label", {staticClass: "td-input xly-setting__input-2"}, [i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.port,
                expression: "port"
            }],
            staticClass: "td-input__inner",
            attrs: {type: "text", maxlength: "5"},
            domProps: {value: e.port},
            on: {
                input: [function (t) {
                    t.target.composing || (e.port = t.target.value)
                }, e.handleInput]
            }
        })])]), e._v(" "), i("li", {staticClass: "xly-dialog-setting__item"}, [i("span", {staticClass: "xly-dialog-setting__label"}, [e._v("类型")]), e._v(" "), i("ul", {staticClass: "xly-dialog-setting__horizontal"}, [i("li", [i("td-radio", {
            attrs: {label: "HTTP"},
            nativeOn: {
                click: function (t) {
                    return e.handleClickHttp(t)
                }
            },
            model: {
                value: e.type, callback: function (t) {
                    e.type = t
                }, expression: "type"
            }
        }, [e._v("HTTP")])], 1), e._v(" "), i("li", [i("td-radio", {
            attrs: {label: "SOCKS5"},
            nativeOn: {
                click: function (t) {
                    return e.handleClickSock(t)
                }
            },
            model: {
                value: e.type, callback: function (t) {
                    e.type = t
                }, expression: "type"
            }
        }, [e._v("SOCKS5")])], 1)])]), e._v(" "), i("li", {staticClass: "xly-dialog-setting__item"}, [i("span", {staticClass: "xly-dialog-setting__label"}, [e._v("验证")]), e._v(" "), i("td-input", {
            staticClass: "xly-setting__input-2",
            attrs: {placeholder: "用户名"},
            model: {
                value: e.userName, callback: function (t) {
                    e.userName = t
                }, expression: "userName"
            }
        }), e._v(" "), i("label", {staticClass: "td-input xly-setting__input-2"}, [i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.passWord,
                expression: "passWord"
            }],
            staticClass: "td-input__inner",
            attrs: {type: "password", placeholder: "密码"},
            domProps: {value: e.passWord},
            on: {
                input: function (t) {
                    t.target.composing || (e.passWord = t.target.value)
                }
            }
        })]), e._v(" "), i("a", {
            staticClass: "td-button td-button--secondary td-button--small",
            class: {"is-disabled": "测试中…" === e.butText},
            attrs: {href: "javascript:;"},
            on: {click: e.handleTest}
        }, [e._v(e._s(e.butText))])], 1)])]), e._v(" "), i("div", {
            staticClass: "xly-dialog__footer",
            attrs: {slot: "footer"},
            slot: "footer"
        }, [i("div", {staticClass: "xly-dialog__button"}, [i("td-button", {
            on: {click: e.handleOK},
            nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [e._v(e._s("确定"))]), e._v(" "), i("td-button", {
            staticClass: "td-button--other",
            on: {click: e.handleClose}
        }, [e._v(e._s("取消"))])], 1)])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", [i("td-dialog", {
            attrs: {
                "custom-class": "xlx-dialog-decrypt",
                visible: "",
                "footer-enabled": !1
            }, on: {close: e.onClickClose}
        }, [i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "xlx-dialog-decrypt__user"}, [i("a", {
            staticClass: "xlx-dialog-decrypt__user-avatar",
            attrs: {href: "javascript:;"},
            on: {click: e.onClickUserInfo}
        }, [i("img", {
            attrs: {
                src: e.userheadURL,
                alt: "头像"
            }
        })]), e._v(" "), i("a", {
            staticClass: "xlx-dialog-decrypt__user-name",
            attrs: {href: "javascript:;"},
            on: {click: e.onClickUserInfo}
        }, [e._v(e._s(e.userName))]), e._v("已加密了这个迅雷口令\n    ")]), e._v(" "), i("div", {staticClass: "xlx-dialog-decrypt__analysis"}, [i("label", {staticClass: "td-input is-warn"}, [i("td-input", {
            attrs: {
                value: e.inputPassword,
                autofocus: "",
                placeholder: "请输入密码"
            }, on: {
                input: e.hanldeInput, keydown: function (t) {
                    return "button" in t || !e._k(t.keyCode, "enter", 13, t.key, "Enter") ? e.handleKeyDown(t) : null
                }
            }
        })], 1), e._v(" "), e.isPasswordError ? i("p", {staticClass: "xlx-dialog-decrypt__note"}, [e._v("密码不正确")]) : e._e()])]), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("td-button", {
            attrs: {disabled: 0 === e.inputPassword.length},
            on: {click: e.onCheckPwdAndParse}
        }, [e._v("解析口令")])], 1)])])], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("td-dialog", {
            attrs: {"custom-class": "xlx-dialog-mobile", "footer-enabled": !1, visible: ""},
            on: {close: this.handleCancel}
        }, [t("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [this._v("将资源下载到手机")]), this._v(" "), t("div", {staticClass: "xlx-dialog-mobile__code"}, [t("div", {staticClass: "xlx-dialog-mobile__image"}, [t("canvas", {attrs: {id: "qrcodecanvas"}})]), this._v(" "), t("p", [this._v("使用浏览器或者"), t("span", {staticClass: "xlx-dialog-mobile__text"}, [this._v("手机迅雷")]), this._v(" 扫描")])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-data", "footer-enabled": !1, visible: ""},
            on: {close: e.handleCancel}
        }, [i("div", {staticClass: "xly-dialog-user"}, [i("div", {staticClass: "xly-dialog-user__info"}, [i("td-avatar", {
            attrs: {
                src: e.imgUrl,
                alt: "头像",
                draggable: "false"
            }
        }), e._v(" "), i("div", {staticClass: "xly-dialog-user__detail"}, [i("p", {
            staticClass: "xly-dialog-user__name",
            class: {"is-vip": e.isVip}
        }, [e._v("\n          " + e._s(e.userNick) + "\n        ")]), e._v(" "), i("div", {staticClass: "xly-dialog-user__icon"}, [i("i", {class: e.vipClass}), e._v(" "), i("i", {class: e.userYearIcon})])])], 1), e._v(" "), i("div", {staticClass: "xly-dialog-data__speed"}, [i("ul", [i("li", [i("i", {staticClass: "xly-icon xly-icon-download"}), e._v(" "), i("span", [e._v("\n            下载速度：\n            "), i("em", [e._v(e._s(e.downloadSpeed))])])]), e._v(" "), i("li", [i("i", {staticClass: "xly-icon xly-icon-upload"}), e._v(" "), i("span", [e._v("\n            上传速度：\n            "), i("em", [e._v(e._s(e.uploadSpeed))])])])])])]), e._v(" "), i("div", {staticClass: "xly-data"}, [i("div", {staticClass: "xly-data__main"}, [i("h4", [e._v("主要数据")]), e._v(" "), i("ul", [i("li", [i("i", {staticClass: "xly-icon-download"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.todayDownloadSize))]), e._v(" "), i("p", [e._v("今日下载")])]), e._v(" "), i("li", [i("i", {staticClass: "xly-icon-download-total"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.totalDownloadSize))]), e._v(" "), i("p", [e._v("累计下载")])]), e._v(" "), i("li", [i("i", {staticClass: "xly-icon-luky"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.totalProviders))]), e._v(" "), i("p", [e._v("幸运值")])]), e._v(" "), i("li", [i("i", {staticClass: "xly-icon-upload"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.todayUploadSize))]), e._v(" "), i("p", [e._v("今日上传")])]), e._v(" "), i("li", [i("i", {staticClass: "xly-icon-upload-total"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.totalUploadSize))]), e._v(" "), i("p", [e._v("累计上传")])]), e._v(" "), i("li", [i("i", {staticClass: "xly-icon-user"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.totalBenifites))]), e._v(" "), i("p", [e._v("人品值")])])])]), e._v(" "), i("div", {staticClass: "xly-data__other"}, [i("h4", [e._v("其它数据")]), e._v(" "), i("ul", [i("li", [i("i", {staticClass: "xly-icon-file-1"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.downloadFinishFiles) + "个")]), e._v(" "), i("p", [e._v("下载文件")])]), e._v(" "), i("li", [i("p", {staticClass: "data"}, [i("i", {staticClass: "xly-icon-peak-download"}), e._v(e._s(e.maxDownloadSpeed) + "\n          ")]), e._v(" "), i("p", [e._v("下载峰值")])]), e._v(" "), i("li", [i("p", {staticClass: "data"}, [i("i", {staticClass: "xly-icon-peak-upload"}), e._v(e._s(e.maxUploadSpeed))]), e._v(" "), i("p", [e._v("上传峰值")])])])]), e._v(" "), i("div", {staticClass: "xly-data__other xly-data__other--vip"}, [i("h4", [e._v("会员数据")]), e._v(" "), i("ul", [i("li", {class: {"is-disabled": !e.isVip}}, [i("i", {staticClass: "xly-icon-speed"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.vipAccPercent))]), e._v(" "), i("p", [e._v("会员加速率")])]), e._v(" "), i("li", {class: {"is-disabled": !e.isVip}}, [i("i", {staticClass: "xly-icon-download-total"}), e._v(" "), i("p", {staticClass: "data"}, [e._v(e._s(e.vipDonwloadSize))]), e._v(" "), i("p", [e._v("会员累计下载")])]), e._v(" "), i("li", {class: {"is-disabled": !e.isVip}}, [i("p", {staticClass: "data"}, [i("i", {staticClass: "xly-icon-time"}), e._v(e._s(e.vipSave))]), e._v(" "), i("p", [e._v("累计节省时间")])])]), e._v(" "), i("p", {
            directives: [{
                name: "show",
                rawName: "v-show",
                value: !e.isVip,
                expression: "!isVip"
            }], staticClass: "xly-data__other-note"
        }, [e._v("您尚未开通迅雷会员，无法统计此项数据")])])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {
                "custom-class": ["xlx-dialog-analysis"],
                "footer-enabled": e.showStart,
                visible: ""
            }, on: {close: e.handleClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v(e._s(e.detail ? "下载诊断详情" : "下载诊断"))]), e._v(" "), i("div", {staticClass: "td-dialog__body"}, [e.showStart ? [i("p", {staticClass: "analysis-tips"}, [e._v("全面诊断您的迅雷能否正常工作。如果您遇到“无法下载任何文件、下载速度缓慢、无法登录帐号”等问题，使用本工具能够获得有助于分析问题原因的技术信息。")])] : e.showDetecting ? [i("div", {staticClass: "analysis"}, [i("div", {staticClass: "analysis__hd"}, [e.isDetecting ? i("div", {staticClass: "td-progress"}, [i("div", {staticClass: "xlx-progress__tips"}, [e._v(e._s(e.currentDetectDesc))]), e._v(" "), i("div", {staticClass: "td-progress-bar"}, [i("div", {staticClass: "td-progress-bar__outer"}, [i("div", {
            staticClass: "td-progress-bar__inner",
            style: e.progressStyle
        })])])]) : i("div", {staticClass: "analysis__result-txt"}, [e._v("\n            诊断到\n            "), i("em", [e._v(e._s(e.problemNum))]), e._v("项问题，结果如下：\n          ")]), e._v(" "), i("td-button", {
            attrs: {disabled: e.isDetecting},
            on: {click: e.handleDetectAgain},
            nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [e._v(e._s(e.isDetecting ? "正在诊断 " + e.percent + "%" : "再次诊断"))])], 1), e._v(" "), i("div", {staticClass: "analysis__bd"}, [i("ul", {staticClass: "analysis-list"}, [e._l(e.sortDetectingItems, function (t) {
            return [i("li", {
                key: t.name,
                class: ["analysis__item", e.itemIconClass(t), t.expand ? "is-expand" : ""],
                on: {
                    mouseenter: function (e) {
                        t.showExpand = !0
                    }, mouseleave: function (e) {
                        t.showExpand = !1
                    }, click: function (i) {
                        e.expandItem(t)
                    }
                }
            }, [i("div", {class: ["icon-expand", t.showExpand ? "" : "is-hide"]}), e._v(" "), i("div", {staticClass: "icon-wp"}, [i("i", {staticClass: "xlx-icon"})]), e._v(" "), i("div", {staticClass: "title"}, [e._v(e._s(t.name))]), e._v(" "), i("div", {
                staticClass: "msg",
                attrs: {title: e.getDetectItemMsg(t)}
            }, [e._v(e._s(e.getDetectItemMsg(t)))]), e._v(" "), e.isItemDetectFinish(t) ? i("div", {staticClass: "result"}, [e._v(e._s(e.isItemDetectSuccess(t) ? "正常" : "失败"))]) : e._e()]), e._v(" "), t.expand ? i("li", {
                key: t.name + "_detail",
                staticClass: "analysis__detail",
                on: {
                    mouseenter: function (e) {
                        t.showExpand = !0
                    }, mouseleave: function (e) {
                        t.showExpand = !1
                    }
                }
            }, [i("div", [e._v(e._s(t.detail))])]) : e._e()]
        })], 2), e._v(" "), e.isDetectFinish ? i("a", {
            staticClass: "analysis-detail",
            attrs: {href: "javascript:;"},
            on: {click: e.handleShowDetail}
        }, [e._v("\n            查看诊断详情\n            "), i("i", {staticClass: "td-icon-arrow-right"})]) : e._e()]), e._v(" "), i("div", {staticClass: "analysis__ft"}, [e.localIPInfo && e.localIPInfo.teleCommunications.length > 0 ? i("div", {
            staticClass: "location",
            attrs: {title: e.localIPInfoTitle}
        }, [e._v("\n            所在地：\n            "), i("span", {staticClass: "location-item"}, [e._v(e._s(e.localIPInfo.teleCommunications))]), e._v(" "), e.localIPInfo.localIP.length > 0 ? i("span", {staticClass: "location-item"}, [e._v("（" + e._s(e.localIPInfo.localIP) + "）")]) : e._e()]) : e._e(), e._v(" "), e.isDetectFinish && !e.isDetectSuccess ? i("a", {
            staticClass: "analysis__help",
            attrs: {href: "javascript:;"},
            on: {click: e.handleContactCustomerService}
        }, [e._v("联系客服")]) : e._e()])])] : [i("ul", {staticClass: "analysis-result-list"}, [e.localIPInfo && e.localIPInfo.teleCommunications.length > 0 ? i("li", {staticClass: "analysis-result-item"}, [i("span", {staticClass: "txt"}, [e._v("所在地：")]), e._v(" "), i("span", {staticClass: "txt"}, [e._v(e._s(e.localIPInfo.teleCommunications))]), e._v(" "), i("span", {staticClass: "txt"}, [e._v("（" + e._s(e.localIPInfo.localIP) + "）")])]) : e._e(), e._v(" "), i("li", {staticClass: "analysis-result-item"}, [i("span", {staticClass: "txt"}, [e._v("Windows版本：")]), e._v(" "), i("span", {staticClass: "txt"}, [e._v(e._s(e.osVersion))])]), e._v(" "), i("li", {staticClass: "analysis-result-item"}, [i("span", {staticClass: "txt"}, [e._v("迅雷X版本：")]), e._v(" "), i("span", {staticClass: "txt"}, [e._v(e._s(e.thunderXVersion))])]), e._v(" "), i("li", {staticClass: "analysis-result-item"}, [i("span", {staticClass: "txt"}, [e._v("迅雷下载引擎版本：")]), e._v(" "), i("span", {staticClass: "txt"}, [e._v(e._s(e.downloadSDKVersion))])]), e._v(" "), i("li", {staticClass: "analysis-result-item"}, [i("span", {staticClass: "txt"}, [e._v("当前使用的DNS信息：")]), e._v(" "), i("span", {staticClass: "txt"}), e._v(" "), i("span", {staticClass: "txt"}, [e._v(e._s(e.dnsInfos))])]), e._v(" "), e._l(e.detectAllDetail, function (t, n) {
            return i("li", {
                key: n,
                staticClass: "analysis-result-item"
            }, [i("span", {staticClass: "txt"}, [e._v(e._s(t.date))]), e._v(" "), i("span", {staticClass: "txt"}, [e._v(e._s(t.time))]), e._v(" "), i("span", {staticClass: "txt"}, [e._v(e._s(t.desc))])])
        })], 2), e._v(" "), i("div", {staticClass: "analysis-result-oper"}, [i("a", {
            staticClass: "analysis-back",
            attrs: {href: "javascript:;"},
            on: {click: e.handleDetailReturn},
            nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [i("i", {staticClass: "td-icon-arrow-left"}), e._v("返回\n        ")]), e._v(" "), i("td-button", {
            attrs: {secondary: ""},
            on: {click: e.handleDetailSave},
            nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [e._v("保存")]), e._v(" "), i("td-tooltip", {
            staticStyle: {"padding-left": "10px"},
            attrs: {content: e.copyTipsText, visible: e.isShowCopyTips, placement: "top"}
        }, [i("td-button", {
            on: {click: e.handleDetailCopy}, nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [e._v("复制")])], 1)], 1)]], 2), e._v(" "), e.showStart ? i("template", {slot: "footer"}, [i("td-button", {
            on: {
                click: function (t) {
                    e.handleStartDetect("start_diagnosis")
                }
            }, nativeOn: {
                click: function (e) {
                    e.stopPropagation()
                }
            }
        }, [e._v("开始诊断")])], 1) : e._e()], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {
                "custom-class": ["xly-dialog-filetype-select"],
                "footer-enabled": !1,
                visible: ""
            }, on: {close: e.handleCancel}
        }, [i("div", {staticClass: "xly-filetype-select"}, [i("div", {staticClass: "xly-filetype-select__nav-wp"}, [i("div", {
            ref: "nav",
            staticClass: "xly-filetype-select__nav"
        }, e._l(e.items, function (t, n) {
            return i("a", {
                key: t.label,
                staticClass: "xly-filetype-select__item",
                class: {"is-active": e.selectLabel === t.label},
                attrs: {href: "javascript:;"},
                on: {
                    click: function (i) {
                        e.onSelectChange(t, n)
                    }
                }
            }, [i("span", {
                staticClass: "tab-txt",
                attrs: {title: t.label}
            }, [e._v(e._s(t.label))]), e._v(" "), i("i", {
                directives: [{
                    name: "show",
                    rawName: "v-show",
                    value: "自定义" !== t.label,
                    expression: "item.label !== '自定义'"
                }], staticClass: "td-icon-close", on: {
                    click: function (i) {
                        i.stopPropagation(), e.removeFilter(t, n)
                    }
                }
            })])
        }))]), e._v(" "), i("div", {staticClass: "xly-filetype-select__cont-wp"}, [i("ul", {staticClass: "xly-filetype-select__cont"}, [i("li", {staticClass: "xly-filetype-select__pane"}, [i("td-input", {
            class: {"is-warn": e.isWarning},
            attrs: {label: "筛选项名称：", placeholder: "不超过30个字", value: e.editItem.label},
            on: {input: e.handleLabelChange}
        }), e._v(" "), i("div", {
            directives: [{
                name: "show",
                rawName: "v-show",
                value: "" !== e.warningTips1,
                expression: "warningTips1 !== ''"
            }], staticClass: "warning-tips", attrs: {title: e.warningTips1}
        }, [e._v(e._s(e.warningTips1))]), e._v(" "), i("div", {staticClass: "file-condition"}, [i("td-input", {
            attrs: {
                type: "textarea",
                label: "文件名包含：",
                placeholder: "请填写文件名关键词，按回车键换行设置多个关键词",
                value: e.editItem.nameFilterInput
            }, on: {input: e.handleNameFilterChange}
        }), e._v(" "), i("td-input", {
            attrs: {
                type: "textarea",
                label: "扩展名包含：",
                placeholder: "请填写文件扩展名关键词，按回车键换行设置多个关键词",
                value: e.editItem.extFilterInput
            }, on: {input: e.hanleExtFilterChange}
        })], 1), e._v(" "), i("div", {
            directives: [{
                name: "show",
                rawName: "v-show",
                value: "" !== e.warningTips2,
                expression: "warningTips2 !== ''"
            }], staticClass: "warning-tips", attrs: {title: e.warningTips2}
        }, [e._v(e._s(e.warningTips2))]), e._v(" "), i("td-button", {
            attrs: {disabled: !e.saveEnable},
            on: {click: e.onSave}
        }, [e._v("保存")])], 1)])])]), e._v(" "), i("td-message", {
            ref: "message",
            attrs: {type: "success"}
        }, [e._v("\n    " + e._s(e.messageContent) + "\n    "), i("a", {attrs: {href: "javascript:;"}})])], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, n = e._self._c || t;
        return n("td-dialog", {
            attrs: {"custom-class": ["xlx-dialog-big-file"], "footer-enabled": !1, visible: ""},
            on: {close: e.handleClose}
        }, [n("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("请选择“申请磁盘空间”的方式")]), e._v(" "), n("div", {staticClass: "td-dialog__body"}, [n("p", {staticClass: "tips-txt"}, [e._v("\n      你正在下载的文件较大，如用“传统方式”下载，磁盘将持续处于繁忙状态；现在，迅雷新增\n      "), n("em", [e._v("“快速方式”")]), e._v("，需要使用管理员权限快速申请磁盘空间。建议您选择“快速方式”，并在下一步出现的对话框（如下图）中，\n      "), n("br"), e._v(" "), n("em", [e._v("选择“是”")]), e._v("。\n    ")]), e._v(" "), n("div", {staticClass: "tips-img"}, [n("img", {
            attrs: {
                src: i(820),
                alt: "图片示意"
            }
        })])]), e._v(" "), n("div", {staticClass: "td-dialog__footer"}, [n("div", {staticClass: "td-dialog-footer"}, [n("td-button", {on: {click: e.handleQuickMode}}, [e._v("快速方式")]), e._v(" "), n("td-button", {
            attrs: {secondary: ""},
            on: {click: e.handleTraditionalMode}
        }, [e._v("传统方式")])], 1), e._v(" "), n("p", {staticClass: "tips-oper"}, [e._v(e._s(e.countDownSeconds) + "s后，默认选择传统方式")])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("td-dialog", {
            attrs: {
                "custom-class": "xly-dialog-imgdlg",
                visible: "",
                fullscreen: "",
                "footer-enabled": !1
            }, on: {close: this.handleCloseButton}
        }, [t("img", {style: this.imgStyle, attrs: {src: this.imgSrc}})])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {visible: "", "custom-class": ["xly-dialog-share"], "footer-enabled": !1},
            on: {close: e.handleClose}
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("分享")]), e._v(" "), e.loading ? i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "td-dialog-comfirm"}, [i("div", {staticClass: "td-dialog-comfirm__content"}, [i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("正在生成下载链接……")])])])]) : e.failed ? i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "td-dialog-comfirm"}, [i("span", {staticClass: "td-dialog-comfirm__icon"}, [i("i", {staticClass: "td-icon-error"})]), e._v(" "), i("div", {staticClass: "td-dialog-comfirm__content"}, [i("p", {staticClass: "td-dialog-comfirm__title"}, [e._v("生成下载链接失败")])])]), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("button", {
            staticClass: "td-button td-button--secondary",
            on: {click: e.handleRetry}
        }, [e._v("重试")])])])]) : i("div", {staticClass: "td-dialog__body"}, [i("div", {staticClass: "xly-dialog-share__form"}, [i("ul", [i("li", {staticClass: "xly-dialog-share__item"}, [i("span", {staticClass: "xly-dialog-share__label"}, [e._v("口令分享：")]), e._v(" "), i("div", {staticClass: "xly-dialog-share__box"}, [i("label", {staticClass: "td-input"}, [i("span", {staticClass: "td-input__label"}), e._v(" "), 0 === e.birdkeyStatus ? i("input", {
            staticClass: "td-input__inner",
            attrs: {type: "text", readonly: "readonly", value: "正在生成口令..."}
        }) : 1 === e.birdkeyStatus ? i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.birdkeyText,
                expression: "birdkeyText"
            }],
            staticClass: "td-input__inner",
            attrs: {type: "text", readonly: "readonly"},
            domProps: {value: e.birdkeyText},
            on: {
                input: function (t) {
                    t.target.composing || (e.birdkeyText = t.target.value)
                }
            }
        }) : 2 === e.birdkeyStatus ? i("input", {
            staticClass: "td-input__inner",
            attrs: {type: "text", readonly: "readonly", value: "生成口令失败"}
        }) : e._e()]), e._v(" "), 0 === e.birdkeyStatus ? i("td-button", {attrs: {disabled: ""}}, [e._v("复制口令")]) : 1 === e.birdkeyStatus ? i("td-button", {on: {click: e.onCopyBirdkeyBtnClick}}, [e._v("复制口令")]) : 2 === e.birdkeyStatus ? i("td-button", {on: {click: e.retryEncode}}, [e._v("点击重试")]) : e._e()], 1), e._v(" "), i("div", {staticClass: "xly-dialog-share__box"}, [i("td-checkbox", {
            attrs: {value: e.isChecked},
            on: {input: e.handleCheck}
        }, [e._v("加密迅雷口令")]), e._v(" "), e.userpwd ? i("span", {staticClass: "xly-dialog-share__code"}, [e._v("提取码：" + e._s(e.userpwd))]) : e._e()], 1)]), e._v(" "), i("li", [i("div", [i("span", {staticClass: "xly-dialog-share__label"}, [e._v("链接分享：")]), e._v(" "), i("div", {staticClass: "xly-dialog-share__box"}, [i("label", {staticClass: "td-input"}, [i("input", {
            directives: [{
                name: "model",
                rawName: "v-model",
                value: e.shareLink,
                expression: "shareLink"
            }],
            staticClass: "td-input__inner",
            attrs: {type: "text", readonly: "readonly"},
            domProps: {value: e.shareLink},
            on: {
                input: function (t) {
                    t.target.composing || (e.shareLink = t.target.value)
                }
            }
        })]), e._v(" "), i("td-button", {on: {click: e.handleCopyShareLink}}, [e._v("复制链接")])], 1)])])]), e._v(" "), i("div", {staticClass: "xly-share-way"}, [i("div", {staticClass: "xly-share-way__code"}, [i("p", {staticClass: "xly-share-way__title"}, [e._v("扫码分享：")]), e._v(" "), i("div", {staticClass: "xly-share-way__inner"}, [i("div", {staticClass: "xly-share-way__image"}, [i("canvas", {attrs: {id: "qrcodecanvas"}})]), e._v(" "), i("p", {staticClass: "xly-share-way__text"}, [e._v("\n              用"), i("em", [e._v("微信")]), e._v("、"), i("em", [e._v("QQ")]), e._v("扫码点击"), i("br"), e._v("\n              右上角"), i("em", [i("i", {staticClass: "xly-icon-more"})]), e._v("分享给好友\n            ")])])]), e._v(" "), i("div", {staticClass: "xly-share-way__other"}, [i("p", {staticClass: "xly-share-way__title"}, [e._v("其他分享：")]), e._v(" "), i("div", {staticClass: "xly-share-way__icon"}, [i("a", {
            staticClass: "share-mode-figure",
            attrs: {href: "javascript:;"},
            on: {click: e.handleShareQQ}
        }, [i("i", {staticClass: "xly-icon-qq"})]), e._v(" "), i("a", {
            staticClass: "share-mode-figure",
            attrs: {href: "javascript:;"},
            on: {click: e.handleShareQQZone}
        }, [i("i", {staticClass: "xly-icon-qzone"})])])])])])]), e._v(" "), i("td-message", {
            ref: "message",
            attrs: {type: e.messageType}
        }, [e._v(e._s(e.messageText))])], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "xly-fav"}, [i("td-tabs", {
            attrs: {tabs: e.tabs, "active-key": e.activeKey}, on: {
                "update:activeKey": function (t) {
                    e.activeKey = t
                }
            }, scopedSlots: e._u([{
                key: "default", fn: function (t) {
                    var n = t.tab;
                    return ["my_favorites" === n.key ? [0 === e.bookmarks.length ? i("div", {staticClass: "xly-fav__empty"}, [i("span", {staticClass: "xly-blank-fav"}), e._v(" "), i("p", [e._v("好的站点, 等你收藏")])]) : i("div", {staticClass: "xly-fav__list"}, [i("ul", e._l(e.bookmarks, function (t, n) {
                        return i("li", {
                            key: t.url, on: {
                                click: function (i) {
                                    i.stopPropagation(), e.onFavItemClick(t, n)
                                }, contextmenu: function (i) {
                                    e.onFavItemMenu(t, n)
                                }
                            }
                        }, [i("div", {staticClass: "xly-fav__picture"}, [t.iconUrl ? i("img", {
                            attrs: {
                                src: t.iconUrl,
                                alt: ""
                            }
                        }) : i("i", {staticClass: "xly-icon-net"})]), e._v(" "), i("div", {staticClass: "xly-fav__content"}, [i("p", {staticClass: "title"}, [i("span", {
                            directives: [{
                                name: "show",
                                rawName: "v-show",
                                value: t.top,
                                expression: "bookmark.top"
                            }], staticClass: "tag-top"
                        }, [e._v("顶")]), e._v(" "), i("span", {staticClass: "name"}, [e._v(e._s(t.name))])]), e._v(" "), i("p", {staticClass: "link"}, [e._v(e._s(t.url))])])])
                    }))])] : "history" === n.key ? [0 === e.historys.length ? [i("div", {staticClass: "xly-fav__empty"}, [i("span", {staticClass: "xly-blank-record"}), e._v(" "), i("p", [e._v("暂无浏览记录")])])] : [i("div", {staticClass: "xly-fav__list  xly-fav__list--record"}, [e._l(e.historysDates, function (t, n) {
                        return [i("p", {
                            key: t + "time",
                            staticClass: "xly-fav__time"
                        }, [e._v(e._s(e.dateDisplay(t)))]), e._v(" "), i("ul", {key: t}, e._l(e.historysMaps[t], function (t, o) {
                            return i("li", {
                                key: t.url, on: {
                                    click: function (i) {
                                        i.stopPropagation(), e.onHistoryClick(t)
                                    }, contextmenu: function (i) {
                                        e.onHistoryItemMenu(t, o, n)
                                    }
                                }
                            }, [i("div", {staticClass: "xly-fav__picture"}, [t.iconUrl ? i("img", {
                                attrs: {
                                    src: t.iconUrl,
                                    alt: ""
                                }
                            }) : i("i", {staticClass: "xly-icon-net"})]), e._v(" "), i("div", {staticClass: "xly-fav__content"}, [i("p", {staticClass: "title"}, [i("span", {staticClass: "name"}, [e._v(e._s(t.name))])]), e._v(" "), i("p", {staticClass: "link"}, [e._v(e._s(t.url))])])])
                        }))]
                    }), e._v(" "), e.hasMore ? i("a", {
                        staticClass: "xly-fav__link",
                        attrs: {href: "javascript:;"},
                        on: {click: e.onLoadMore}
                    }, [e._v("查看更多 "), i("i", {staticClass: "td-icon-arrow-down"})]) : i("p", {staticClass: "xly-fav__text"}, [e._v("没有更多了")])], 2), e._v(" "), i("div", {staticClass: "xly-fav__clear"}, [i("a", {
                        attrs: {href: "javascript:;"},
                        on: {click: e.onClearHistorys}
                    }, [e._v("全部清空 ")])])]] : e._e()]
                }
            }])
        }), e._v(" "), e.showClearHistoryFlag ? i("div", {staticClass: "td-cover"}, [i("div", {staticClass: "td-dialog xly-dialog-fav"}, [i("div", {staticClass: "td-dialog__header"}, [i("a", {
            staticClass: "td-dialog__close",
            attrs: {href: "javascript:;", title: "关闭"},
            on: {click: e.cancelClearHistory}
        }, [i("i", {staticClass: "td-icon-close"})])]), e._v(" "), e._m(0), e._v(" "), i("div", {staticClass: "td-dialog__footer"}, [i("div", {staticClass: "td-dialog-footer"}, [i("div", {staticClass: "xly-dialog__footer"}, [i("div", {staticClass: "xly-dialog__button"}, [i("button", {
            staticClass: "td-button",
            on: {click: e.doClearHistory}
        }, [e._v(" 确定")]), e._v(" "), i("button", {
            staticClass: "td-button td-button--other",
            on: {click: e.cancelClearHistory}
        }, [e._v(" 取消")])])])])])])]) : e._e(), e._v(" "), i("td-message", {
            ref: "message",
            attrs: {type: e.messageType}
        }, [e._v("\n    " + e._s(e.messageContent) + "\n    "), i("a", {attrs: {href: "javascript:;"}})])], 1)
    }, o = [function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("div", {staticClass: "td-dialog__body"}, [t("p", [this._v("确定要清空浏览记录吗？")])])
    }];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-login", visible: ""}, on: {
                close: function (t) {
                    e.handleClose("close")
                }
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("下载该任务需要登录此站点")]), e._v(" "), i("p", {staticClass: "xly-dialog-login__tips"}, [e._v(e._s(e.options.site))]), e._v(" "), i("ul", [i("li", {staticClass: "xly-dialog-login__item"}, [i("td-tooltip", {
            staticStyle: {
                display: "flex",
                flex: "1"
            }, attrs: {content: e.tipsText, visible: e.isShowTips, placement: "top", offset: {x: 60}}
        }, [i("td-input", {
            attrs: {maxlength: "50", label: "用户名", placeholder: "请填写用户名"},
            model: {
                value: e.username, callback: function (t) {
                    e.username = t
                }, expression: "username"
            }
        })], 1)], 1), e._v(" "), i("li", {staticClass: "xly-dialog-login__item"}, [i("td-input", {
            attrs: {
                maxlength: "50",
                label: "密码",
                placeholder: "密码"
            }, model: {
                value: e.password, callback: function (t) {
                    e.password = t
                }, expression: "password"
            }
        })], 1)]), e._v(" "), i("div", {
            staticClass: "xly-dialog__footer",
            attrs: {slot: "footer"},
            slot: "footer"
        }, [i("div", {staticClass: "xly-dialog__button"}, [i("td-button", {
            on: {
                click: function (t) {
                    return t.stopPropagation(), e.handleOK(t)
                }
            }
        }, [e._v("登录")]), e._v(" "), i("td-button", {
            staticClass: "td-button--other", on: {
                click: function (t) {
                    e.handleClose("cancel")
                }
            }
        }, [e._v("取消")])], 1)])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, n = e._self._c || t;
        return n("td-dialog", {
            attrs: {
                "custom-class": "xlx-dialog-content",
                "footer-enabled": !e.showGuide,
                visible: ""
            }, on: {close: e.handleCancel}
        }, [e.showGuide ? [n("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("遥控电脑需安装手机迅雷")]), e._v(" "), n("div", {staticClass: "td-dialog__body"}, [n("div", {staticClass: "xlx-dialog-content__main"}, [n("ul", [n("li", {staticClass: "xlx-dialog-content__item"}, [n("p", {staticClass: "title"}, [n("span", {staticClass: "number"}, [e._v("1")]), e._v(" 未安装手机迅雷APP扫码下载\n            ")]), e._v(" "), n("div", {staticClass: "code"}, [n("canvas", {attrs: {id: "qrcodecanvas"}})])]), e._v(" "), n("li", {staticClass: "xlx-dialog-content__item"}, [n("p", {staticClass: "title"}, [n("span", {staticClass: "number"}, [e._v("2")]), e._v(" 已安装手机迅雷APP\n              "), n("span", {staticClass: "tips"}, [e._v("(请使用6.19及以上版本）")])]), e._v(" "), n("div", {staticClass: "xlx-dialog-content__step"}, [n("ul", [n("li", [n("span", [e._v("打开APP")]), e._v(" "), n("div", {staticClass: "detail"}, [n("div", {staticClass: "detail__image"}, [n("img", {
            attrs: {
                src: i(832),
                alt: ""
            }
        })]), e._v(" "), n("p", [e._v("迅雷")])]), e._v(" "), n("span", {staticClass: "icon-arrow"})]), e._v(" "), n("li", [n("span", [e._v("选择")]), e._v(" "), n("div", {staticClass: "detail"}, [n("div", {staticClass: "detail__image"}, [n("img", {
            attrs: {
                src: i(833),
                alt: ""
            }
        })]), e._v(" "), n("p", [e._v("我的")])]), e._v(" "), n("span", {staticClass: "icon-arrow"})]), e._v(" "), n("li", [n("span", [e._v("点击")]), e._v(" "), n("div", {staticClass: "detail"}, [n("div", {staticClass: "detail__image"}, [n("img", {
            attrs: {
                src: i(834),
                alt: "遥控电脑"
            }
        })]), e._v(" "), n("p", [e._v("遥控电脑")])])])])])])])])])] : "offline" === e.state ? [n("template", {slot: "header"}, [n("h2", [e._v("手机遥控下载")]), e._v(" "), n("p", [e._v("随时随地添加下载任务，查看下载记录")])]), e._v(" "), n("div", {staticClass: "td-dialog__body"}, [n("div", {staticClass: "xlx-dialog-content__demo"}, [n("img", {
            attrs: {
                src: i(835),
                alt: "教程"
            }
        })])]), e._v(" "), n("a", {
            staticClass: "td-button td-button--large",
            attrs: {slot: "footer", href: "javascript:;"},
            on: {click: e.handleOpen},
            slot: "footer"
        }, [e._v("开启手机遥控")])] : "online" === e.state ? [n("template", {slot: "header"}, [n("h2", [e._v("手机迅雷遥控中")]), e._v(" "), n("p", [e._v("退出手机或者电脑任意账户，控制结束")])]), e._v(" "), n("div", {staticClass: "td-dialog__body"}, [n("div", {staticClass: "xlx-dialog-content__demo"}, [n("img", {
            attrs: {
                src: i(836),
                alt: "教程"
            }
        })])]), e._v(" "), n("a", {
            staticClass: "td-button td-button--large",
            attrs: {slot: "footer", href: "javascript:;"},
            on: {click: e.handleOk},
            slot: "footer"
        }, [e._v("知道了")])] : e._e()], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, n = e._self._c || t;
        return n("td-dialog", {
            attrs: {
                "custom-class": "xlx-dialog-content xlx-dialog-trans",
                "footer-enabled": !1,
                visible: ""
            }, on: {close: e.handleCancel}
        }, [n("div", {staticClass: "td-dialog__body"}, [n("div", {staticClass: "xlx-dialog-trans__wp"}, [n("div", {staticClass: "xlx-dialog-trans__txt"}, [n("h2", {staticClass: "title"}, [e._v("传文件到手机")]), e._v(" "), n("div", {staticClass: "mobile-step"}, [n("p", {staticClass: "step"}, [e._v("\n            请确保手机和电脑连接在\n            "), n("em", [e._v("同一wifi")])]), e._v(" "), n("p", {staticClass: "step"}, [n("a", {
            attrs: {href: "javascript:;"},
            on: {click: e.popupDownloadShoulei}
        }, [e._v("更新")]), e._v("安卓手机迅雷至6.20并\n            "), n("em", [e._v("扫描二维码")])])]), e._v(" "), n("div", {staticClass: "tips"}, [e._v("（当不处于同一wifi下时，将进行普通下载）")])]), e._v(" "), n("div", {staticClass: "xlx-dialog-trans__img"}, [n("div", {staticClass: "xlx-dialog-trans__code"}, [e.qrcodeFailed ? n("p", {staticClass: "error-tips"}, [e._v("刷新获取二维码或检查路由连接情况")]) : n("canvas", {attrs: {id: "qrcodecanvas"}})]), e._v(" "), n("a", {
            staticClass: "code-oper",
            attrs: {href: "javascript:;"}
        }, [e._v("\n          扫码传送\n          "), n("i", {
            staticClass: "xlx-icon-replay",
            on: {click: e.handleRefreshQRCode}
        })]), e._v(" "), n("img", {attrs: {src: i(838), alt: ""}})])])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-speed", visible: ""}, on: {
                close: function (t) {
                    e.handleCancel(e.action.Close)
                }
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v(e._s(e.options.title))]), e._v(" "), i("div", {staticClass: "xly-dialog-speed__speed"}, [i("ul", [i("li", {staticClass: "xly-dialog-speed__item"}, [i("td-checkbox", {
            attrs: {value: e.formData.maxDownloadSpeedEnabled.value},
            on: {
                input: function (t) {
                    return e.handleInput(t, "maxDownloadSpeedEnabled")
                }
            }
        }, [e._v("最大下载速度")]), e._v(" "), i("div", {staticClass: "xly-dialog-speed__content"}, [i("td-slider", {
            attrs: {
                disabled: !e.formData.maxDownloadSpeedEnabled.value,
                value: e.formData.maxDownloadSpeed.value,
                scales: [60, 500, 1024, 5120, 51200],
                marks: ["60KB", "500KB", "1MB", "5MB", "50MB"]
            }, on: {
                input: function (t) {
                    return e.handleInput(Number(t), "maxDownloadSpeed")
                }
            }
        }), e._v(" "), i("div", {staticClass: "xly-dialog-speed__input"}, [i("limit-input", {
            attrs: {
                placement: "left",
                min: 60,
                max: 51200,
                isNumber: !0,
                readonly: !e.formData.maxDownloadSpeedEnabled.value,
                value: e.formData.maxDownloadSpeed.value
            }, on: {input: e.maxDownloadSpeedInput}
        }), e._v(" "), i("span", {staticClass: "xly-dialog-speed__text"}, [e._v("KB/s")])], 1)], 1)], 1), e._v(" "), i("li", {staticClass: "xly-dialog-speed__item"}, [i("td-checkbox", {
            attrs: {value: e.formData.maxUploadSpeedEnabled.value},
            on: {
                input: function (t) {
                    return e.handleInput(t, "maxUploadSpeedEnabled")
                }
            }
        }, [e._v("最大上传速度")]), e._v(" "), i("div", {staticClass: "xly-dialog-speed__content"}, [i("td-slider", {
            attrs: {
                disabled: !e.formData.maxUploadSpeedEnabled.value,
                value: e.formData.maxUploadSpeed.value,
                scales: [30, 100, 200, 1024, 2048],
                marks: ["30KB", "100KB", "200KB", "1MB", "2MB"]
            }, on: {
                input: function (t) {
                    return e.handleInput(Number(t), "maxUploadSpeed")
                }
            }
        }), e._v(" "), i("div", {staticClass: "xly-dialog-speed__input"}, [i("limit-input", {
            attrs: {
                placement: "left",
                min: 30,
                max: 2048,
                isNumber: !0,
                readonly: !e.formData.maxUploadSpeedEnabled.value,
                value: e.formData.maxUploadSpeed.value
            }, on: {input: e.maxUploadSpeedInput}
        }), e._v(" "), i("span", {staticClass: "xly-dialog-speed__text"}, [e._v("KB/s")])], 1)], 1)], 1), e._v(" "), i("li", {staticClass: "xly-dialog-speed__item"}, [i("td-checkbox", {
            attrs: {value: e.formData.limitTimeEnabled.value},
            on: {
                input: function (t) {
                    return e.handleInput(t, "limitTimeEnabled")
                }
            }
        }, [e._v("限速下载时间段")]), e._v(" "), i("div", {staticClass: "xly-dialog-speed__time"}, [i("ul", [i("li", {staticClass: "xly-dialog-speed__item xly-dialog-speed__item--flex"}, [i("span", {staticClass: "xly-dialog-speed__text"}, [e._v("开始限速时间")]), e._v(" "), i("select-native", {
            attrs: {
                options: e.hours,
                disabled: !e.formData.limitTimeEnabled.value,
                value: e.formData.limitTime[0].value.toString(),
                useNative: !1,
                position: "top"
            }, on: {
                input: function (t) {
                    return e.handleLimitInput(Number(t), 0)
                }
            }
        }), e._v(" "), i("span", {staticClass: "xly-dialog-speed__text"}, [e._v("时")]), e._v(" "), i("select-native", {
            attrs: {
                options: e.minutes,
                disabled: !e.formData.limitTimeEnabled.value,
                value: e.formData.limitTime[1].value.toString(),
                useNative: !1,
                position: "top"
            }, on: {
                input: function (t) {
                    return e.handleLimitInput(Number(t), 1)
                }
            }
        }), e._v(" "), i("span", {staticClass: "xly-dialog-speed__text"}, [e._v("分")])], 1), e._v(" "), i("li", {staticClass: "xly-dialog-speed__item xly-dialog-speed__item--flex"}, [i("span", {staticClass: "xly-dialog-speed__text"}, [e._v("结束限速时间")]), e._v(" "), i("select-native", {
            attrs: {
                options: e.hours,
                disabled: !e.formData.limitTimeEnabled.value,
                value: e.formData.limitTime[2].value.toString(),
                useNative: !1,
                position: "top"
            }, on: {
                input: function (t) {
                    return e.handleLimitInput(Number(t), 2)
                }
            }
        }), e._v(" "), i("span", {staticClass: "xly-dialog-speed__text"}, [e._v("时")]), e._v(" "), i("select-native", {
            attrs: {
                options: e.minutes,
                disabled: !e.formData.limitTimeEnabled.value,
                value: e.formData.limitTime[3].value.toString(),
                useNative: !1,
                position: "top"
            }, on: {
                input: function (t) {
                    return e.handleLimitInput(Number(t), 3)
                }
            }
        }), e._v(" "), i("span", {staticClass: "xly-dialog-speed__text"}, [e._v("分")])], 1)])])], 1)])]), e._v(" "), i("div", {
            staticClass: "xly-dialog__footer",
            attrs: {slot: "footer"},
            slot: "footer"
        }, [i("div", {staticClass: "xly-dialog__button"}, [i("td-button", {on: {click: e.handleOK}}, [e._v("确定")]), e._v(" "), i("td-button", {
            staticClass: "td-button--other",
            on: {
                click: function (t) {
                    e.handleCancel(e.action.Cancel)
                }
            }
        }, [e._v("取消")])], 1)])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "xly-viewer"}, [i("div", {
            staticClass: "xly-viewer__header",
            staticStyle: {"-webkit-app-region": "drag"}
        }, [i("div", {
            staticClass: "xly-viewer__operate",
            staticStyle: {"-webkit-app-region": "no-drag"}
        }, [i("a", {
            attrs: {title: "最小化"},
            on: {click: e.minimizeWindow}
        }, [i("i", {staticClass: "xly-icon-minimize-small"})]), e._v(" "), i("a", {
            directives: [{
                name: "show",
                rawName: "v-show",
                value: !e.isMax,
                expression: "!isMax"
            }], attrs: {title: "最大化"}, on: {
                click: function (t) {
                    e.resizeWindow("maximize")
                }
            }
        }, [i("i", {staticClass: "xly-icon-maximize-small"})]), e._v(" "), i("a", {
            directives: [{
                name: "show",
                rawName: "v-show",
                value: e.isMax,
                expression: "isMax"
            }], attrs: {title: "还原"}, on: {
                click: function (t) {
                    e.resizeWindow("reduce")
                }
            }
        }, [i("i", {staticClass: "xly-icon-reduce-small"})]), e._v(" "), i("a", {on: {click: e.closeWindow}}, [i("i", {
            staticClass: "xly-icon-close-small",
            attrs: {title: "关闭"}
        })])])]), e._v(" "), i("div", {
            ref: "viewerBody",
            staticClass: "xly-viewer__body",
            on: {
                mousewheel: function (t) {
                    return t.ctrlKey ? t.shiftKey || t.altKey || t.metaKey ? null : e.handleCtrlScroll(t) : null
                }
            }
        }, [e.isLoading ? i("div", {staticClass: "xly-viewer__loading"}, [i("i", {staticClass: "xly-icon-loading"}), e._v(" "), i("p", [e._v("加载中...")])]) : e._e(), e._v(" "), i("img", {
            ref: "image",
            style: "cursor:" + e.cursor + ";\n      left:" + e.left + "%;\n      top:" + e.top + "%;\n      width:" + e.showWidth * e.scale + "px;\n      height:" + e.showHeight * e.scale + "px;",
            attrs: {src: e.imgSrc, alt: ""},
            on: {click: e.resume, mousemove: e.onMouseMove, load: e.imgLoaded}
        })]), e._v(" "), i("div", {staticClass: "xly-viewer__footer"}, [i("a", {attrs: {href: "JavaScript:;"}}, [i("i", {
            staticClass: "xly-icon-magnify",
            class: {"is-disabled": e.scale > 4.9},
            on: {click: e.onZoomIn}
        })]), e._v(" "), i("a", {attrs: {href: "JavaScript:;"}}, [i("i", {
            staticClass: "xly-icon-minify",
            class: {"is-disabled": e.scale < .2},
            on: {click: e.onZoomOut}
        })]), e._v(" "), e.isResume ? i("a", {
            attrs: {
                href: "JavaScript:;",
                title: "最佳比例"
            }
        }, [i("i", {
            staticClass: "xly-icon-ratio-optimal",
            on: {click: e.resume}
        })]) : i("a", {attrs: {href: "JavaScript:;", title: "实际大小"}}, [i("i", {
            staticClass: "xly-icon-ratio",
            on: {click: e.resume}
        })])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("td-dialog", {
            attrs: {"custom-class": "xly-dialog-help", visible: e.visible, "footer-enabled": !1},
            on: {
                "update:visible": function (t) {
                    e.visible = t
                }, ok: e.handleCancel, close: e.handleCancel
            }
        }, [i("h2", {
            attrs: {slot: "header"},
            slot: "header"
        }, [e._v("扫码加速流程")]), e._v(" "), i("div", {staticClass: "xly-dialog-help__carousel"}, [i("td-carousel", {
            attrs: {
                "auto-play": !0,
                timeout: 2e3
            }
        }, e._l(3, function (t, n) {
            return i("td-carousel-item", {key: t}, [i("img", {attrs: {src: e.list[n], alt: ""}})])
        }))], 1), e._v(" "), i("div", {staticClass: "xly-dialog-help__rule"}, [i("h3", [e._v("功能详情：")]), e._v(" "), i("ul", [i("li", [e._v("1. 从功能激活日起开始计算，每周一凌晨定量发放三次扫码加速机会；")]), e._v(" "), i("li", [e._v("2. 每周发放加速机会不进行累加，过期清零；")]), e._v(" "), i("li", [e._v("3. 每次加速开启将消耗一次机会，单次享有最高加速流量2G；")]), e._v(" "), i("li", [e._v("4. 本加速功能免费开放，不可与抱团和会员加速（包含试用）同时使用；")])])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("div", {staticStyle: {"z-index": "1000"}}, [t("a", {
            staticClass: "td-dialog__close",
            staticStyle: {position: "fixed", "z-index": "1000"},
            attrs: {href: "javascript:;", title: "关闭"},
            on: {click: this.handleClose}
        }, [t("i", {staticClass: "td-icon-close"})]), this._v(" "), this._m(0)])
    }, o = [function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("div", {
            staticClass: "td-dialog",
            staticStyle: {display: "none"}
        }, [t("div", {staticClass: "td-dialog__header"}), this._v(" "), t("div", {staticClass: "td-dialog__body"})])
    }];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, , , , , , , , , , , , , , function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this.$createElement;
        return (this._self._c || e)(this.item.type, {
            tag: "component",
            style: this.item.styles,
            attrs: {item: this.item, label: this.item.label, formData: this.formData, value: this.value},
            on: {input: this.handleInput}
        })
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("select-window", {
            attrs: {
                editable: "",
                value: e.value,
                placeholder: "请选择下载目录",
                appendDirs: e.appendDirs,
                enablePrivateSpace: e.enablePrivateSpace,
                enableDelete: e.enableDelete,
                checked: !1,
                dropOwner: "logic",
                panel: ""
            }, on: {input: e.handleInput}, nativeOn: {
                contextmenu: function (t) {
                    return e.handleContextMenu(t)
                }
            }
        }, [i("span", {
            staticClass: "xlx-file-size",
            class: e.spaceColor,
            attrs: {slot: "suffix"},
            slot: "suffix"
        }, [e._v(e._s(e.freeSpaceFormat))]), e._v(" "), i("a", {
            staticClass: "xly-select__file",
            attrs: {slot: "suffix", href: "javascript:;"},
            on: {click: e.handleChangePath},
            slot: "suffix"
        }, [i("i", {staticClass: "xly-icon-file"})])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "xlx-skin-try"}, [i("div", {staticClass: "xlx-skin-try__mod"}, [i("div", {staticClass: "xlx-skin-try__imgbox"}, [i("img", {attrs: {src: e.guideSrc}})]), e._v(" "), i("p", {staticClass: "xlx-skin-try__tit"}, [e._v(e._s(e.tryTitle))]), e._v(" "), i("p", {staticClass: "xlx-skin-try__desc"}, [e._v("更有下载加速、网游加速、免费观影等多项特权")]), e._v(" "), i("a", {
            class: e.openBtnClass,
            attrs: {href: "javascript:;"},
            on: {click: e.onClickOpenVip}
        }, [e._v(e._s(e.tryBtnText))]), e._v(" "), i("a", {
            staticClass: "xlx-skin-close",
            attrs: {href: "javascript:;", title: "关闭"},
            on: {click: e.closeCover}
        })])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", [i("div", {staticClass: "xlx-skin-color"}, [i("ul", e._l(e.colorList.slice(1), function (t, n) {
            return i("li", {
                key: t.id,
                staticClass: "xlx-skin-color__item",
                class: {"is-chosen": e.isChosen(e.skinType.Color, t)},
                style: {background: "rgb(" + t.colors.colorPreview + ")"},
                on: {
                    click: function (i) {
                        e.setSkinInfo(e.skinType.Color, t, n)
                    }
                }
            })
        }))]), e._v(" "), i("div", {staticClass: "xlx-skin-picture"}, [i("ul", [i("li", {
            staticClass: "xlx-skin-picture__item",
            class: {"is-chosen": e.isChosen(e.skinType.Default)},
            style: {backgroundImage: "url(" + e.defaultPreview + ")"},
            on: {
                click: function (t) {
                    e.setSkinInfo(e.skinType.Default, null, 0)
                }
            }
        }, [i("p", {staticClass: "xlx-skin-picture__name"}, [e._v("默认皮肤")])]), e._v(" "), e._l(e.wallpapers, function (t, n) {
            return i("li", {
                key: t.id,
                staticClass: "xlx-skin-picture__item",
                class: {"is-chosen": e.isChosen(e.skinType.Wallpaper, t)},
                style: {backgroundImage: "url('" + t.preview + "')"},
                on: {
                    click: function (i) {
                        e.setSkinInfo(e.skinType.Wallpaper, t, n + 11)
                    }
                }
            }, [i("p", {staticClass: "xlx-skin-picture__name"}, [e._v(e._s(t.name))]), e._v(" "), i("div", {staticClass: "xlx-skin__tag-wrapper"}, [t.is_vip ? i("span", {staticClass: "xlx-skin__tag xlx-skin__tag--vip"}, [e._v("会员")]) : e._e(), e._v(" "), t.is_dynamic ? i("span", {staticClass: "xlx-skin__tag"}, [e._v("动态")]) : e._e(), e._v(" "), t.is_4k ? i("span", {staticClass: "xlx-skin__tag"}, [e._v("4K")]) : e._e()]), e._v(" "), t.showNew ? i("i", {staticClass: "xlx-skin__new"}) : e._e()])
        })], 2)]), e._v(" "), i("td-dialog", {
            staticStyle: {"z-index": "1000"},
            attrs: {"custom-class": "xlx-dialog-skin-popup", visible: e.updateDialogVisible},
            on: {
                "update:visible": function (t) {
                    e.updateDialogVisible = t
                }
            }
        }, [i("span", {staticClass: "xlx-image-update"}), e._v(" "), i("p", {staticClass: "xlx-dialog-skin-popup__text-1"}, [e._v("升级新版客户端，体验动态皮肤")]), e._v(" "), i("p", {staticClass: "xlx-dialog-skin-popup__text-2"}, [e._v("还有私人空间、迅雷社区20多项新功能")]), e._v(" "), i("td-button", {
            attrs: {slot: "footer"},
            on: {click: e.updateApp},
            slot: "footer"
        }, [e._v("马上升级")])], 1), e._v(" "), i("td-dialog", {
            staticStyle: {"z-index": "1000"},
            attrs: {"custom-class": "xlx-dialog-skin-popup", visible: e.vipDialogVisible},
            on: {
                "update:visible": function (t) {
                    e.vipDialogVisible = t
                }, close: function (t) {
                    e.$emit("restore-skin")
                }
            }
        }, [i("span", {staticClass: "xlx-image-vip"}), e._v(" "), i("p", {staticClass: "xlx-dialog-skin-popup__text-1"}, [e._v("开通迅雷会员尊享品质皮肤")]), e._v(" "), i("p", {staticClass: "xlx-dialog-skin-popup__text-2"}, [e._v("更有会员加速、离线空间等30多项特权")]), e._v(" "), i("template", {slot: "footer"}, [i("td-button", {
            staticClass: "xlx-button--vip",
            on: {click: e.openVip}
        }, [e._v("开通会员")]), e._v(" "), e.isLogined ? e._e() : i("a", {
            staticClass: "xlx-dialog-skin__link",
            attrs: {href: "javascript:;"},
            on: {
                click: function (t) {
                    e.showloginDlg("vipDialog")
                }
            }
        }, [e._v("会员登录")])], 1)], 2), e._v(" "), i("div", {
            directives: [{
                name: "show",
                rawName: "v-show",
                value: e.loginLayerVisible,
                expression: "loginLayerVisible"
            }], staticClass: "xlx-skin-cover", staticStyle: {position: "fixed"}
        }, [i("div", {
            staticClass: "xlx-skin__chosen",
            style: {background: "rgb(" + e.sget(e.colorItem, "colors", "colorPreview") + ")"}
        }, [e.skinInfo.type === e.skinType.Color ? i("span", {staticClass: "xlx-image-color"}) : e.skinInfo.type === e.skinType.Wallpaper ? i("img", {
            attrs: {
                src: e.sget(e.wallpaper, "preview"),
                alt: e.sget(e.wallpaper, "name")
            }
        }) : e._e()]), e._v(" "), i("h3", [e._v("登录后即可使用该皮肤哦！")]), e._v(" "), i("td-button", {
            on: {
                click: function (t) {
                    e.showloginDlg("loginLayer")
                }
            }
        }, [e._v("立即登录")]), e._v(" "), i("a", {
            staticClass: "xlx-skin-cover__close",
            attrs: {href: "javascript:;", title: "关闭"},
            on: {click: e.closeLoginLayer}
        }, [i("td-icon", {attrs: {type: "close"}})], 1)], 1)], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", [i("div", {staticClass: "xlx-skin-super-box"}, [i("div", {staticClass: "xlx-skin-super-title"}, [i("em", [e._v("移动皮肤")]), e._v(" "), i("td-tooltip", {
            attrs: {
                content: "拖动客户端窗口，皮肤可以随之移动",
                offset: {x: -2, y: -2},
                trigger: "hover",
                visible: !1,
                placement: "right"
            }
        }, [i("i", {staticClass: "xlx-skin-super-icon-question"})])], 1), e._v(" "), i("div", {staticClass: "xlx-skin-picture xlx-skin-picture2"}, [i("ul", e._l(e.wallpapers, function (t, n) {
            return i("li", {
                key: t.id,
                staticClass: "xlx-skin-picture__item",
                class: {"is-chosen": e.isChosen(e.skinType.Cool, t)},
                style: {backgroundImage: "url('" + t.preview + "')"},
                on: {
                    click: function (i) {
                        e.setSkinInfo(e.skinType.Cool, t, n)
                    }
                }
            }, [i("p", {staticClass: "xlx-skin-picture__name"}, [e._v(e._s(t.name))]), e._v(" "), i("div", {staticClass: "xlx-skin__tag-wrapper"}, [t.is_svip ? i("span", {staticClass: "xlx-skin__tag xlx-skin__tag--svip"}, [e._v("SVIP")]) : t.is_vip ? i("span", {staticClass: "xlx-skin__tag xlx-skin__tag--vip"}, [e._v("VIP")]) : e._e(), e._v(" "), t.is_dynamic ? i("span", {staticClass: "xlx-skin__tag"}, [e._v("动态")]) : e._e(), e._v(" "), t.is_4k ? i("span", {staticClass: "xlx-skin__tag"}, [e._v("4K")]) : e._e()]), e._v(" "), t.showNew ? i("i", {staticClass: "xlx-skin__new"}) : e._e()])
        }))]), e._v(" "), i("div", {staticClass: "xlx-skin-super-title"}, [i("em", [e._v("摇一摇特效")]), e._v(" "), i("td-tooltip", {
            attrs: {
                content: "来回晃动客户端窗口，出现下雪等特效",
                offset: {x: -2, y: -2},
                trigger: "hover",
                visible: !1,
                placement: "right"
            }
        }, [i("i", {staticClass: "xlx-skin-super-icon-question"})])], 1), e._v(" "), i("div", {staticClass: "xlx-skin-picture xlx-skin-picture3"}, [i("ul", [i("li", {
            staticClass: "xlx-skin-picture__item",
            class: {"is-chosen": e.isShakeChose(e.skinType.Cool)},
            style: {backgroundImage: "url(" + e.noEffectPreview + ")"},
            on: {
                click: function (t) {
                    e.setShakeInfo(e.skinType.Cool, null, 0)
                }
            }
        }, [i("p", {staticClass: "xlx-skin-picture__name"}, [e._v("无特效")])]), e._v(" "), e._l(e.shakes, function (t, n) {
            return i("li", {
                key: t.id,
                staticClass: "xlx-skin-picture__item",
                class: {"is-chosen": e.isShakeChose(e.skinType.Cool, t)},
                style: {backgroundImage: "url('" + t.preview + "')"},
                on: {
                    click: function (i) {
                        e.setShakeInfo(e.skinType.Cool, t, n + 1)
                    }
                }
            }, [i("p", {staticClass: "xlx-skin-picture__name"}, [e._v(e._s(t.name))]), e._v(" "), i("div", {staticClass: "xlx-skin__tag-wrapper"}, [t.is_svip ? i("span", {staticClass: "xlx-skin__tag xlx-skin__tag--svip"}, [e._v("SVIP")]) : t.is_vip ? i("span", {staticClass: "xlx-skin__tag xlx-skin__tag--vip"}, [e._v("VIP")]) : e._e(), e._v(" "), t.is_dynamic ? i("span", {staticClass: "xlx-skin__tag"}, [e._v("动态")]) : e._e(), e._v(" "), t.is_4k ? i("span", {staticClass: "xlx-skin__tag"}, [e._v("4K")]) : e._e()]), e._v(" "), t.showNew ? i("i", {staticClass: "xlx-skin__new"}) : e._e()])
        })], 2)])])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "xlx-skin-picture xlx-skin-picture--speed"}, [i("ul", [i("li", {
            staticClass: "xlx-skin-picture__item",
            class: {"is-chosen": e.skinInfo.type === e.skinType.Default},
            style: {backgroundImage: "url(" + e.defaultPreview + ")"},
            on: {
                click: function (t) {
                    e.changeSkin(e.defaultSkinInfo)
                }
            }
        }, [i("p", {staticClass: "xlx-skin-picture__name"}, [e._v("默认皮肤")])]), e._v(" "), e._l(e.skins, function (t) {
            return i("li", {
                key: t.id,
                staticClass: "xlx-skin-picture__item",
                class: {"is-chosen": e.skinInfo.id === t.id},
                style: {backgroundImage: "url('" + t.previewSavePath + "')"},
                on: {
                    click: function (i) {
                        e.changeSkin(t)
                    }
                }
            }, [i("div", {staticClass: "xlx-skin__tag-wrapper"}, [t.type === e.skinType.Vip ? i("span", {staticClass: "xlx-skin__tag xlx-skin__tag--vip"}, [e._v("VIP")]) : t.type === e.skinType.SuperVip ? i("span", {staticClass: "xlx-skin__tag xlx-skin__tag--svip"}, [e._v("SVIP")]) : e._e()]), e._v(" "), i("p", {staticClass: "xlx-skin-picture__name"}, [e._v(e._s(t.name))])])
        })], 2)])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "xlx-skin-picture xlx-skin-picture--suspension"}, [i("ul", [i("li", {
            staticClass: "xlx-skin-picture__item",
            class: {"is-chosen": e.skinInfo.type === e.skinType.Default},
            style: {backgroundImage: "url(" + e.normalIcon + ")"},
            on: {
                click: function (t) {
                    e.changeSkin(e.defaultSkinInfo)
                }
            }
        }), e._v(" "), i("li", {
            staticClass: "xlx-skin-picture__item",
            class: {"is-chosen": e.skinInfo.type === e.skinType.Vip},
            style: {backgroundImage: "url(" + e.vipIcon + ")"},
            on: {
                click: function (t) {
                    e.changeSkin(e.vipSkinInfo)
                }
            }
        }, [e._m(0)])])])
    }, o = [function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("div", {staticClass: "xlx-skin__tag-wrapper"}, [t("span", {staticClass: "xlx-skin__tag xlx-skin__tag--vip"}, [this._v("VIP")])])
    }];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("div", {staticClass: "xlx-skin__expect"}, [this.isError ? t("div", {staticClass: "error-page"}, [this._m(0), this._v(" "), t("div", {staticClass: "error-button"}, [t("td-button", {on: {click: this.refresh}}, [this._v("刷新")])], 1)]) : t("div", {staticClass: "xlx-dialog-loading__load"}, [t("i", {staticClass: "td-icon-load"}), this._v(" "), t("p", [this._v("正在加载...")])])])
    }, o = [function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("div", {staticClass: "error-main"}, [t("div", {staticClass: "pic-error"}), this._v(" "), t("h1", [this._v("您访问的网站飞到了外太空")]), this._v(" "), t("p")])
    }];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, , , , , , , , function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {class: e.item.outerClass}, [i("td-checkbox", {
            attrs: {value: !(0 == e.formData[e.item.name].value)},
            on: {input: e.handleInput}
        }, [e._v("\n    " + e._s(e.item.label) + "\n  ")]), e._v(" "), e._l(e.item.extEles, function (t) {
            return [i(t.type, {
                key: t.name,
                tag: "component",
                attrs: {
                    item: t,
                    classes: t.classes,
                    text: t.text,
                    formData: e.formData,
                    name: t.name,
                    disabled: !e.formData[e.item.name].value,
                    value: e.formData[t.name]
                },
                on: {input: e.handleInput}
            })]
        }), e._v(" "), e.item.tip ? i("p", {class: e.item.tipClass}, [e._v("\n    " + e._s(e.item.tip) + "\n  ")]) : e._e()], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {class: e.item.outerClass}, [e.item.listEles ? [e._l(e.item.listEles, function (t) {
            return [i("td-button", {
                key: t.name,
                class: e.classes || t.classes,
                style: t.style || "",
                attrs: {disabled: e.disabled || t.bindName && !e.formData[t.bindName].value},
                on: {
                    click: function (i) {
                        e.popDialog(t)
                    }
                }
            }, [e._v(e._s(e.text || t.text))])]
        })] : [i("td-button", {
            class: e.classes || e.item.classes,
            style: e.item.style || "",
            attrs: {disabled: e.disabled || e.item.bindName && !e.formData[e.item.bindName].value},
            on: {
                click: function (t) {
                    e.popDialog(e.item)
                }
            }
        }, [e._v(e._s(e.text || e.item.text))])], e._v(" "), e._l(e.item.extEles, function (t) {
            return [i(t.type, {
                key: t.name,
                tag: "component",
                class: t.classes,
                style: t.style || "",
                attrs: {item: t, text: t.text, formData: e.formData}
            })]
        })], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {class: e.item.classes}, [i("p", [e._v("\n    限速时间段：\n    " + e._s(e.standardNumber(e.formData["ConfigNet-ConfigNet_Custom_Time_Begin_Hour"].value)) + ":\n    " + e._s(e.standardNumber(e.formData["ConfigNet-ConfigNet_Custom_Time_Begin_Minute"].value)) + "-" + e._s(e.standardNumber(e.formData["ConfigNet-ConfigNet_Custom_Time_End_Hour"].value)) + ":\n    " + e._s(e.standardNumber(e.formData["ConfigNet-ConfigNet_Custom_Time_End_Minute"].value)) + " \n    最大下载速度: " + e._s(e.maxDownloadSpeed) + "   \n    最大上传速度: " + e._s(e.maxUploadSpeed) + "\n  ")])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {
            class: e.item.outerClass,
            style: e.item.style
        }, ["" !== e.label ? i("span", [e._v(e._s(e.label))]) : e._e(), e._v(" "), i("td-tooltip", {
            attrs: {
                content: e.tipContent,
                visible: e.tooltipVisible,
                placement: "top"
            }
        }, [i("select-native", {
            ref: "root",
            class: e.classes || e.item.classes,
            attrs: {
                value: e.valueData,
                options: e.optionList || e.item.option,
                placeholder: e.placeHolder || e.formData[e.item.name].value + "",
                editable: e.item.editable,
                disabled: e.disabled
            },
            on: {input: e.validate, blur: e.handleOutFocus, "choose-file": e.selectPath}
        }, ["openFile" === e.item.slotOption || "openDirectory" === e.item.slotOption || "openThunderPan" === e.item.slotOption ? i("a", {
            staticClass: "xly-select__file",
            attrs: {slot: "suffix", href: "javascript:;"},
            on: {
                click: function (t) {
                    e.handleChangePath(e.item.slotOption)
                }
            },
            slot: "suffix"
        }, [i("i", {staticClass: "xly-icon-file"})]) : e._e()])], 1)], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {
            class: e.item.outClasses,
            style: e.item.style
        }, [i("td-tooltip", {
            attrs: {
                content: e.item.toolTipsContent || "",
                visible: e.tooltipVisible,
                placement: "top"
            }
        }, [i("td-input", {
            ref: "input",
            class: e.item.classes,
            attrs: {
                label: e.label || e.item.label,
                value: e.valueData,
                placeholder: e.item.placeholder,
                disabled: e.disabled
            },
            on: {
                input: e.validate,
                change: e.handleChange,
                keydown: e.handleKeyDown,
                keyup: e.handleKeyup,
                blur: e.outFocus
            }
        })], 1), e._v(" "), e._l(e.item.extEles, function (t) {
            return [i(t.type, {
                key: t.name,
                tag: "component",
                attrs: {
                    item: t,
                    classes: t.classes,
                    text: t.text,
                    formData: e.formData,
                    disabled: e.disabled || !e.formData[e.item.name].value,
                    value: e.formData[t.name]
                },
                on: {input: e.handleInput}
            })]
        })], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("p", {
            directives: [{
                name: "show",
                rawName: "v-show",
                value: !e.item.isReleventUser || e.item.isReleventUser && "" !== e.userId,
                expression: "!item.isReleventUser || (item.isReleventUser && userId !== '')"
            }], class: e.clas, style: e.item.style || ""
        }, [e._v("\n   " + e._s(e.textContent) + "\n   "), e.item.tip ? i("span", {class: e.item.tipClass}, [e._v(e._s(e.item.tip))]) : e._e()])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {class: e.item.outerClass}, [i("ul", {class: e.item.ulClasses}, e._l(e.item.option, function (t, n) {
            return i("li", {
                directives: [{
                    name: "show",
                    rawName: "v-show",
                    value: !e.item.isReleventUser || e.item.isReleventUser && "" !== e.userId,
                    expression: "!item.isReleventUser || (item.isReleventUser && userId !== '')"
                }], key: n, class: e.item.classes
            }, [i("td-radio", {
                attrs: {
                    name: e.item.key,
                    value: "" + e.formData[e.item.name].value,
                    label: t,
                    disabled: e.item.disableds && e.item.disableds[n]
                }, on: {input: e.handleInput}
            }, [e._v(e._s(e.item.labels[n] || e.lable))]), e._v(" "), e.item.extEles ? i(e.item.extEles[n].type, {
                tag: "component",
                attrs: {
                    text: e.item.extEles[n].text,
                    item: e.item.extEles[n],
                    label: e.item.extEles[n] && e.item.extEles[n].label,
                    classes: e.item.extEles[n].classes,
                    disabled: e.formData[e.item.name].value !== e.item.extActiveValue,
                    name: e.item.extEles[n].name,
                    value: e.formData[e.item.extEles[n].name],
                    formData: e.formData
                },
                on: {input: e.handleInput}
            }) : e._e()], 1)
        })), e._v(" "), e.item.tip ? i("p", {class: e.item.tipClass}, [e._v(e._s(e.item.tip))]) : e._e()])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", [i("td-checkbox", {
            attrs: {value: !(0 == e.formData[e.item.name].value)},
            on: {input: e.handleInput}
        }, [e._v("\n    " + e._s(e.item.label) + "\n  ")]), e._v(" "), e._l(e.item.extEles, function (t, n) {
            return e.item.extEles ? i(t.type, {
                key: n,
                tag: "component",
                attrs: {
                    formData: e.formData,
                    placeHolder: e.formData[t.name] && e.formData[t.name].value,
                    item: t,
                    value: e.formData[t.name],
                    disabled: !(e.formData[e.item.name] && e.formData[e.item.name].value),
                    name: t.name,
                    label: t.label,
                    classes: t.classes,
                    text: t.text
                },
                on: {input: e.handleInput}
            }) : e._e()
        })], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {class: e.item.classes}, [i("td-checkbox", {
            attrs: {value: !(0 == e.formData[e.item.name].value)},
            on: {input: e.handleInput}
        }, [e._v("\n    " + e._s(e.item.label) + "\n  ")]), e._v(" "), e._l(e.item.extEles, function (t, n) {
            return e.item.extEles ? i(t.type, {
                key: n,
                tag: "component",
                attrs: {
                    formData: e.formData,
                    item: t,
                    placeHolder: e.formData[t.name] && e.formData[t.name].value,
                    disabled: !e.formData[e.item.name].value
                },
                on: {input: e.handleInput}
            }) : e._e()
        })], 2)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("div", {class: this.item.outerClass}, [t("label", {staticClass: "td-textarea"}, [t("textarea", {
            staticClass: "td-textarea__inner",
            class: this.item.classes,
            attrs: {placeholder: this.item.placeholder},
            domProps: {value: this.formData[this.item.name].value},
            on: {change: this.handleChange}
        })])])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "xly-setting-content__part"}, [i("p", {staticClass: "xly-setting-content__text"}, [e._v("代理管理")]), e._v(" "), i("div", {staticClass: "td-table td-table--border"}, [e._m(0), e._v(" "), i("div", {staticClass: "td-table__body-wrapper"}, [i("table", {staticClass: "td-table__body"}, [e._m(1), e._v(" "), i("tbody", e._l(e.proxyList, function (t, n) {
            return t.name && t.name.length > 0 ? i("tr", {
                key: n,
                class: {"is-chosen": t === e.selectedItem},
                on: {
                    click: function (i) {
                        e.selectedItem = t
                    }
                }
            }, [i("td", [i("p", {staticClass: "td-table__text"}, [e._v(e._s(t.name))])]), e._v(" "), i("td", [i("p", {staticClass: "td-table__text"}, [e._v(e._s(t.host))])]), e._v(" "), i("td", [i("p", {staticClass: "td-table__text"}, [e._v(e._s(t.port))])]), e._v(" "), i("td", [i("p", {staticClass: "td-table__text"}, [e._v(e._s(t.type))])])]) : e._e()
        }))])])]), e._v(" "), i("div", {staticClass: "xly-setting-content__button"}, [i("div", {staticClass: "botton-wrap"}, [i("a", {
            staticClass: "td-button td-button--small",
            attrs: {href: "javascript:;"},
            on: {click: e.handleAddProxy}
        }, [e._v("添加")]), e._v(" "), i("a", {
            staticClass: "td-button td-button--other td-button--small",
            class: {"is-disabled": null === e.selectedItem},
            attrs: {href: "javascript:;"},
            on: {click: e.handleModifyProxy}
        }, [e._v("修改")]), e._v(" "), i("a", {
            staticClass: "td-button td-button--other td-button--small",
            class: {"is-disabled": null === e.selectedItem},
            attrs: {href: "javascript:;"},
            on: {click: e.handleDeleteProxy}
        }, [e._v("删除")])]), e._v(" "), i("div", {staticClass: "botton-wrap"}, [i("a", {
            staticClass: "td-button td-button--other td-button--small",
            class: {"is-disabled": null === e.selectedItem},
            attrs: {href: "javascript:;"},
            on: {click: e.handleApplyProxy}
        }, [e._v("应用代理")])])])])
    }, o = [function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "td-table__header-wrapper"}, [i("table", {staticClass: "td-table__header"}, [i("colgroup", [i("col", {staticClass: "xly-setting__column-1"}), e._v(" "), i("col", {
            staticClass: "xly-setting__column-2",
            attrs: {width: "126"}
        }), e._v(" "), i("col", {
            staticClass: "xly-setting__column-3",
            attrs: {width: "116"}
        }), e._v(" "), i("col", {attrs: {width: "90"}})]), e._v(" "), i("thead", [i("tr", [i("th", [i("p", {staticClass: "td-table__text"}, [e._v("名称")])]), e._v(" "), i("th", [i("p", {staticClass: "td-table__text"}, [e._v("服务器")])]), e._v(" "), i("th", [i("p", {staticClass: "td-table__text"}, [e._v("端口")])]), e._v(" "), i("th", [i("p", {staticClass: "td-table__text"}, [e._v("类型")])])])])])])
    }, function () {
        var e = this.$createElement, t = this._self._c || e;
        return t("colgroup", [t("col", {staticClass: "xly-setting__column-1"}), this._v(" "), t("col", {
            staticClass: "xly-setting__column-2",
            attrs: {width: "126"}
        }), this._v(" "), t("col", {
            staticClass: "xly-setting__column-3",
            attrs: {width: "116"}
        }), this._v(" "), t("col", {attrs: {width: "90"}})])
    }];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, , , , function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this.$createElement;
        return (this._self._c || e)("i", {class: this.classes, attrs: {title: this.text}})
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {class: e.item.outerClass}, [i("td-slider", {
            attrs: {
                value: e.sliderValue,
                marks: e.item.marks,
                scales: e.item.scales,
                disabled: e.disabled
            }, on: {input: e.handleSliderUpdate}
        }), e._v(" "), i("div", {staticClass: "xlx-dialog-setting__speed-input"}, [i("td-input", {
            ref: "input",
            staticClass: "xlx-setting__input-3",
            attrs: {value: e.value.value, disabled: e.disabled},
            on: {input: e.handleInput, blur: e.handleBlur}
        }), e._v(" "), i("popup", {
            ref: "tooltip",
            staticClass: "td-tooltip",
            attrs: {direction: "top", display: e.tooltipVisible, padding: 10},
            on: {
                "update:display": function (t) {
                    e.tooltipVisible = t
                }
            }
        }, [i("p", {staticClass: "td-tooltip__inner"}, [e._v(e._s(e.tooltip))])]), e._v(" "), i("span", {staticClass: "xlx-setting__text"}, [e._v("KB/s")])], 1)], 1)
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {staticClass: "xlx-dialog-setting__speed-time"}, [i("ul", e._l(e.data, function (t) {
            return i("li", {
                key: t.label,
                staticClass: "xlx-dialog-setting__item"
            }, [i("span", {staticClass: "xlx-dialog-setting__text"}, [e._v(e._s(t.label))]), e._v(" "), e._l(t.options, function (t) {
                return i("div", {
                    key: t.index,
                    staticClass: "xlx-dialog-setting__option"
                }, [i("select-native", {
                    staticClass: "xlx-select-size-1",
                    attrs: {
                        value: e.value[t.index].value.toString(),
                        options: "hour" === t.type ? e.hours : e.minutes,
                        disabled: e.disabled,
                        useNative: !1
                    },
                    on: {
                        input: function (i) {
                            return e.handleInput(i, t.index)
                        }
                    }
                }), e._v(" "), i("span", {staticClass: "xlx-dialog-setting__text"}, [e._v(e._s("hour" === t.type ? "时" : "分"))])], 1)
            })], 2)
        }))])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, function (e, t, i) {
    "use strict";
    var n = function () {
        var e = this, t = e.$createElement, i = e._self._c || t;
        return i("div", {class: e.item.outerClass}, [i("ul", {class: e.item.ulClasses}, e._l(e.item.extEles, function (t, n) {
            return i("li", {key: n, class: e.item.classes}, [t ? i(t.type, {
                tag: "component",
                attrs: {
                    text: t.text,
                    item: t,
                    label: t && t.label,
                    classes: t.classes,
                    disabled: e.disabled,
                    name: t.name,
                    value: e.formData[t.name],
                    formData: e.formData
                },
                on: {input: e.handleInput}
            }) : e._e()], 1)
        })), e._v(" "), e.item.tip ? i("p", {class: e.item.tipClass}, [e._v(e._s(e.item.tip))]) : e._e()])
    }, o = [];
    n._withStripped = !0, i.d(t, "a", function () {
        return n
    }), i.d(t, "b", function () {
        return o
    })
}, , , , , , , , , , , , , function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(616), o = i(298);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-speed-text.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(518), r = i(41);
    !function (e) {
        let t, i;
        !function (e) {
            e[e.None = 0] = "None", e[e.Sock5 = 1] = "Sock5", e[e.Http = 2] = "Http"
        }(t = e.ProxyType || (e.ProxyType = {})), function (e) {
            e[e.Sucess = 0] = "Sucess", e[e.Fall = 1] = "Fall", e[e.AuthFall = 2] = "AuthFall", e[e.ConnectFall = 3] = "ConnectFall", e[e.Timeout = 4] = "Timeout", e[e.ParamError = 5] = "ParamError"
        }(i = e.ProxyVerifyResult || (e.ProxyVerifyResult = {})), e.verifyProxy = function (e, t, s, a, l) {
            return n(this, void 0, void 0, function* () {
                return new Promise(n => {
                    r.NativeCallModule.nativeCall.CallNativeFunction("VerifyProxy", e, t, s, a, l, (e, t) => {
                        e === o.NativeFunctionErrorCode.Success ? n(t) : n(i.Fall)
                    })
                })
            })
        }, e.setProxy = function (e, t, i, s, a) {
            return n(this, void 0, void 0, function* () {
                return new Promise(n => {
                    r.NativeCallModule.nativeCall.CallNativeFunction("SetProxy", e, t, i, s, a, (e, t) => {
                        e === o.NativeFunctionErrorCode.Success ? n(t) : n(1)
                    })
                })
            })
        }
    }(t.ProxyNS || (t.ProxyNS = {}))
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(38), r = i(1), s = i(11), a = i(17), l = i(4);
    let {isDef: c} = s.ThunderUtil;
    const u = r.default.getLogger("WallpaperManager");
    t.default = new class {
        constructor() {
            this.wallpapersURL = "https://api-xl9-ssl.xunlei.com/sl/xlppc.personalizedcenter.api/api/xskin/list", this.testPapersURL = "http://test.api-shoulei-ssl.xunlei.com/xlppc.personalizedcenter.api/api/xskin/list"
        }

        getWallpapers() {
            return n(this, void 0, void 0, function* () {
                do {
                    o.default.defaults.adapter = i(25);
                    let e = 1 === (yield l.client.callServerFunction("GetValue", "ConfigFetchInterface", "TestServer", 0)) ? this.testPapersURL : this.wallpapersURL;
                    try {
                        let t = yield o.default.get(e, {params: {page: 0, per_page: 30}});
                        if (200 === t.status && "ok" === t.data.result) {
                            this.wallpapers = t.data.list;
                            try {
                                localStorage.setItem("wallpapers", JSON.stringify(this.wallpapers))
                            } catch (e) {
                                u.warning(e)
                            }
                            break
                        }
                    } catch (e) {
                        u.warning(e)
                    }
                    if (c(this.wallpapers)) break;
                    try {
                        this.wallpapers = JSON.parse(localStorage.getItem("wallpapers"))
                    } catch (e) {
                        u.warning(e)
                    }
                } while (0);
                let e = this.wallpapers || [], t = yield this.getSpringFestivalWallpaper();
                return t && (e = [...e, t]), e
            })
        }

        getCoolWallpapers() {
            return n(this, void 0, void 0, function* () {
                do {
                    o.default.defaults.adapter = i(25);
                    let e = "http://static-xl.a.88cdn.com/json/thunderx_superskins_skins.json";
                    try {
                        let t = yield o.default.get(e, {timeout: 1e4});
                        if (200 === t.status && t.data) {
                            this.coolWallpapers = t.data;
                            try {
                                u.information("get cool wallpapers", this.coolWallpapers), localStorage.setItem("coolWallpapers", JSON.stringify(this.coolWallpapers))
                            } catch (e) {
                                u.warning(e)
                            }
                            break
                        }
                    } catch (e) {
                        u.warning(e)
                    }
                    if (c(this.coolWallpapers)) break;
                    try {
                        this.coolWallpapers = JSON.parse(localStorage.getItem("coolWallpapers"))
                    } catch (e) {
                        u.warning(e)
                    }
                } while (0);
                return this.coolWallpapers || []
            })
        }

        getCoolShakes() {
            return n(this, void 0, void 0, function* () {
                do {
                    o.default.defaults.adapter = i(25);
                    let e = "https://static-xl.a.88cdn.com/json/thunderx_superskins_effects.json";
                    try {
                        let t = yield o.default.get(e, {timeout: 1e4});
                        if (200 === t.status && t.data) {
                            this.coolShakes = t.data;
                            try {
                                u.information("get cool wallpapers", this.coolShakes), localStorage.setItem("coolShakes", JSON.stringify(this.coolShakes))
                            } catch (e) {
                                u.warning(e)
                            }
                            break
                        }
                    } catch (e) {
                        u.warning(e)
                    }
                    if (c(this.coolShakes)) break;
                    try {
                        this.coolShakes = JSON.parse(localStorage.getItem("coolShakes"))
                    } catch (e) {
                        u.warning(e)
                    }
                } while (0);
                return this.coolShakes || []
            })
        }

        removeImage(e) {
            return n(this, void 0, void 0, function* () {
                let t = `${__profilesDir}/skins/${e.id}`;
                return a.FileSystemAWNS.rmdirsAW(t)
            })
        }

        getImage(e) {
            return n(this, void 0, void 0, function* () {
                let t = `${__profilesDir}/skins/${e.id}/wallpaper.jpg`;
                return (yield a.FileSystemAWNS.existsAW(t)) ? (this.updateImage(e).catch(e => {
                    u.information("update skin preview error", e)
                }), t) : (yield this.updateImage(e), t)
            })
        }

        updateImage(e) {
            return n(this, void 0, void 0, function* () {
                o.default.defaults.adapter = i(25);
                try {
                    let t = yield o.default.get(e.skin_link, {responseType: "arraybuffer"});
                    if (c(t) && 200 === t.status && c(t.data) && (yield a.FileSystemAWNS.mkdirAW(`${__profilesDir}/skins`), yield a.FileSystemAWNS.writeFileAW(`${__profilesDir}/skins/${e.id}.zip`, t.data))) {
                        const {UnzipUtilitiesAWNS: t} = yield Promise.resolve().then(() => i(790));
                        yield t.uncompressZipFile(`${__profilesDir}/skins/${e.id}/`, `${__profilesDir}/skins/${e.id}.zip`)
                    }
                } catch (e) {
                    u.warning(e)
                }
            })
        }

        getShakeRes(e) {
            return n(this, void 0, void 0, function* () {
                let t = `${__profilesDir}/shake-skins/${e.id}/wallpaper.jpg`;
                return (yield a.FileSystemAWNS.existsAW(t)) ? (this.updateShakeRes(e).catch(), t) : (yield this.updateShakeRes(e), t)
            })
        }

        updateShakeRes(e) {
            return n(this, void 0, void 0, function* () {
                o.default.defaults.adapter = i(25);
                try {
                    let t = yield o.default.get(e.skin_link, {responseType: "arraybuffer"});
                    c(t) && 200 === t.status && c(t.data) && (yield a.FileSystemAWNS.mkdirAW(`${__profilesDir}/shake-skins`), yield a.FileSystemAWNS.mkdirAW(`${__profilesDir}/shake-skins/${e.id}`), yield a.FileSystemAWNS.writeFileAW(`${__profilesDir}/shake-skins/${e.id}/wallpaper.jpg`, t.data))
                } catch (e) {
                    u.warning(e)
                }
            })
        }

        getSpringFestivalWallpaper() {
            return n(this, void 0, void 0, function* () {
                let e = null;
                try {
                    let t = null;
                    try {
                        t = JSON.parse(localStorage.getItem("springFestivalSkinData"))
                    } catch (e) {
                        u.warning(e)
                    }
                    t && "on" === t.skinsiwtch && (e = {
                        id: 9999,
                        operator: "",
                        manual_order: 0,
                        name: "春节皮肤",
                        is_vip: !1,
                        is_dynamic: !1,
                        preview: t.skin_thumb,
                        skin_link: t.skin_link,
                        artist: "",
                        color: 11,
                        is_4k: !1,
                        transparency: 80,
                        created_at: 1546599635159,
                        updated_at: 1546654241407,
                        showNew: !1
                    })
                } catch (e) {
                }
                return e
            })
        }
    }
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(35), r = i(38), s = i(2), a = i(17), l = i(1).default.getLogger("Axios.Helper");
    !function (e) {
        e.getFileSizeWithUrlAW = function (e) {
            return n(this, void 0, void 0, function* () {
                let t = 0;
                do {
                    let i = o.parse(e);
                    if ("https:" !== i.protocol && "http:" !== i.protocol) break;
                    let n = null;
                    try {
                        n = yield r.default.get(e, {responseType: "arraybuffer"})
                    } catch (e) {
                        l.warning(e)
                    }
                    if (null !== n && void 0 !== n.status && 200 === n.status) {
                        let e = n.headers["content-length"];
                        void 0 !== e && (t = parseInt(e, 10))
                    }
                } while (0);
                return t
            })
        }, e.downloadFileAW = function (e, t, i) {
            return n(this, void 0, void 0, function* () {
                let n = !1, o = 0;
                for (; ;) {
                    let c = null;
                    o += 1;
                    try {
                        c = yield r.default.get(e, {responseType: "arraybuffer", headers: i})
                    } catch (e) {
                        l.information(e);
                        break
                    }
                    if (null !== c && void 0 !== c.status && 200 === c.status && void 0 !== c.data && null !== c.data && "" !== c.data) {
                        let e = s.dirname(t), i = yield a.FileSystemAWNS.mkdirsAW(e);
                        if (i && (i = yield a.FileSystemAWNS.writeFileAW(t, c.data))) {
                            n = !0;
                            break
                        }
                        if (o > 3) break
                    }
                }
                return n
            })
        }
    }(t.AxiosNS || (t.AxiosNS = {}))
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(809), r = i(12), s = i(810), a = i(204), l = i(650), c = i(814);
    t.probe = function (e, t) {
        var i = t || {}, u = s.defer(), d = null, h = r.platform(), p = l.createBuilder(h);
        d = o.spawn(l.getExecutablePath(h), p.getResult(e, i));
        var f = c.createParser(h);
        d.once("error", function () {
            var e = new Error(n.format("ping.probe: %s. %s", "there was an error while executing the ping program. ", "Check the path or permissions..."));
            u.reject(e)
        });
        var A = [];
        return d.stdout.on("data", function (e) {
            A.push(String(e))
        }), d.once("close", function () {
            var e = A.join("").split("\n");
            a.each(e, f.eat, f);
            var t = f.getResult();
            u.resolve(t)
        }), u.promise
    }
}, function (e, t, i) {
    "use strict";
    var n = i(204), o = i(6), r = i(811), s = i(812), a = i(813);

    function l() {
    }

    l.isLinux = function (e) {
        return ["aix", "linux"].indexOf(e) >= 0
    }, l.isMacOS = function (e) {
        return ["darwin", "freebsd"].indexOf(e) >= 0
    }, l.isWindow = function (e) {
        return e && null !== e.match(/^win/)
    }, l.isPlatformSupport = function (e) {
        return n.some([this.isWindow(e), this.isLinux(e), this.isMacOS(e)])
    }, l.getExecutablePath = function (e) {
        if (!this.isPlatformSupport(e)) throw new Error(o.format("Platform |%s| is not support", e));
        var t = null;
        return "aix" === e ? t = "/usr/sbin/ping" : l.isLinux(e) ? t = "/bin/ping" : l.isWindow(e) ? t = process.env.SystemRoot + "/system32/ping.exe" : l.isMacOS(e) && (t = "/sbin/ping"), t
    }, l.createBuilder = function (e) {
        if (!this.isPlatformSupport(e)) throw new Error(o.format("Platform |%s| is not support", e));
        var t = null;
        return l.isLinux(e) ? t = r : l.isWindow(e) ? t = a : l.isMacOS(e) && (t = s), t
    }, e.exports = l
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(204), r = i(526);

    function s() {
        r.call(this)
    }

    n.inherits(s, r), s.prototype._processHeader = function (e) {
        var t = e.split(" ");
        this._response.host = t[1], this._response.numeric_host = t[2].slice(1, -2), this._changeState(this.STATES.BODY)
    }, s.prototype._processBody = function (e) {
        if ((e.match(/=/g) || []).length >= 3) {
            var t = /([0-9\.]+)[ ]*ms/.exec(e);
            this._times.push(parseFloat(t[1], 10))
        }
        e.indexOf("---") >= 0 && this._changeState(this.STATES.FOOTER)
    }, s.prototype._processFooter = function (e) {
        if ((e.match(/[\/]/g) || []).length >= 3) {
            var t = /([0-9\.]+)/g, i = t.exec(e), n = t.exec(e), r = t.exec(e), s = t.exec(e);
            o.all([i, n, r, s]) && (this._response.min = parseFloat(i[1], 10), this._response.avg = parseFloat(n[1], 10), this._response.max = parseFloat(r[1], 10), this._response.stddev = parseFloat(s[1], 10), this._changeState(this.STATES.END)), this._changeState(this.STATES.END)
        }
    }, e.exports = s
}, function (e, t, i) {
    "use strict";
    var n = i(1085);
    i.n(n).a
}, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , function (e, t, i) {
    i(45), e.exports = i(737)
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(34);
    n.CommonIPCRenderer.rendererCommunicator.initialize("messageBoxRendererContext"), n.CommonIPCRenderer.rendererCommunicator.connect();
    let o = i(35).parse(location.href, !0).query.boxId;
    i(4).client.start({name: `messageBoxRendererContext${o}`});
    const r = i(48), s = i(37), a = i(738), l = i(159);
    i(58), i(80);
    const c = i(59);
    i(57);
    const u = i(1).default.getLogger("MessageBoxRenderer"), d = i(514);
    r.PerformanceMonitorStatNS.init("message-box-renderer"), s.default.use(l.default), s.default.use(d), new s.default({
        components: {App: a.default},
        render: e => e("app")
    }).$mount("#app"), c.ThunderToolsNS.enableDevTools({mode: "undocked"}).catch(e => {
        u.warning(e)
    }), c.ThunderToolsNS.enableDragOpenFile()
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(533), o = i(282);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(851), i(527), i(209), i(652), i(852), i(853), i(854), i(515), i(855), i(856), i(857), i(858), i(859), i(860), i(861), i(862), i(863), i(864), i(865), i(866), i(867), i(868);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\app.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(545), o = i(284);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\about.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(546), o = i(286);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\confirm.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(547), o = i(288);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\message-box.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(599), o = i(290);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(756);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, "69ad46c4", null);
    a.options.__file = "src\\common\\generator-view\\generator-view.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(614), o = i(292);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-checkbox.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(14), r = i(745), s = i(24), a = i(26);

    function l(e) {
        a.information("on object freeer"), global.__xdasIPCServerInstance.notifyFreer(e.client, e.callbackId)
    }

    let c = void 0;
    global.__xdasIPCServerInstance || (global.__xdasIPCServerInstance = new class extends o.EventEmitter {
        constructor() {
            super(), this.rid = 0, this.apis = {}, this.eventMap = {}, this.clientAliasMap = {}, this.retCallbackMap = {}, this.contextCallbackMap = {}, this.singleton = !1
        }

        registerFunctions(e) {
            do {
                if (!e) break;
                let t = void 0;
                for (let i in e) if (this.apis.hasOwnProperty(i)) {
                    t = i;
                    break
                }
                if (t) throw new Error(`try to coverd function ${t}`);
                this.apis = Object.assign({}, this.apis, e)
            } while (0)
        }

        start(e, t) {
            if (this.singleton) throw new Error("try to start server duplicate");
            this.singleton = !0, this.server = new r.Server, global.__xdasIPCServer = this.server, this.server.listen(void 0, t), e && this.registerFunctions(e), this.server.on("connect", e => {
                this.emit("connect", e)
            }), this.server.on("message", (e, t) => {
                do {
                    if ("attach_event" === e.action) {
                        this.attachEvent(e.name, t);
                        break
                    }
                    if ("detach_event" === e.action) {
                        this.detachEvent(e.name, t);
                        break
                    }
                    if ("broadcast" === e.action) {
                        if (e.__context && e.__context.name === s.serverContextName) throw new Error("client context must difference from server");
                        this.forwardEvent(e.name, e.__context, e.timestamp, ...e.args);
                        break
                    }
                    if ("call_remote_client_api" === e.action) {
                        this.callClientFunction(e, t);
                        break
                    }
                    if ("call_remote_context_by_id" === e.action) {
                        if (e.dst && this.clientAliasMap.hasOwnProperty(e.dst)) {
                            let t = this.clientAliasMap[e.dst];
                            t && this.callClientFunctionById(t, e.rid, ...e.args)
                        }
                        break
                    }
                    if ("call_client_by_id_callback" === e.action) {
                        this.fireRetCallback(e, t);
                        break
                    }
                    if ("check_client_function_callback" === e.action) {
                        this.fireRetCallback(e, t);
                        break
                    }
                    if ("remote_client_callback" === e.action) {
                        this.reply2Client(e, t);
                        break
                    }
                    if ("check_client_function_exist" === e.action) {
                        this.internalCheckClientFunction(e.dst, e.method).then(i => {
                            let n = this.getNow();
                            this.sendAdapter(t, {
                                success: !0,
                                rid: e.rid,
                                method: e.method,
                                data: i,
                                timestamp: e.timestamp ? e.timestamp.concat(n) : [].concat(n)
                            })
                        });
                        break
                    }
                    let i = this.getNow(), n = {
                        success: !1,
                        rid: e.rid,
                        method: e.method,
                        timestamp: e.timestamp ? e.timestamp.concat(i) : [].concat(i)
                    }, o = e.method;
                    do {
                        if ("register" === e.action) {
                            this.registerAlias(e, t, n), this.sendAdapter(t, n);
                            break
                        }
                        if ("client_context_freer" === e.action) {
                            if (e.dst && this.clientAliasMap.hasOwnProperty(e.dst)) {
                                let t = this.clientAliasMap[e.dst];
                                this.notifyFreer(t, e.rid)
                            }
                            break
                        }
                        if ("check_server_function_exist" === e.action) {
                            n.success = !0, n.data = !(!this.apis || !this.apis[o]), this.sendAdapter(t, n);
                            break
                        }
                        if ("check_client_exist" === e.action) {
                            n.success = !0, n.data = !1, e.dst && this.clientAliasMap.hasOwnProperty(e.dst) && (n.data = !0), this.sendAdapter(t, n);
                            break
                        }
                        if (!o) break;
                        if (!this.apis || !this.apis[o]) {
                            n.error = `${e.__context} try to call method '${o}' which is undefined`, this.sendAdapter(t, n);
                            break
                        }
                        let i = void 0, r = this.decodeParameter(e.args, t);
                        try {
                            i = this.apis[o].apply(null, [t, e.__context].concat(r))
                        } catch (e) {
                            n.error = e.message, this.sendAdapter(t, n);
                            break
                        }
                        if (i && i.then) {
                            i.then(e => {
                                n.data = e, n.success = !0, this.sendAdapter(t, n)
                            }).catch(e => {
                                n.error = e instanceof Error ? e.message : e, this.sendAdapter(t, n)
                            });
                            break
                        }
                        n.success = !0, n.data = i, this.sendAdapter(t, n)
                    } while (0)
                } while (0)
            }), this.server.on("end", e => {
                this.emit("end", e), this.clearClientInfo(e)
            }), this.server.on("error", (e, t) => {
                a.information("server error", t, t && t.code), t && "EPIPE" === t.code && this.clearClientInfo(e)
            })
        }

        fireClientEvent(e, ...t) {
            this.forwardEvent(e, {name: s.serverContextName}, void 0, ...t)
        }

        callClientFunctionById(e, t, ...i) {
            this.sendAdapter(e, {action: "call_client_by_id", rid: t, args: i})
        }

        callClientFunctionByIdAw(e, t, ...i) {
            return new Promise((n, o) => {
                {
                    let o = this.generateId(), r = (e, t) => {
                        n(e ? [null, e] : [t])
                    }, s = {s_rid: o, action: "call_client_by_id", rid: t, args: i};
                    this.retCallbackMap[o] = Object.assign({callback: r}, s), this.sendAdapter(e, s)
                }
            })
        }

        checkClientFunction(e, t) {
            return "string" == typeof e && (e = this.getFullAlias(e)), this.internalCheckClientFunction(e, t)
        }

        callClientFunctionByName(e, t, ...i) {
            return new Promise((n, o) => {
                do {
                    if (!e) {
                        n([null, null]);
                        break
                    }
                    let o = void 0;
                    if ("string" == typeof e) {
                        if (e = this.getFullAlias(e), !this.clientAliasMap.hasOwnProperty(e)) {
                            n([null, null]);
                            break
                        }
                        o = this.clientAliasMap[e]
                    } else o = e;
                    if (!o) {
                        n([null, null]);
                        break
                    }
                    let r = this.generateId(), a = (e, t, i) => {
                        n(e ? [null, i, e] : [t, i])
                    };
                    if (i) for (let e = 0; e < i.length; e++) i[e] = this.convertFunction2Id(i[e]);
                    let l = {s_rid: r, action: "call_client_api", args: i, src: s.serverContextName, method: t};
                    this.retCallbackMap[r] = Object.assign({callback: a}, l), this.sendAdapter(o, l)
                } while (0)
            })
        }

        isRemoteClientExist(e) {
            let t = !1;
            return this.clientAliasMap.hasOwnProperty(this.getFullAlias(e)) && (t = !0), t
        }

        getRemoteClient(e, t) {
            let i = null;
            do {
                if (!e) break;
                t || (t = this.server.getProductId());
                let n = `${t}-${e}`.toLowerCase();
                i = this.clientAliasMap[n]
            } while (0);
            return i
        }

        internalCheckClientFunction(e, t) {
            return n(this, void 0, void 0, function* () {
                return new Promise((i, n) => {
                    do {
                        if (!e) {
                            i(!1);
                            break
                        }
                        let n = void 0;
                        if ("string" == typeof e) {
                            if (!this.clientAliasMap.hasOwnProperty(e)) {
                                i(!1);
                                break
                            }
                            n = this.clientAliasMap[e]
                        } else n = e;
                        if (!n) {
                            i(!1);
                            break
                        }
                        let o = this.generateId(), r = (e, t) => {
                            i(!e && t)
                        }, s = {s_rid: o, action: "check_client_function", method: t};
                        this.retCallbackMap[o] = Object.assign({callback: r}, s), this.sendAdapter(n, s)
                    } while (0)
                })
            })
        }

        convertFunction2Id(e) {
            let t = e;
            if ("function" == typeof e) {
                let i = this.generateId();
                this.contextCallbackMap[i] = e, t = i
            } else if (e && "object" == typeof e) for (let t in e) {
                let i = e[t];
                if ("function" == typeof i) {
                    let n = this.generateId();
                    this.contextCallbackMap[n] = i, e[t] = n
                } else i && "object" == typeof i && (e[t] = this.convertFunction2Id(i))
            }
            return t
        }

        clearClientInfo(e) {
            for (let t in this.clientAliasMap) this.clientAliasMap[t] === e && delete this.clientAliasMap[t];
            for (let t in this.eventMap) this.detachEvent(t, e);
            for (let t in this.retCallbackMap) {
                let i = this.retCallbackMap[t];
                if (i.dstRemote === e) {
                    let e = {
                        rid: i.rid,
                        method: i.method,
                        error: "client has been ended by the other party",
                        action: "remote_client_callback",
                        success: !1
                    };
                    a.information("client has been ended by other party, but still has return callback", e), this.sendAdapter(i.remote, e), delete this.retCallbackMap[t]
                }
            }
        }

        registerAlias(e, t, i) {
            do {
                if (!e) break;
                if (!e.alias) {
                    i.error = "register alias can not be empty";
                    break
                }
                if (this.clientAliasMap.hasOwnProperty(e.alias)) {
                    if (this.clientAliasMap[e.alias] === t) {
                        i.data = e.alias, i.success = !0;
                        break
                    }
                    i.error = "register failed cause alias is in use";
                    break
                }
                {
                    let n = void 0;
                    for (let e in this.clientAliasMap) if (this.clientAliasMap[e] === t) {
                        n = e;
                        break
                    }
                    if (n) {
                        i.data = n, i.error = `register failed cause already register by another alias ${n}`;
                        break
                    }
                    this.clientAliasMap[e.alias] = t, i.data = e.alias, i.success = !0;
                    break
                }
            } while (0)
        }

        callClientFunction(e, t) {
            do {
                if (!e) break;
                let i = e.dst, n = {rid: e.rid, method: e.method};
                if (!this.clientAliasMap.hasOwnProperty(i)) {
                    let o = `call remote function but dst client is not start or ended ${i}, method ${e.method}`;
                    a.error(o), n.error = o, n.action = "remote_client_callback", n.success = !1, this.sendAdapter(t, n);
                    break
                }
                let o = this.generateId(), r = this.clientAliasMap[i];
                n = Object.assign({
                    s_rid: o,
                    action: "call_client_api",
                    args: e.args,
                    src: e.src
                }, n), this.retCallbackMap[o] = Object.assign({remote: t, dstRemote: r}, n), this.sendAdapter(r, n)
            } while (0)
        }

        fireRetCallback(e, t) {
            do {
                let i = e.s_rid;
                if (void 0 === i || null === i) break;
                let n = this.retCallbackMap[i];
                if (!n) break;
                const o = n.callback;
                if (!o) break;
                e.success ? o(null, this.decodeParameter(e.data, t)) : o(e.error, e.data), delete this.retCallbackMap[i], a.information("free fireRetCallback", i)
            } while (0)
        }

        decodeParameter(e, t) {
            let i = e;
            do {
                if (!e) break;
                if ("object" != typeof e) break;
                let o = e["__nodeipc_callback_id__{A9C9D760-14E8-42CB-A3CB-9C0A0DDFD732}"];
                if (o) {
                    i = ((...e) => n(this, void 0, void 0, function* () {
                        return this.callClientFunctionByIdAw(t, o, ...e)
                    })), global.__xdasObjectLiftMonitor && global.__xdasObjectLiftMonitor.setObjectFreer(i, {
                        client: t,
                        callbackId: o
                    }, l);
                    break
                }
                for (let i in e) {
                    let n = e[i];
                    e[i] = this.decodeParameter(n, t)
                }
            } while (0);
            return i
        }

        notifyFreer(e, t) {
            this.sendAdapter(e, {action: "client_context_freer", rid: t})
        }

        reply2Client(e, t) {
            do {
                let i = e.s_rid;
                if (void 0 === i || null === i) break;
                let n = this.retCallbackMap[i];
                if (!n) break;
                if (e.src === s.serverContextName) {
                    const i = n.callback;
                    if (!i) break;
                    e.success ? i(null, this.decodeParameter(e.data, t), t) : i(e.error, e.data, t)
                } else {
                    let t = n.remote;
                    if (!t) break;
                    this.sendAdapter(t, e)
                }
                delete this.retCallbackMap[i]
            } while (0)
        }

        getNow() {
            return Date.now()
        }

        sendAdapter(e, t) {
            let i = this.getNow();
            t.timestamp = t.timestamp ? t.timestamp.concat(i) : [].concat(i), e.isInprocess() ? (a.information("send to client in process"), e.emit("message", t)) : e.send(t)
        }

        forwardEvent(e, t, i, ...n) {
            do {
                if (!this.eventMap.hasOwnProperty(e)) break;
                let o = this.eventMap[e];
                for (let r of o) this.sendAdapter(r, {
                    action: "fire_event",
                    name: e,
                    args: n,
                    __context: t,
                    timestamp: i
                })
            } while (0)
        }

        attachEvent(e, t) {
            {
                this.eventMap[e] || (this.eventMap[e] = []);
                let i = this.eventMap[e], n = !1;
                for (let o of i) if (o === t) {
                    a.information("server attachEvent attached", e), n = !0;
                    break
                }
                n || (this.eventMap[e].push(t), a.information("server attachEvent ", e))
            }
        }

        detachEvent(e, t) {
            do {
                if (!this.eventMap.hasOwnProperty(e)) break;
                let i = this.eventMap[e];
                for (let n = 0; n < i.length; n++) if (i[n] === t) {
                    this.eventMap[e].splice(n, 1), a.information("server detachEvent current eventMap", this.eventMap);
                    break
                }
            } while (0)
        }

        generateId() {
            return this.rid++
        }

        getFullAlias(e) {
            return `${this.server.getProductId()}-${e}`.toLowerCase()
        }
    }), c = global.__xdasIPCServerInstance, t.server = c
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(19), o = i(23), r = i(14), s = i(746), a = i(24);
    t.Server = class extends r.EventEmitter {
        constructor() {
            super(), this.server = o.createServer(e => this.handleConnection(e)), this.productId = ""
        }

        getProductId() {
            return this.productId
        }

        listen(e, t) {
            let i = a.getSockPath(t);
            this.productId = t || a.getDefaultPrex(), n.existsSync(i) && n.unlinkSync(i), this.server.listen({
                path: i,
                readableAll: !0,
                writableAll: !0
            }, e)
        }

        handleConnection(e) {
            const t = new s.Client({socket: e});
            t.on("message", e => {
                this.handleRequest(e, t)
            }), t.on("end", () => {
                this.emit("end", t)
            }), t.on("error", e => {
                this.emit("error", t, e)
            }), this.emit("connect", t)
        }

        handleRequest(e, t) {
            this.emit("message", e, t)
        }
    }
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0});
    const n = i(23), o = i(14), r = i(26), s = i(44), a = i(24);
    t.Client = class extends o.EventEmitter {
        constructor(e) {
            if (e = e || {}, super(), this.inprocess = !1, this.context = void 0, e.context && (this.context = Object.assign({}, e.context), this.context.productId = e.socketPrex), e.socket) this.socket = e.socket, this.bind(); else if (global.__xdasIPCServer && global.__xdasIPCServer.getProductId().toLowerCase() === e.socketPrex.toLowerCase()) this.inprocess = !0; else {
                let t = a.getSockPath(e.socketPrex);
                this.socket = n.connect(t), this.bind()
            }
        }

        isInprocess() {
            return this.inprocess
        }

        getContext() {
            return this.context
        }

        bind() {
            const e = new s.Parser, t = this.socket;
            t.on("data", t => {
                e.feed(t)
            }), t.on("connect", () => {
                this.emit("connect")
            }), t.on("end", () => {
                r.information("socket is ended"), this.socket = null, this.emit("end")
            }), t.on("error", e => {
                this.socket = null, this.emit("error", e)
            }), e.on("message", e => {
                this.emit("message", e)
            }), this.parser = e
        }

        send(e) {
            if (this.socket) try {
                this.socket.write(this.parser.encode(e))
            } catch (e) {
                r.error(e.message)
            } else r.information("This socket has been ended by the other party", this.context && this.context.name)
        }
    }
}, function (e, t, i) {
    "use strict";
    var n = i(1044);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(629), o = i(304);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-speed.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(630), o = i(306);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-speed-time.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(620), o = i(310);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-radio.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(631), o = i(312);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-container.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(621), o = i(314);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-checkinput.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(622), o = i(316);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-checkselect.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(623), o = i(318);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-textarea.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(624), o = i(320);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\generator-view\\conf-component\\conf-proxy-list.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1046);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(548), o = i(322);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\plan-task.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(549), o = i(324);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\task-rename.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(550), o = i(326);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\bt-repeat-task.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(551), o = i(328);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\bt-repeat-file.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(552), o = i(330);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\private-space-set-password.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(553), o = i(332);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\private-space-verify-password.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(554), o = i(334);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(764);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\private-space-phone-verify.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1048);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(555), o = i(336);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\private-space-download-setting.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(600), o = i(338);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\common\\views\\path-selector.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(556), o = i(340);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\private-space-task-manager.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(557), o = i(342);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\multi-repeat-task.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(558), o = i(344);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\batch-new-task-ctrl.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(559), o = i(346);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\book-marks.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(560), o = i(348);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\book-list.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(561), o = i(350);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\subtitle-task-filelist.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(562), o = i(352);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\subtitle-search.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(563), o = i(354);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\browser-config-guide.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(9), r = i(2), s = i(1), a = i(4), l = i(17),
        c = o.default(r.resolve(__rootDir, "../bin/ThunderHelper.node")),
        u = s.default.getLogger("Browser.Config.Helper");
    !function (e) {
        const t = new class {
            constructor() {
                this.browserNames = ["360se", "chrome", "msedge", "QQBrowser", "360chrome"], this.showMoreSupport = !1, this.browserList = [], this.crxPath = "", this.xunleiKey = "ncennffkjdiamlpmcbajkmaiiiddgioo", this.browserInfos = new Map, this.title = "360安全浏览器"
            }

            getInstallBrowserInfo(e) {
                return n(this, void 0, void 0, function* () {
                    return yield a.client.callServerFunction("GetInstallBrowserInfo", e)
                })
            }

            is360AddonsInstalled(e) {
                return n(this, void 0, void 0, function* () {
                    let t = !1;
                    return e = r.join(e, this.xunleiKey), t = yield l.FileSystemAWNS.existsAW(e), u.information("is360AddonsInstalled ret", t, "addnPath", e), t
                })
            }

            isAddonsOpened(e) {
                return n(this, void 0, void 0, function* () {
                    let t = !1, i = "", n = yield l.FileSystemAWNS.readFileAW(e), o = null;
                    if (n && n.length > 0) {
                        i = n.toString();
                        try {
                            1 === (o = JSON.parse(i)).extensions.settings.ncennffkjdiamlpmcbajkmaiiiddgioo.state && (t = !0)
                        } catch (e) {
                            return u.warning(e), t
                        }
                    }
                    return u.information("isEdgeAndChromeAddonsOpened open", t, "path", e), t
                })
            }

            isEdgeAndChromeAddonsInstalled(e) {
                return n(this, void 0, void 0, function* () {
                    let t = !1, i = "", n = yield l.FileSystemAWNS.readFileAW(e);
                    if (n && n.length > 0) try {
                        i = n.toString()
                    } catch (e) {
                        return u.warning(e), t
                    }
                    return -1 !== i.indexOf(this.xunleiKey) && (t = !0), u.information("isEdgeAndChromeAddonsInstalled ret", t, "path", e), t
                })
            }

            getBrowserPath(e, t) {
                let i = "";
                if (t) {
                    (i = c.queryRegValue(t.reg.regRoot, t.reg.regKey, t.reg.regName)) || ("chrome" === e && (i = c.queryRegValue("HKEY_LOCAL_MACHINE", "SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Google Chrome", "DisplayIcon")), "msedge" === e && (i = c.queryRegValue("HKEY_LOCAL_MACHINE", "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\msedge.exe", "")));
                    let n = i.indexOf(",");
                    -1 !== n && (i = i.slice(0, n)), i = c.getLongPathName(i), c.queryFileExists(i) || (i = "")
                }
                return i
            }

            getDefaultBrowserPath() {
                return c.getDefaultBrowserPath()
            }

            getCanShowIcon() {
                return n(this, void 0, void 0, function* () {
                    let e = !0;
                    do {
                        if (yield this.getInstallBrowserInfo("360安全浏览器")) break;
                        if (yield this.getInstallBrowserInfo("360极速浏览器")) break;
                        if (yield this.getInstallBrowserInfo("QQ浏览器")) break;
                        if (yield this.getInstallBrowserInfo("Edge浏览器")) break;
                        if (yield this.getInstallBrowserInfo("Chrome")) break;
                        e = !1
                    } while (0);
                    return e
                })
            }

            getShowTipInfo(e) {
                return n(this, void 0, void 0, function* () {
                    let t = {}, i = this.getDefaultBrowserPath().split("\\"), n = "";
                    i && i.length > 0 && (n = i[i.length - 1]);
                    let o = r.basename(n, ".exe"),
                        s = {icon: "", name: "", default: !1, install: !1, open: !1, exeName: ""};
                    if (-1 === this.browserNames.indexOf(o)) for (let i of this.browserNames) {
                        let n = e.get(i);
                        if (n && n.browserExist) {
                            n.browserAddonInstall && n.browserAddonOpen || (t.browserInfo = n, t.title = n.browserTitle, t.show = !0);
                            break
                        }
                    } else {
                        let i = e.get(o);
                        if (i) {
                            let e = i.browserAddonInstall;
                            s = {
                                icon: i.icon,
                                name: i.browserTitle,
                                default: !0,
                                install: i.browserAddonInstall,
                                open: i.browserAddonOpen,
                                exeName: o
                            }, this.browserList.push(s), !i.browserExist || i.browserAddonInstall && i.browserAddonOpen || (t.browserInfo = i, t.title = i.browserTitle, t.show = !0), u.information("installed", e)
                        }
                    }
                    return t
                })
            }

            findProcessAw(e) {
                return n(this, void 0, void 0, function* () {
                    return new Promise(t => {
                        c.asyncFindProcess(e, e => {
                            let i = e && e.length > 0;
                            t(i)
                        })
                    })
                })
            }

            getInfos(e = !1) {
                return n(this, void 0, void 0, function* () {
                    let t = this.getDefaultBrowserPath().split("\\"), i = "";
                    t && t.length > 0 && (i = t[t.length - 1]);
                    let n = c.getInstallDir();
                    this.crxPath = r.join(n, "../BHO/xl_ext_chrome.crx"), u.information("installDir", n);
                    let o = yield this.getInstallBrowserInfo("360安全浏览器"),
                        s = yield this.getInstallBrowserInfo("360极速浏览器"), a = yield this.getInstallBrowserInfo("QQ浏览器"),
                        l = yield this.getInstallBrowserInfo("Edge浏览器"), d = yield this.getInstallBrowserInfo("Chrome"),
                        h = c.getEdgeAddonsPath(), p = yield this.isEdgeAndChromeAddonsInstalled(h),
                        f = yield this.isAddonsOpened(h), A = c.getChromeAddonsPath(),
                        g = yield this.isEdgeAndChromeAddonsInstalled(A), v = yield this.isAddonsOpened(A),
                        m = c.get360SafeAddonsPath(), C = yield this.is360AddonsInstalled(m),
                        y = c.get360QuickAddonsPath(), w = yield this.is360AddonsInstalled(y), b = c.getQQAddonsPath(),
                        I = yield this.is360AddonsInstalled(b), E = c.getRoamingAppDataPath(),
                        x = c.getAppDataLocalPath(), k = r.join(E, "360se6/User Data/Default/Preferences"),
                        S = yield this.isAddonsOpened(k),
                        D = r.join(x, "360Chrome/Chrome/User Data/Default/Preferences"),
                        B = yield this.isAddonsOpened(D),
                        P = r.join(x, "Tencent/QQBrowser/User Data/Default/Preferences"),
                        M = yield this.isAddonsOpened(P), R = "360se.exe", T = yield this.findProcessAw(R),
                        Q = "https://ext.se.360.cn/webstore/detail/ncennffkjdiamlpmcbajkmaiiiddgioo",
                        N = "--https://e://extensions/", O = this.getBrowserPath("360se", o),
                        j = null !== o && "" !== O, F = {
                            browserData: o,
                            browserExist: j,
                            browserPath: O,
                            browserAddonPath: m,
                            browserAddonInstall: C,
                            installCmdLine: Q,
                            openCmdLine: N,
                            browserTitle: "360安全浏览器",
                            icon: "xly-img-icon-360",
                            browserAddonOpen: S,
                            browserAddonConfigPath: k
                        };
                    e ? this.browserInfos.set("360se", F) : C && !S && T || this.browserInfos.set("360se", F), R = "chrome.exe", T = yield this.findProcessAw(R), Q = "https://chrome.google.com/webstore/detail/%E8%BF%85%E9%9B%B7%E4%B8%8B%E8%BD%BD%E6%94%AF%E6%8C%81/ncennffkjdiamlpmcbajkmaiiiddgioo?hl=zh-CN", N = "https://chrome.google.com/webstore/detail/%E8%BF%85%E9%9B%B7%E4%B8%8B%E8%BD%BD%E6%94%AF%E6%8C%81/ncennffkjdiamlpmcbajkmaiiiddgioo?hl=zh-CN", O = this.getBrowserPath("chrome", d), F = {
                        browserData: d,
                        browserExist: j = null !== d && "" !== O,
                        browserPath: O,
                        browserAddonPath: A,
                        browserAddonInstall: g,
                        installCmdLine: Q,
                        openCmdLine: N,
                        browserTitle: "Chrome浏览器",
                        icon: "xly-img-icon-chrome",
                        browserAddonOpen: v,
                        browserAddonConfigPath: A
                    }, e ? this.browserInfos.set("chrome", F) : !g || g && !v && T || this.browserInfos.set("chrome", F), O = this.getBrowserPath("msedge", l), N = Q = "https://microsoftedge.microsoft.com/addons/detail/%E8%BF%85%E9%9B%B7%E4%B8%8B%E8%BD%BD%E6%94%AF%E6%8C%81/popomkonnjgcdagdhgcpcekbdeoibglc?hl=zh-CN", F = {
                        browserData: l,
                        browserExist: j = null !== l && "" !== O,
                        browserPath: O,
                        browserAddonPath: h,
                        browserAddonInstall: p,
                        installCmdLine: Q,
                        openCmdLine: N,
                        browserTitle: "Edge浏览器",
                        icon: "xly-img-icon-edge",
                        browserAddonOpen: f,
                        browserAddonConfigPath: h
                    }, this.browserInfos.set("msedge", F), Q = "https://chrome.google.com/webstore/detail/%E8%BF%85%E9%9B%B7%E4%B8%8B%E8%BD%BD%E6%94%AF%E6%8C%81/ncennffkjdiamlpmcbajkmaiiiddgioo?hl=zh-CN", N = "qqbrowser://extensions/manage", O = this.getBrowserPath("QQBrowser", a), F = {
                        browserData: a,
                        browserExist: j = null !== a && "" !== O,
                        browserPath: O,
                        browserAddonPath: b,
                        browserAddonInstall: I,
                        installCmdLine: Q,
                        openCmdLine: N,
                        browserTitle: "QQ浏览器",
                        icon: "xly-img-icon-qq",
                        browserAddonOpen: M,
                        browserAddonConfigPath: b
                    }, e ? this.browserInfos.set("QQBrowser", F) : I && this.browserInfos.set("QQBrowser", F), N = Q = '"' + this.crxPath + '"', O = this.getBrowserPath("360chrome", s), F = {
                        browserData: s,
                        browserExist: j = null !== s && "" !== O,
                        browserPath: O,
                        browserAddonPath: y,
                        browserAddonInstall: w,
                        installCmdLine: Q,
                        openCmdLine: N,
                        browserTitle: "360极速浏览器",
                        icon: "xly-img-icon-360js",
                        browserAddonOpen: B,
                        browserAddonConfigPath: D
                    }, this.browserInfos.set("360chrome", F), u.information("browserInfos", this.browserInfos);
                    let K = r.basename(i, ".exe"),
                        U = {icon: "", name: "", default: !1, install: !1, open: !1, exeName: ""};
                    if (-1 === this.browserNames.indexOf(K)) for (let e of this.browserNames) {
                        let t = this.browserInfos.get(e);
                        if (t && t.browserExist) break
                    } else {
                        let e = this.browserInfos.get(K);
                        if (e) {
                            let t = e.browserAddonInstall;
                            U = {
                                icon: e.icon,
                                name: e.browserTitle,
                                default: !0,
                                install: e.browserAddonOpen,
                                open: e.browserAddonInstall,
                                exeName: K
                            }, this.browserList.push(U), u.information("installed", t)
                        }
                    }
                    return this.browserInfos.forEach((e, t) => {
                        (!this.browserList || this.browserList.length < 1 || t !== this.browserList[0].exeName) && (U = {
                            icon: e.icon,
                            name: e.browserTitle,
                            default: !1,
                            install: e.browserAddonInstall,
                            open: e.browserAddonOpen,
                            exeName: t
                        }, this.browserList.push(U))
                    }), this.browserInfos
                })
            }
        };
        e.getInfos = function (e = !1) {
            return n(this, void 0, void 0, function* () {
                return t.getInfos(e)
            })
        }, e.getDefaultBrowserPath = function () {
            return t.getDefaultBrowserPath()
        }, e.getShowTipInfo = function (e = !1) {
            return n(this, void 0, void 0, function* () {
                let i = yield t.getInfos(e);
                return t.getShowTipInfo(i)
            })
        }, e.getCanShowIcon = function () {
            return n(this, void 0, void 0, function* () {
                return t.getCanShowIcon()
            })
        }
    }(t.BrowserHelperNs || (t.BrowserHelperNs = {}))
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t) {
    e.exports = "../imgs/browser-02--dialog.png"
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(564), o = i(356);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\xmp-fix.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(565), o = i(358);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\xmp-fix-ex.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(566), o = i(360);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(781);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\bird-key-show.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1052);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(567), o = i(362);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(783), i(784);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\total-tabs.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1054);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1058);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(568), o = i(364);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\individuation\\index.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(601), o = i(366);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\individuation\\panel-try-cover.vue", t.default = a.exports
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(602), o = i(368);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\individuation\\pane-skin-featured.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {value: !0}), function (e) {
        e.colorList = [{id: 0}, {
            id: 1,
            defaultOpacity: .9,
            colors: {
                colorPreview: "196,208,232",
                colorAccordion: ["116,137,180", "116,137,180"],
                colorGradientBackground: ["191,207,230", "227,236,246"],
                colorGradientForeground: ["255,255,255", "255,255,255"],
                colorPrimary: "116,137,180",
                colorPrimaryControl1: "120,149,209",
                colorPrimaryControl2: "116,137,180",
                colorPrimaryControl3: "212,225,225",
                colorPrimaryControl4: "240,243,250",
                colorPrimaryGradient: ["168,187,226", "105,132,177"],
                colorPrimaryText: "56,66,77",
                colorSearch: "252,252,252",
                colorSecondary: "83,95,117"
            }
        }, {
            id: 2,
            defaultOpacity: .9,
            colors: {
                colorPreview: "159,204,255",
                colorAccordion: ["51,160,255", "91,179,255"],
                colorGradientBackground: ["217,236,255", "138,204,255"],
                colorGradientForeground: ["255,255,255", "255,255,255"],
                colorPrimary: "51,160,255",
                colorPrimaryControl1: "119,182,255",
                colorPrimaryControl2: "51,160,255",
                colorPrimaryControl3: "212,231,255",
                colorPrimaryControl4: "232,240,255",
                colorPrimaryGradient: ["0,137,226", "103,189,255"],
                colorPrimaryText: "73,91,104",
                colorSearch: "252,252,252",
                colorSecondary: "103,132,154"
            }
        }, {
            id: 3,
            defaultOpacity: .9,
            colors: {
                colorPreview: "255,187,128",
                colorAccordion: ["255,149,87", "255,149,87"],
                colorGradientBackground: ["255,210,142", "255,151,119"],
                colorGradientForeground: ["255,255,255", "255,255,255"],
                colorPrimary: "255,149,87",
                colorPrimaryControl1: "255,178,110",
                colorPrimaryControl2: "255,149,87",
                colorPrimaryControl3: "229,210,194",
                colorPrimaryControl4: "242,233,226",
                colorPrimaryGradient: ["255,176,39", "255,137,33"],
                colorPrimaryText: "97,64,47",
                colorSearch: "252,252,252",
                colorSecondary: "130,99,75"
            }
        }, {
            id: 4,
            defaultOpacity: .9,
            colors: {
                colorPreview: "150,200,158",
                colorAccordion: ["93,154,103", "93,154,103"],
                colorGradientBackground: ["171,207,158", "124,188,162"],
                colorGradientForeground: ["255,255,255", "255,255,255"],
                colorPrimary: "85,123,91",
                colorPrimaryControl1: "114,152,120",
                colorPrimaryControl2: "85,123,91",
                colorPrimaryControl3: "191,210,194",
                colorPrimaryControl4: "220,232,222",
                colorPrimaryGradient: ["84,123,81", "115,165,150"],
                colorPrimaryText: "67,74,61",
                colorSearch: "252,252,252",
                colorSecondary: "97,109,86"
            }
        }, {
            id: 5,
            defaultOpacity: .5,
            colors: {
                colorPreview: "47,73,141",
                colorAccordion: ["99,177,255", "121,175,244"],
                colorGradientBackground: ["56,76,140", "41,72,143"],
                colorGradientForeground: ["97,144,251", "19,34,75"],
                colorPrimary: "230,199,138",
                colorPrimaryControl1: "204,170,122",
                colorPrimaryControl2: "220,191,132",
                colorPrimaryControl3: "185,185,185",
                colorPrimaryControl4: "233,233,233",
                colorPrimaryGradient: ["111,150,255", "156,192,255"],
                colorPrimaryText: "230,207,161",
                colorSearch: "68,124,209",
                colorSecondary: "204,184,143"
            }
        }, {
            id: 6,
            defaultOpacity: .7,
            colors: {
                colorPreview: "65,17,17",
                colorAccordion: ["214,99,99", "214,99,99"],
                colorGradientBackground: ["72,29,29", "16,7,7"],
                colorGradientForeground: ["117,57,57", "30,22,22"],
                colorPrimary: "223,77,77",
                colorPrimaryControl1: "220,96,96",
                colorPrimaryControl2: "159,51,51",
                colorPrimaryControl3: "219,193,193",
                colorPrimaryControl4: "239,224,224",
                colorPrimaryGradient: ["255,86,86", "161,70,70"],
                colorPrimaryText: "235,197,197",
                colorSearch: "88,74,74",
                colorSecondary: "184,151,151"
            }
        }, {
            id: 7,
            defaultOpacity: .3,
            colors: {
                colorPreview: "75,65,129",
                colorAccordion: ["160,185,252", "103,155,207"],
                colorGradientBackground: ["29,90,151", "105,61,191"],
                colorGradientForeground: ["163,177,204", "0,0,0"],
                colorPrimary: "128,213,255",
                colorPrimaryControl1: "118,193,230",
                colorPrimaryControl2: "161,207,230",
                colorPrimaryControl3: "205,215,235",
                colorPrimaryControl4: "228,232,240",
                colorPrimaryGradient: ["142,163,245", "120,144,222"],
                colorPrimaryText: "184,197,204",
                colorSearch: "153,153,153",
                colorSecondary: "138,184,230"
            }
        }, {
            id: 8,
            defaultOpacity: .6,
            colors: {
                colorPreview: "82,39,90",
                colorAccordion: ["170,163,204", "136,122,204"],
                colorGradientBackground: ["83,42,118", "61,46,77"],
                colorGradientForeground: ["93,82,193", "0,0,0"],
                colorPrimary: "170,153,255",
                colorPrimaryControl1: "136,122,204",
                colorPrimaryControl2: "147,132,220",
                colorPrimaryControl3: "204,194,255",
                colorPrimaryControl4: "234,230,255",
                colorPrimaryGradient: ["156,149,255", "128,128,255"],
                colorPrimaryText: "191,184,230",
                colorSearch: "166,148,255",
                colorSecondary: "153,143,204"
            }
        }, {
            id: 9,
            defaultOpacity: .3,
            colors: {
                colorPreview: "74,77,83",
                colorAccordion: ["103,155,207", "160,185,252"],
                colorGradientBackground: ["69,71,77", "15,19,26"],
                colorGradientForeground: ["179,179,179", "0,34,51"],
                colorPrimary: "204,238,255",
                colorPrimaryControl1: "143,184,204",
                colorPrimaryControl2: "161,207,230",
                colorPrimaryControl3: "205,215,235",
                colorPrimaryControl4: "228,232,240",
                colorPrimaryGradient: ["140,173,205", "103,132,162"],
                colorPrimaryText: "184,197,204",
                colorSearch: "153,153,153",
                colorSecondary: "138,184,230"
            }
        }, {
            id: 10,
            defaultOpacity: .5,
            colors: {
                colorPreview: "77,62,45",
                colorAccordion: ["204,177,122", "204,191,163"],
                colorGradientBackground: ["51,44,30", "26,22,15"],
                colorGradientForeground: ["153,122,92", "0,0,0"],
                colorPrimary: "230,199,138",
                colorPrimaryControl1: "204,170,122",
                colorPrimaryControl2: "220,191,132",
                colorPrimaryControl3: "219,212,203",
                colorPrimaryControl4: "236,230,223",
                colorPrimaryGradient: ["186,152,105", "226,197,139"],
                colorPrimaryText: "230,207,161",
                colorSearch: "105,105,105",
                colorSecondary: "204,184,143"
            }
        }]
    }(t.SkinConfigNS || (t.SkinConfigNS = {}))
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(2), r = i(9).default(o.join(__rootDir, "../bin/ThunderHelper.node"));
    !function (e) {
        e.uncompressZipFile = function (e, t) {
            return n(this, void 0, void 0, function* () {
                return new Promise(i => {
                    r.asyncUnZipFile(t, e, e => {
                        i(e)
                    })
                })
            })
        }
    }(t.UnzipUtilitiesAWNS || (t.UnzipUtilitiesAWNS = {}))
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(603), o = i(370);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\individuation\\pane-skin-supercool.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(604), o = i(372);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\individuation\\pane-skin-speedcurve.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(38), r = i(1), s = i(11);
    let {isDef: a} = s.ThunderUtil;
    const l = r.default.getLogger("Thunder.speedcurve-skin.skin-storage");
    t.default = new class {
        constructor() {
            this.skinURL = "http://static-xl.a.88cdn.com/json/thunderx_speedcurve_skin.json"
        }

        getSkins() {
            return n(this, void 0, void 0, function* () {
                do {
                    o.default.defaults.adapter = i(25);
                    try {
                        let e = yield o.default.get(this.skinURL);
                        if (200 === e.status && e.data) {
                            this.skins = e.data, l.information("skins", this.skins), localStorage.setItem("speedcurveSkins", JSON.stringify(this.skins));
                            break
                        }
                    } catch (e) {
                        l.warning(e)
                    }
                    if (a(this.skins)) break;
                    try {
                        this.skins = JSON.parse(localStorage.getItem("speedcurveSkins"))
                    } catch (e) {
                        l.warning(e)
                    }
                } while (0);
                return this.skins
            })
        }
    }
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(605), o = i(374);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\individuation\\pane-skin-suspension.vue", t.default = a.exports
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(606), o = i(376);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(797), i(798);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\individuation\\pane-avatar.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1062);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1064);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(569), o = i(378);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\add-proxy.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(570), o = i(380);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(801);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\bird-key-pwdcheck.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1071);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(571), o = i(382);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\shoulei-qrcode.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(572), o = i(384);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\download-data.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(573), o = i(386);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(817);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\download-detect-tools.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(2), r = i(1), s = i(9), a = i(23), l = i(806), c = i(807), u = i(6).promisify, d = i(172), h = i(4),
        p = i(15), f = s.default(o.join(__rootDir, "../bin/ThunderHelper.node")),
        A = r.default.getLogger("download-detect-tools");
    !function (e) {
        let t, r, s, g, v, m;
        !function (e) {
            e[e.AF_INET = 2] = "AF_INET", e[e.AF_INET6 = 23] = "AF_INET6"
        }(t = e.AfType || (e.AfType = {})), function (e) {
            e[e.IF_TYPE_SOFTWARE_LOOPBACK = 24] = "IF_TYPE_SOFTWARE_LOOPBACK"
        }(r = e.IfType || (e.IfType = {})), function (e) {
            e[e.IfOperStatusUp = 1] = "IfOperStatusUp", e[e.IfOperStatusDown = 2] = "IfOperStatusDown", e[e.IfOperStatusTesting = 3] = "IfOperStatusTesting", e[e.IfOperStatusUnknown = 4] = "IfOperStatusUnknown", e[e.IfOperStatusDormant = 5] = "IfOperStatusDormant", e[e.IfOperStatusNotPresent = 6] = "IfOperStatusNotPresent", e[e.IfOperStatusLowerLayerDown = 7] = "IfOperStatusLowerLayerDown"
        }(s = e.IfOperStatus || (e.IfOperStatus = {})), function (e) {
            e[e.None = 0] = "None", e[e.Started = 1] = "Started", e[e.Success = 2] = "Success", e[e.Failed = 3] = "Failed"
        }(g = e.DetectState || (e.DetectState = {})), function (e) {
            e[e.IndexServer = 0] = "IndexServer", e[e.BTIndexServer = 1] = "BTIndexServer", e[e.EMuleIndexServer = 2] = "EMuleIndexServer", e[e.MirrorSource = 3] = "MirrorSource", e[e.TorrentServer = 4] = "TorrentServer", e[e.P2PServer = 5] = "P2PServer", e[e.PingServer = 6] = "PingServer", e[e.NATServer = 7] = "NATServer", e[e.AccountLogin = 8] = "AccountLogin", e[e.VipDownload = 9] = "VipDownload", e[e.UPNPState = 10] = "UPNPState", e[e.DHTState = 11] = "DHTState", e[e.IPv6Support = 12] = "IPv6Support"
        }(v = e.DetectItemType || (e.DetectItemType = {})), function (e) {
            e.Start = "Start", e.StartItem = "StartItem", e.StatusChange = "StatusChange", e.FinishItem = "FinishItem", e.Finish = "Finish"
        }(m = e.DetectEvent || (e.DetectEvent = {}));
        const C = new class extends d.default {
            constructor() {
                super(), this.detectingItems = null, this.localIPInfo = null, this.currentDetectingIndex = void 0, this.adapterInfos = null, this.statCookie = -1, this.detectingItems = [{
                    type: v.IndexServer,
                    name: "普通任务信息",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载“HTTP、FTP”协议的下载链接时，需要查询下载链接对应的文件信息。\n          如果此项失败，您将无法加速下载“HTTP、FTP”协议的下载链接。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectIndexServer.bind(this)
                }, {
                    type: v.BTIndexServer,
                    name: "BT任务信息",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载BT任务时，需要查询BT任务对应的文件信息。\n          如果此项失败，您将无法加速下载BT任务。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectBTIndexServer.bind(this)
                }, {
                    type: v.TorrentServer,
                    name: "磁力任务信息",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载磁力链接时，需要查询磁力链接对应的BT种子信息。\n          如果此项失败，您将无法下载磁力链接。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectTorrentServer.bind(this)
                }, {
                    type: v.EMuleIndexServer,
                    name: "eMule任务信息",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载“ed2k”协议的下载链接时，需要查询下载链接对应的文件信息。\n          如果此项失败，您将无法加速下载eMule任务。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectEMuleIndexServer.bind(this)
                }, {
                    type: v.MirrorSource,
                    name: "主机镜像资源服务",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载任意任务时，需要通过该服务查询主机镜像资源。\n          如果此项失败，您下载任意任务时，都无法获得主机镜像资源加速。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectMirrorSource.bind(this)
                }, {
                    type: v.P2PServer,
                    name: "节点镜像资源服务",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载任意任务时，需要通过该服务查询节点镜像资源。\n          如果此项失败，您下载任意任务时，都无法获得节点镜像资源加速。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectP2PServer.bind(this)
                }, {
                    type: v.PingServer,
                    name: "连通检测服务",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载任意任务时，需要通过该服务检测各个镜像资源的连通性，从而提升镜像资源连通率，理论上可以更快获得加速效果。\n          如果此项失败，您下载任意任务时，下载加速效果提升较为缓慢。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectPingServer.bind(this)
                }, {
                    type: v.NATServer,
                    name: "网络感知服务",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载任意任务时，需要通过该服务感知您与节点镜像资源之间的网络连接结构，从而提升节点镜像资源连通率，理论上可以获得更快的下载速度。\n          如果此项失败，您下载任意任务时，下载加速效果较差。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectNATServer.bind(this)
                }, {
                    type: v.AccountLogin,
                    name: "帐号登录服务",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷登录帐号时，需要通过该服务获取您的帐号信息。\n          如果此项失败，您将无法登录迅雷帐号。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectAccountLogin.bind(this)
                }, {
                    type: v.VipDownload,
                    name: "会员加速服务",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷会员加速下载任意任务时，需要通过该服务查询会员加速资源，从而获得会员加速效果。\n          如果此项失败，您下载任意任务时，都无法获得会员加速效果。\n          通常该问题与您的网络环境有关，您可以联系客服协助您解决问题。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectVipDownload.bind(this)
                }, {
                    type: v.UPNPState,
                    name: "UPnP状态",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "迅雷能够利用路由器的UPnP功能进行端口映射，从而提升镜像资源的连通率，理论上可以获得更快的下载速度。\n          如果您没有使用路由器，这项失败可以忽略。\n          如果您使用路由器，并且此项失败，请您登录路由器的管理页面，开启“UPnP”功能。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectUPNPState.bind(this)
                }, {
                    type: v.DHTState,
                    name: "DHT状态",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "使用迅雷下载BT任务时，需要通过DHT网络获取更多镜像资源，理论上可以获得更快的下载速度。\n          如果此项失败，您下载BT任务时，下载加速效果可能略受影响。\n          但是如果“BT任务信息、节点镜像资源服务”正常，则该失败可以忽略。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectDHTState.bind(this)
                }, {
                    type: v.IPv6Support,
                    name: "IPv6支持",
                    state: g.None,
                    detectDesc: "正在扫描...",
                    detail: "迅雷现已支持IPv6互联网协议，通过该协议迅雷可以更快速可靠的连接镜像资源，从而提升镜像资源连通率，理论上可以获得更快的下载速度。\n          如果此项失败，可能是由于您的路由器或网络运营商暂未支持IPv6互联网协议，不过该项失败并不会影响您的正常下载。",
                    expand: !1,
                    showExpand: !1,
                    detect: this.detectIPv6Support.bind(this)
                }]
            }

            dnsLookupAW(e) {
                return n(this, void 0, void 0, function* () {
                    let t = null;
                    const i = u(l.lookup);
                    try {
                        t = yield i(e, 4)
                    } catch (t) {
                        A.warning("dnsLookup IPv4 failed! hostName", e, "e", t)
                    }
                    return t
                })
            }

            tcpConnectAW(e, t, i = 4) {
                return n(this, void 0, void 0, function* () {
                    return new Promise(o => n(this, void 0, void 0, function* () {
                        let n = new a.Socket;
                        try {
                            n.on("connect", () => {
                                o(!0), n.end()
                            }), n.on("error", i => {
                                A.warning("tcpConnectAW error! host", e, "port", t, i), o(!1), n.end()
                            }), n.on("timeout", () => {
                                A.warning("tcpConnectAW timeout! host", e, "port", t), o(!1), n.end()
                            }), n.connect({port: t, host: e, family: i})
                        } catch (i) {
                            A.warning("tcpConnect failed! host", e, "port", t, i), o(!1)
                        }
                    }))
                })
            }

            detectTcpConnect(e, t, i = 80) {
                return n(this, void 0, void 0, function* () {
                    let n = !1;
                    do {
                        this.setDetectDesc((-1 !== e.name.indexOf("服务") ? "开始连接" : "开始查询") + e.name);
                        let o = yield this.dnsLookupAW(t);
                        if (!o) {
                            this.setDetectDesc("域名解析失败", "域名解析失败");
                            break
                        }
                        this.setDetectDesc("域名解析成功");
                        let r = (new Date).getTime();
                        if (yield this.tcpConnectAW(o.address, i)) {
                            let t = (new Date).getTime() - r;
                            this.setDetectDesc(e.name + (-1 !== e.name.indexOf("服务") ? "连接" : "查询") + "成功（耗时：" + t + "毫秒）"), n = !0
                        } else this.setDetectDesc(e.name + (-1 !== e.name.indexOf("服务") ? "连接" : "查询") + "失败", "tcp连接失败（" + o.address + ":" + i + "）")
                    } while (0);
                    return n
                })
            }

            setDetectDesc(e, t) {
                if (void 0 !== this.currentDetectingIndex) {
                    let i = this.detectingItems[this.currentDetectingIndex];
                    i.detectDesc = e, i.statResult = t, this.fireEvent(m.StatusChange, i, e)
                }
            }

            detectIndexServer(e) {
                return n(this, void 0, void 0, function* () {
                    return this.detectTcpConnect(e, "hub5idx.v6.shub.sandai.net")
                })
            }

            detectBTIndexServer(e) {
                return n(this, void 0, void 0, function* () {
                    return this.detectTcpConnect(e, "hub5btmain.v6.shub.sandai.net")
                })
            }

            detectEMuleIndexServer(e) {
                return n(this, void 0, void 0, function* () {
                    return this.detectTcpConnect(e, "hub5emu.v6.shub.sandai.net")
                })
            }

            detectTorrentServer(e) {
                return n(this, void 0, void 0, function* () {
                    return this.detectTcpConnect(e, "pool.v6.bt.n0808.com")
                })
            }

            detectP2PServer(e) {
                return n(this, void 0, void 0, function* () {
                    return this.detectTcpConnect(e, "hub5pr.sandai.net")
                })
            }

            detectPingServer(e) {
                return n(this, void 0, void 0, function* () {
                    let t = !1, i = "hub5u.sandai.net";
                    this.setDetectDesc("开始连接" + e.name);
                    let n = (new Date).getTime(), o = yield c.promise.probe(i);
                    if (o && o.alive) {
                        let i = (new Date).getTime() - n;
                        this.setDetectDesc(e.name + "连接成功（耗时：" + i + "毫秒）"), t = !0
                    } else A.information("ping failed! host:", i, ", result:", o), this.setDetectDesc(e.name + "连接失败", "ping失败（" + i + "）");
                    return t
                })
            }

            detectDCDNServer(e) {
                return n(this, void 0, void 0, function* () {
                    let e = !1;
                    do {
                        this.setDetectDesc("开始连接会员加速服务");
                        let t = yield this.dnsLookupAW("dcdnhub.xfs.xcloud.sandai.net");
                        if (!t) {
                            this.setDetectDesc("域名解析失败", "dcdnhub.xfs.xcloud.sandai.net域名解析失败");
                            break
                        }
                        this.setDetectDesc("域名解析成功");
                        let i = (new Date).getTime();
                        if (yield this.tcpConnectAW(t.address, 80)) {
                            let t = (new Date).getTime() - i;
                            this.setDetectDesc("会员加速服务连接成功（耗时：" + t + "毫秒）"), e = !0
                        } else this.setDetectDesc("会员加速服务连接失败", "tcp连接失败（" + t.address + ":80）")
                    } while (0);
                    return e
                })
            }

            detectVipAuthServer(e) {
                return n(this, void 0, void 0, function* () {
                    let e = !1;
                    do {
                        this.setDetectDesc("开始连接会员加速验证服务");
                        let t = yield this.dnsLookupAW("ali.pc-x.speed.auth.vip.xunlei.com");
                        if (!t) {
                            this.setDetectDesc("域名解析失败", "ali.pc-x.speed.auth.vip.xunlei.com域名解析失败");
                            break
                        }
                        this.setDetectDesc("域名解析成功");
                        let i = (new Date).getTime();
                        if (yield this.tcpConnectAW(t.address, 80)) {
                            let t = (new Date).getTime() - i;
                            this.setDetectDesc("会员加速验证服务连接成功（耗时：" + t + "毫秒）"), e = !0
                        } else this.setDetectDesc("会员加速验证服务连接失败", "tcp连接失败（" + t.address + ":80）")
                    } while (0);
                    return e
                })
            }

            detectMirrorSource(e) {
                return n(this, void 0, void 0, function* () {
                    return this.detectTcpConnect(e, "hub5sr.v6.shub.sandai.net")
                })
            }

            detectNATServer(e) {
                return n(this, void 0, void 0, function* () {
                    return new Promise(t => n(this, void 0, void 0, function* () {
                        let i = !1;
                        {
                            const t = ["hub5pn.sandai.net", "g1.hub5pn.sandai.net", "g2.hub5pn.sandai.net", "g3.hub5pn.sandai.net"];
                            let n = "";
                            for (let o = 0; o < t.length; ++o) {
                                let r = t[o];
                                this.setDetectDesc("开始连接" + e.name + "【" + (o + 1) + "】");
                                let s = (new Date).getTime(), a = yield c.promise.probe(r);
                                if (a && a.alive) {
                                    let t = (new Date).getTime() - s;
                                    this.setDetectDesc(e.name + "连接成功（耗时：" + t + "毫秒）"), i = !0;
                                    break
                                }
                                A.warning("detectNATServer ping failed! host:", r, ", result", a), n.length > 0 && (n += ","), n += "ping失败（" + r + "）", this.setDetectDesc(e.name + "连接失败", n)
                            }
                        }
                        t(i)
                    }))
                })
            }

            detectAccountLogin(e) {
                return n(this, void 0, void 0, function* () {
                    return new Promise(t => n(this, void 0, void 0, function* () {
                        this.setDetectDesc("开始帐号登录服务");
                        let n = (new Date).getTime();
                        const o = yield i(38);
                        o.defaults.adapter = i(25);
                        let r = e.statResult || "";
                        try {
                            let e = yield o.request({
                                method: "options",
                                url: "https://xluser-ssl.xunlei.com/xluser.core.login",
                                params: {}
                            });
                            if (204 === e.status) {
                                let e = (new Date).getTime() - n;
                                this.setDetectDesc("连接帐号登录服务成功（耗时：" + e + "毫秒）"), t(!0)
                            } else r.length > 0 && (r += ","), r += "options请求失败（" + e.status + "）", this.setDetectDesc("连接帐号登录服务失败（" + e.status + "）", r), t(!1)
                        } catch (e) {
                            A.information("detectAccountLogin exception! e", e), r.length > 0 && (r += ","), r += "options请求失败，" + (e || ""), this.setDetectDesc("连接帐号登录服务失败", r), t(!1)
                        }
                    }))
                })
            }

            detectVipDownload(e) {
                return n(this, void 0, void 0, function* () {
                    return new Promise(t => n(this, void 0, void 0, function* () {
                        let i = !1;
                        do {
                            if (!(yield this.detectVipAuthServer(e))) break;
                            if (!(yield this.detectDCDNServer(e))) break;
                            i = !0
                        } while (0);
                        t(i)
                    }))
                })
            }

            detectUPNPState(e) {
                return n(this, void 0, void 0, function* () {
                    return new Promise(e => n(this, void 0, void 0, function* () {
                        this.setDetectDesc("开始检测UPnP状态");
                        let t = yield h.client.callServerFunction("QueryGlobalInfo"), i = t && t.isUPnPReady > 0;
                        this.setDetectDesc("UPnP状态" + (i ? "可用" : "不可用")), e(i)
                    }))
                })
            }

            detectDHTState(e) {
                return n(this, void 0, void 0, function* () {
                    return new Promise(e => n(this, void 0, void 0, function* () {
                        this.setDetectDesc("开始检测DHT状态");
                        let t = yield h.client.callServerFunction("QueryGlobalInfo"), i = t && t.dhtNodeCount > 0;
                        this.setDetectDesc("DHT状态" + (i ? "可用" : "不可用")), e(i)
                    }))
                })
            }

            detectIPv6Support(e) {
                return n(this, void 0, void 0, function* () {
                    return new Promise(e => {
                        this.setDetectDesc("开始检测IPv6支持"), f.getNetAdapterInfo(i => n(this, void 0, void 0, function* () {
                            A.information("adapterInfos", i), this.adapterInfos = i;
                            let n = !1;
                            for (let e = 0; e < i.length; ++e) {
                                let o = i[e];
                                if (o.type !== r.IF_TYPE_SOFTWARE_LOOPBACK && o.operStatus === s.IfOperStatusUp) {
                                    for (let e = 0; e < o.ipAddresses.length; ++e) if (o.ipAddresses[e].family === t.AF_INET6) {
                                        n = !0;
                                        break
                                    }
                                    if (n) break
                                }
                            }
                            if (n) {
                                let e = null;
                                const t = u(l.lookup);
                                let i = "hub5idx.v6.shub.sandai.net";
                                try {
                                    e = yield t(i, 6)
                                } catch (e) {
                                    A.warning("dnsLookup IPv6 failed! hostName", i, "e", e)
                                }
                                n = !!e && (yield this.tcpConnectAW(e.address, 80, 6))
                            }
                            this.setDetectDesc(n ? "机器和网络环境已支持IPv6" : "机器或网络环境不支持IPv6"), e(n)
                        }))
                    })
                })
            }

            sendFinishStat(e, t) {
                return n(this, void 0, void 0, function* () {
                    let n = "result=" + encodeURIComponent(e);
                    n += ",wrong_cnt=" + t, n += ",ip=" + (this.localIPInfo && this.localIPInfo.localIP ? this.localIPInfo.localIP : ""), n += ",windows_version=" + (yield Promise.resolve().then(() => i(12))).release();
                    let r = o.join(__rootDir, "../bin/SDK/DownloadSDK.dll");
                    n += ",download_engine_version=" + f.getFileVersion(r), n += ",dns=" + this.getDNSList().join("|"), p.XLStatNS.trackEvent("xlx_download_diagnosis", "download_diagnosis_result", "", 0, 0, 0, 0, n, this.statCookie)
                })
            }

            getLocalIPInfoAW() {
                return n(this, void 0, void 0, function* () {
                    if (this.localIPInfo) return this.localIPInfo;
                    const e = yield i(38);
                    e.defaults.adapter = i(25);
                    try {
                        let t = yield e.request({
                            method: "post",
                            url: "https://tool.lu/ip/ajax.html",
                            params: {},
                            headers: {}
                        });
                        200 === t.status && t.data && t.data.text && (this.localIPInfo = {
                            teleCommunications: t.data.text.ip2region_location,
                            localIP: t.data.text.ip
                        })
                    } catch (e) {
                        A.warning("request https://tool.lu/ip/ajax.html failed! e", e)
                    }
                    return this.localIPInfo
                })
            }

            start(e) {
                return n(this, void 0, void 0, function* () {
                    let t = "", i = 0;
                    this.statCookie = yield h.client.callServerFunction("GetDetectStatCookie"), h.client.broadcastEvent("DownloadDetectStart", e), this.fireEvent(m.Start);
                    let n = g.Success;
                    for (let e = 0; e < this.detectingItems.length; ++e) {
                        let o = this.detectingItems[e];
                        this.currentDetectingIndex = e, o.state = g.Started, this.fireEvent(m.StartItem, o, e), (yield o.detect(o)) ? o.state = g.Success : (o.state = g.Failed, n = g.Failed, t += o.name + "," + (o.statResult || "") + "|", i++), this.fireEvent(m.FinishItem, o, e, o.state)
                    }
                    yield this.getLocalIPInfoAW(), this.fireEvent(m.Finish, n), this.sendFinishStat(t, i).catch()
                })
            }

            getAllDectectItems() {
                return this.detectingItems
            }

            getDNSList() {
                let e = [];
                if (this.adapterInfos) {
                    let t = {};
                    for (let e = 0; e < this.adapterInfos.length; ++e) {
                        let i = this.adapterInfos[e];
                        i.type !== r.IF_TYPE_SOFTWARE_LOOPBACK && i.operStatus === s.IfOperStatusUp && i.dnsAddresses.forEach(e => {
                            t[e] = !0
                        })
                    }
                    e = Object.keys(t)
                }
                return e
            }

            restart(e) {
                return n(this, void 0, void 0, function* () {
                    for (let e = 0; e < this.detectingItems.length; ++e) {
                        let t = this.detectingItems[e];
                        t.state = g.None, t.detectDesc = "正在扫描…"
                    }
                    return this.currentDetectingIndex = 0, this.start(e)
                })
            }
        };
        e.getLocalIPInfo = function () {
            return n(this, void 0, void 0, function* () {
                return C.getLocalIPInfoAW()
            })
        }, e.start = function (e) {
            C.start(e).catch()
        }, e.restart = function (e) {
            C.restart(e).catch()
        }, e.getAllDectectItems = function () {
            return C.getAllDectectItems()
        }, e.getDNSList = function () {
            return C.getDNSList()
        }, e.attachListener = function (e, t) {
            C.attachListener(e, t)
        }, e.detachListener = function (e, t) {
            C.detachListener(e, t)
        }
    }(t.DownloadDetectToolsNS || (t.DownloadDetectToolsNS = {}))
}, function (e, t) {
    e.exports = require("dns")
}, function (e, t, i) {
    var n = {};
    n.sys = i(808), n.promise = i(649), e.exports = n
}, function (e, t, i) {
    "use strict";
    var n = i(649);
    t.probe = function (e, t, i) {
        var o = i || {};
        return n.probe(e, o).then(function (e) {
            t(e.alive, null)
        }).catch(function (e) {
            t(null, e)
        }).done()
    }
}, function (e, t) {
    e.exports = require("child_process")
}, function (e, t, i) {
    /*!
 *
 * Copyright 2009-2017 Kris Kowal under the terms of the MIT
 * license found at https://github.com/kriskowal/q/blob/v1/LICENSE
 *
 * With parts by Tyler Close
 * Copyright 2007-2009 Tyler Close under the terms of the MIT X license found
 * at http://www.opensource.org/licenses/mit-license.html
 * Forked at ref_send.js version: 2009-05-11
 *
 * With parts by Mark Miller
 * Copyright (C) 2011 Google Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 */
    !function (t) {
        "use strict";
        "function" == typeof bootstrap ? bootstrap("promise", t) : e.exports = t()
    }(function () {
        "use strict";
        var e = !1;
        try {
            throw new Error
        } catch (t) {
            e = !!t.stack
        }
        var t, i = w(), n = function () {
        }, o = function () {
            var e = {task: void 0, next: null}, t = e, i = !1, n = void 0, r = !1, s = [];

            function a() {
                for (var t, n; e.next;) t = (e = e.next).task, e.task = void 0, (n = e.domain) && (e.domain = void 0, n.enter()), l(t, n);
                for (; s.length;) l(t = s.pop());
                i = !1
            }

            function l(e, t) {
                try {
                    e()
                } catch (e) {
                    if (r) throw t && t.exit(), setTimeout(a, 0), t && t.enter(), e;
                    setTimeout(function () {
                        throw e
                    }, 0)
                }
                t && t.exit()
            }

            if (o = function (e) {
                t = t.next = {task: e, domain: r && process.domain, next: null}, i || (i = !0, n())
            }, "object" == typeof process && "[object process]" === process.toString() && process.nextTick) r = !0, n = function () {
                process.nextTick(a)
            }; else if ("function" == typeof setImmediate) n = "undefined" != typeof window ? setImmediate.bind(window, a) : function () {
                setImmediate(a)
            }; else if ("undefined" != typeof MessageChannel) {
                var c = new MessageChannel;
                c.port1.onmessage = function () {
                    n = u, c.port1.onmessage = a, a()
                };
                var u = function () {
                    c.port2.postMessage(0)
                };
                n = function () {
                    setTimeout(a, 0), u()
                }
            } else n = function () {
                setTimeout(a, 0)
            };
            return o.runAfter = function (e) {
                s.push(e), i || (i = !0, n())
            }, o
        }(), r = Function.call;

        function s(e) {
            return function () {
                return r.apply(e, arguments)
            }
        }

        var a, l = s(Array.prototype.slice), c = s(Array.prototype.reduce || function (e, t) {
            var i = 0, n = this.length;
            if (1 === arguments.length) for (; ;) {
                if (i in this) {
                    t = this[i++];
                    break
                }
                if (++i >= n) throw new TypeError
            }
            for (; i < n; i++) i in this && (t = e(t, this[i], i));
            return t
        }), u = s(Array.prototype.indexOf || function (e) {
            for (var t = 0; t < this.length; t++) if (this[t] === e) return t;
            return -1
        }), d = s(Array.prototype.map || function (e, t) {
            var i = this, n = [];
            return c(i, function (o, r, s) {
                n.push(e.call(t, r, s, i))
            }, void 0), n
        }), h = Object.create || function (e) {
            function t() {
            }

            return t.prototype = e, new t
        }, p = Object.defineProperty || function (e, t, i) {
            return e[t] = i.value, e
        }, f = s(Object.prototype.hasOwnProperty), A = Object.keys || function (e) {
            var t = [];
            for (var i in e) f(e, i) && t.push(i);
            return t
        }, g = s(Object.prototype.toString);
        a = "undefined" != typeof ReturnValue ? ReturnValue : function (e) {
            this.value = e
        };
        var v = "From previous event:";

        function m(t, i) {
            if (e && i.stack && "object" == typeof t && null !== t && t.stack) {
                for (var n = [], o = i; o; o = o.source) o.stack && (!t.__minimumStackCounter__ || t.__minimumStackCounter__ > o.stackCounter) && (p(t, "__minimumStackCounter__", {
                    value: o.stackCounter,
                    configurable: !0
                }), n.unshift(o.stack));
                n.unshift(t.stack);
                var r = function (e) {
                    for (var t = e.split("\n"), i = [], n = 0; n < t.length; ++n) {
                        var o = t[n];
                        !y(o) && (-1 === (r = o).indexOf("(module.js:") && -1 === r.indexOf("(node.js:")) && o && i.push(o)
                    }
                    var r;
                    return i.join("\n")
                }(n.join("\n" + v + "\n"));
                p(t, "stack", {value: r, configurable: !0})
            }
        }

        function C(e) {
            var t = /at .+ \((.+):(\d+):(?:\d+)\)$/.exec(e);
            if (t) return [t[1], Number(t[2])];
            var i = /at ([^ ]+):(\d+):(?:\d+)$/.exec(e);
            if (i) return [i[1], Number(i[2])];
            var n = /.*@(.+):(\d+)$/.exec(e);
            return n ? [n[1], Number(n[2])] : void 0
        }

        function y(e) {
            var n = C(e);
            if (!n) return !1;
            var o = n[0], r = n[1];
            return o === t && r >= i && r <= W
        }

        function w() {
            if (e) try {
                throw new Error
            } catch (e) {
                var i = e.stack.split("\n"), n = C(i[0].indexOf("@") > 0 ? i[1] : i[2]);
                if (!n) return;
                return t = n[0], n[1]
            }
        }

        function b(e) {
            return e instanceof S ? e : M(e) ? (t = e, i = E(), b.nextTick(function () {
                try {
                    t.then(i.resolve, i.reject, i.notify)
                } catch (e) {
                    i.reject(e)
                }
            }), i.promise) : L(e);
            var t, i
        }

        b.resolve = b, b.nextTick = o, b.longStackSupport = !1;
        var I = 1;

        function E() {
            var t, i = [], n = [], o = h(E.prototype), r = h(S.prototype);
            if (r.promiseDispatch = function (e, o, r) {
                var s = l(arguments);
                i ? (i.push(s), "when" === o && r[1] && n.push(r[1])) : b.nextTick(function () {
                    t.promiseDispatch.apply(t, s)
                })
            }, r.valueOf = function () {
                if (i) return r;
                var e = B(t);
                return P(e) && (t = e), e
            }, r.inspect = function () {
                return t ? t.inspect() : {state: "pending"}
            }, b.longStackSupport && e) try {
                throw new Error
            } catch (e) {
                r.stack = e.stack.substring(e.stack.indexOf("\n") + 1), r.stackCounter = I++
            }

            function s(o) {
                t = o, b.longStackSupport && e && (r.source = o), c(i, function (e, t) {
                    b.nextTick(function () {
                        o.promiseDispatch.apply(o, t)
                    })
                }, void 0), i = void 0, n = void 0
            }

            return o.promise = r, o.resolve = function (e) {
                t || s(b(e))
            }, o.fulfill = function (e) {
                t || s(L(e))
            }, o.reject = function (e) {
                t || s(U(e))
            }, o.notify = function (e) {
                t || c(n, function (t, i) {
                    b.nextTick(function () {
                        i(e)
                    })
                }, void 0)
            }, o
        }

        function x(e) {
            if ("function" != typeof e) throw new TypeError("resolver must be a function.");
            var t = E();
            try {
                e(t.resolve, t.reject, t.notify)
            } catch (e) {
                t.reject(e)
            }
            return t.promise
        }

        function k(e) {
            return x(function (t, i) {
                for (var n = 0, o = e.length; n < o; n++) b(e[n]).then(t, i)
            })
        }

        function S(e, t, i) {
            void 0 === t && (t = function (e) {
                return U(new Error("Promise does not support operation: " + e))
            }), void 0 === i && (i = function () {
                return {state: "unknown"}
            });
            var n = h(S.prototype);
            if (n.promiseDispatch = function (i, o, r) {
                var s;
                try {
                    s = e[o] ? e[o].apply(n, r) : t.call(n, o, r)
                } catch (e) {
                    s = U(e)
                }
                i && i(s)
            }, n.inspect = i, i) {
                var o = i();
                "rejected" === o.state && (n.exception = o.reason), n.valueOf = function () {
                    var e = i();
                    return "pending" === e.state || "rejected" === e.state ? n : e.value
                }
            }
            return n
        }

        function D(e, t, i, n) {
            return b(e).then(t, i, n)
        }

        function B(e) {
            if (P(e)) {
                var t = e.inspect();
                if ("fulfilled" === t.state) return t.value
            }
            return e
        }

        function P(e) {
            return e instanceof S
        }

        function M(e) {
            return (t = e) === Object(t) && "function" == typeof e.then;
            var t
        }

        "object" == typeof process && process && process.env && process.env.Q_DEBUG && (b.longStackSupport = !0), b.defer = E, E.prototype.makeNodeResolver = function () {
            var e = this;
            return function (t, i) {
                t ? e.reject(t) : arguments.length > 2 ? e.resolve(l(arguments, 1)) : e.resolve(i)
            }
        }, b.Promise = x, b.promise = x, x.race = k, x.all = G, x.reject = U, x.resolve = b, b.passByCopy = function (e) {
            return e
        }, S.prototype.passByCopy = function () {
            return this
        }, b.join = function (e, t) {
            return b(e).join(t)
        }, S.prototype.join = function (e) {
            return b([this, e]).spread(function (e, t) {
                if (e === t) return e;
                throw new Error("Q can't join: not the same: " + e + " " + t)
            })
        }, b.race = k, S.prototype.race = function () {
            return this.then(b.race)
        }, b.makePromise = S, S.prototype.toString = function () {
            return "[object Promise]"
        }, S.prototype.then = function (e, t, i) {
            var n = this, o = E(), r = !1;
            return b.nextTick(function () {
                n.promiseDispatch(function (t) {
                    r || (r = !0, o.resolve(function (t) {
                        try {
                            return "function" == typeof e ? e(t) : t
                        } catch (e) {
                            return U(e)
                        }
                    }(t)))
                }, "when", [function (e) {
                    r || (r = !0, o.resolve(function (e) {
                        if ("function" == typeof t) {
                            m(e, n);
                            try {
                                return t(e)
                            } catch (e) {
                                return U(e)
                            }
                        }
                        return U(e)
                    }(e)))
                }])
            }), n.promiseDispatch(void 0, "when", [void 0, function (e) {
                var t, n = !1;
                try {
                    t = function (e) {
                        return "function" == typeof i ? i(e) : e
                    }(e)
                } catch (e) {
                    if (n = !0, !b.onerror) throw e;
                    b.onerror(e)
                }
                n || o.notify(t)
            }]), o.promise
        }, b.tap = function (e, t) {
            return b(e).tap(t)
        }, S.prototype.tap = function (e) {
            return e = b(e), this.then(function (t) {
                return e.fcall(t).thenResolve(t)
            })
        }, b.when = D, S.prototype.thenResolve = function (e) {
            return this.then(function () {
                return e
            })
        }, b.thenResolve = function (e, t) {
            return b(e).thenResolve(t)
        }, S.prototype.thenReject = function (e) {
            return this.then(function () {
                throw e
            })
        }, b.thenReject = function (e, t) {
            return b(e).thenReject(t)
        }, b.nearer = B, b.isPromise = P, b.isPromiseAlike = M, b.isPending = function (e) {
            return P(e) && "pending" === e.inspect().state
        }, S.prototype.isPending = function () {
            return "pending" === this.inspect().state
        }, b.isFulfilled = function (e) {
            return !P(e) || "fulfilled" === e.inspect().state
        }, S.prototype.isFulfilled = function () {
            return "fulfilled" === this.inspect().state
        }, b.isRejected = function (e) {
            return P(e) && "rejected" === e.inspect().state
        }, S.prototype.isRejected = function () {
            return "rejected" === this.inspect().state
        };
        var R, T, Q, N = [], O = [], j = [], F = !0;

        function K() {
            N.length = 0, O.length = 0, F || (F = !0)
        }

        function U(e) {
            var t = S({
                when: function (t) {
                    return t && function (e) {
                        if (F) {
                            var t = u(O, e);
                            -1 !== t && ("object" == typeof process && "function" == typeof process.emit && b.nextTick.runAfter(function () {
                                var i = u(j, e);
                                -1 !== i && (process.emit("rejectionHandled", N[t], e), j.splice(i, 1))
                            }), O.splice(t, 1), N.splice(t, 1))
                        }
                    }(this), t ? t(e) : this
                }
            }, function () {
                return this
            }, function () {
                return {state: "rejected", reason: e}
            });
            return function (e, t) {
                F && ("object" == typeof process && "function" == typeof process.emit && b.nextTick.runAfter(function () {
                    -1 !== u(O, e) && (process.emit("unhandledRejection", t, e), j.push(e))
                }), O.push(e), t && void 0 !== t.stack ? N.push(t.stack) : N.push("(no stack) " + t))
            }(t, e), t
        }

        function L(e) {
            return S({
                when: function () {
                    return e
                }, get: function (t) {
                    return e[t]
                }, set: function (t, i) {
                    e[t] = i
                }, delete: function (t) {
                    delete e[t]
                }, post: function (t, i) {
                    return null === t || void 0 === t ? e.apply(void 0, i) : e[t].apply(e, i)
                }, apply: function (t, i) {
                    return e.apply(t, i)
                }, keys: function () {
                    return A(e)
                }
            }, void 0, function () {
                return {state: "fulfilled", value: e}
            })
        }

        function z(e, t, i) {
            return b(e).spread(t, i)
        }

        function Y(e, t, i) {
            return b(e).dispatch(t, i)
        }

        function G(e) {
            return D(e, function (e) {
                var t = 0, i = E();
                return c(e, function (n, o, r) {
                    var s;
                    P(o) && "fulfilled" === (s = o.inspect()).state ? e[r] = s.value : (++t, D(o, function (n) {
                        e[r] = n, 0 == --t && i.resolve(e)
                    }, i.reject, function (e) {
                        i.notify({index: r, value: e})
                    }))
                }, void 0), 0 === t && i.resolve(e), i.promise
            })
        }

        function H(e) {
            if (0 === e.length) return b.resolve();
            var t = b.defer(), i = 0;
            return c(e, function (n, o, r) {
                var s = e[r];
                i++, D(s, function (e) {
                    t.resolve(e)
                }, function (e) {
                    if (0 == --i) {
                        var n = e || new Error("" + e);
                        n.message = "Q can't get fulfillment value from any promise, all promises were rejected. Last error message: " + n.message, t.reject(n)
                    }
                }, function (e) {
                    t.notify({index: r, value: e})
                })
            }, void 0), t.promise
        }

        function J(e) {
            return D(e, function (e) {
                return e = d(e, b), D(G(d(e, function (e) {
                    return D(e, n, n)
                })), function () {
                    return e
                })
            })
        }

        b.resetUnhandledRejections = K, b.getUnhandledReasons = function () {
            return N.slice()
        }, b.stopUnhandledRejectionTracking = function () {
            K(), F = !1
        }, K(), b.reject = U, b.fulfill = L, b.master = function (e) {
            return S({
                isDef: function () {
                }
            }, function (t, i) {
                return Y(e, t, i)
            }, function () {
                return b(e).inspect()
            })
        }, b.spread = z, S.prototype.spread = function (e, t) {
            return this.all().then(function (t) {
                return e.apply(void 0, t)
            }, t)
        }, b.async = function (e) {
            return function () {
                function t(e, t) {
                    var r;
                    if ("undefined" == typeof StopIteration) {
                        try {
                            r = i[e](t)
                        } catch (e) {
                            return U(e)
                        }
                        return r.done ? b(r.value) : D(r.value, n, o)
                    }
                    try {
                        r = i[e](t)
                    } catch (e) {
                        return function (e) {
                            return "[object StopIteration]" === g(e) || e instanceof a
                        }(e) ? b(e.value) : U(e)
                    }
                    return D(r, n, o)
                }

                var i = e.apply(this, arguments), n = t.bind(t, "next"), o = t.bind(t, "throw");
                return n()
            }
        }, b.spawn = function (e) {
            b.done(b.async(e)())
        }, b.return = function (e) {
            throw new a(e)
        }, b.promised = function (e) {
            return function () {
                return z([this, G(arguments)], function (t, i) {
                    return e.apply(t, i)
                })
            }
        }, b.dispatch = Y, S.prototype.dispatch = function (e, t) {
            var i = this, n = E();
            return b.nextTick(function () {
                i.promiseDispatch(n.resolve, e, t)
            }), n.promise
        }, b.get = function (e, t) {
            return b(e).dispatch("get", [t])
        }, S.prototype.get = function (e) {
            return this.dispatch("get", [e])
        }, b.set = function (e, t, i) {
            return b(e).dispatch("set", [t, i])
        }, S.prototype.set = function (e, t) {
            return this.dispatch("set", [e, t])
        }, b.del = b.delete = function (e, t) {
            return b(e).dispatch("delete", [t])
        }, S.prototype.del = S.prototype.delete = function (e) {
            return this.dispatch("delete", [e])
        }, b.mapply = b.post = function (e, t, i) {
            return b(e).dispatch("post", [t, i])
        }, S.prototype.mapply = S.prototype.post = function (e, t) {
            return this.dispatch("post", [e, t])
        }, b.send = b.mcall = b.invoke = function (e, t) {
            return b(e).dispatch("post", [t, l(arguments, 2)])
        }, S.prototype.send = S.prototype.mcall = S.prototype.invoke = function (e) {
            return this.dispatch("post", [e, l(arguments, 1)])
        }, b.fapply = function (e, t) {
            return b(e).dispatch("apply", [void 0, t])
        }, S.prototype.fapply = function (e) {
            return this.dispatch("apply", [void 0, e])
        }, b.try = b.fcall = function (e) {
            return b(e).dispatch("apply", [void 0, l(arguments, 1)])
        }, S.prototype.fcall = function () {
            return this.dispatch("apply", [void 0, l(arguments)])
        }, b.fbind = function (e) {
            var t = b(e), i = l(arguments, 1);
            return function () {
                return t.dispatch("apply", [this, i.concat(l(arguments))])
            }
        }, S.prototype.fbind = function () {
            var e = this, t = l(arguments);
            return function () {
                return e.dispatch("apply", [this, t.concat(l(arguments))])
            }
        }, b.keys = function (e) {
            return b(e).dispatch("keys", [])
        }, S.prototype.keys = function () {
            return this.dispatch("keys", [])
        }, b.all = G, S.prototype.all = function () {
            return G(this)
        }, b.any = H, S.prototype.any = function () {
            return H(this)
        }, b.allResolved = (R = J, T = "allResolved", Q = "allSettled", function () {
            return "undefined" != typeof console && "function" == typeof console.warn && console.warn(T + " is deprecated, use " + Q + " instead.", new Error("").stack), R.apply(R, arguments)
        }), S.prototype.allResolved = function () {
            return J(this)
        }, b.allSettled = function (e) {
            return b(e).allSettled()
        }, S.prototype.allSettled = function () {
            return this.then(function (e) {
                return G(d(e, function (e) {
                    function t() {
                        return e.inspect()
                    }

                    return (e = b(e)).then(t, t)
                }))
            })
        }, b.fail = b.catch = function (e, t) {
            return b(e).then(void 0, t)
        }, S.prototype.fail = S.prototype.catch = function (e) {
            return this.then(void 0, e)
        }, b.progress = function (e, t) {
            return b(e).then(void 0, void 0, t)
        }, S.prototype.progress = function (e) {
            return this.then(void 0, void 0, e)
        }, b.fin = b.finally = function (e, t) {
            return b(e).finally(t)
        }, S.prototype.fin = S.prototype.finally = function (e) {
            if (!e || "function" != typeof e.apply) throw new Error("Q can't apply finally callback");
            return e = b(e), this.then(function (t) {
                return e.fcall().then(function () {
                    return t
                })
            }, function (t) {
                return e.fcall().then(function () {
                    throw t
                })
            })
        }, b.done = function (e, t, i, n) {
            return b(e).done(t, i, n)
        }, S.prototype.done = function (e, t, i) {
            var n = function (e) {
                b.nextTick(function () {
                    if (m(e, o), !b.onerror) throw e;
                    b.onerror(e)
                })
            }, o = e || t || i ? this.then(e, t, i) : this;
            "object" == typeof process && process && process.domain && (n = process.domain.bind(n)), o.then(void 0, n)
        }, b.timeout = function (e, t, i) {
            return b(e).timeout(t, i)
        }, S.prototype.timeout = function (e, t) {
            var i = E(), n = setTimeout(function () {
                t && "string" != typeof t || ((t = new Error(t || "Timed out after " + e + " ms")).code = "ETIMEDOUT"), i.reject(t)
            }, e);
            return this.then(function (e) {
                clearTimeout(n), i.resolve(e)
            }, function (e) {
                clearTimeout(n), i.reject(e)
            }, i.notify), i.promise
        }, b.delay = function (e, t) {
            return void 0 === t && (t = e, e = void 0), b(e).delay(t)
        }, S.prototype.delay = function (e) {
            return this.then(function (t) {
                var i = E();
                return setTimeout(function () {
                    i.resolve(t)
                }, e), i.promise
            })
        }, b.nfapply = function (e, t) {
            return b(e).nfapply(t)
        }, S.prototype.nfapply = function (e) {
            var t = E(), i = l(e);
            return i.push(t.makeNodeResolver()), this.fapply(i).fail(t.reject), t.promise
        }, b.nfcall = function (e) {
            var t = l(arguments, 1);
            return b(e).nfapply(t)
        }, S.prototype.nfcall = function () {
            var e = l(arguments), t = E();
            return e.push(t.makeNodeResolver()), this.fapply(e).fail(t.reject), t.promise
        }, b.nfbind = b.denodeify = function (e) {
            if (void 0 === e) throw new Error("Q can't wrap an undefined function");
            var t = l(arguments, 1);
            return function () {
                var i = t.concat(l(arguments)), n = E();
                return i.push(n.makeNodeResolver()), b(e).fapply(i).fail(n.reject), n.promise
            }
        }, S.prototype.nfbind = S.prototype.denodeify = function () {
            var e = l(arguments);
            return e.unshift(this), b.denodeify.apply(void 0, e)
        }, b.nbind = function (e, t) {
            var i = l(arguments, 2);
            return function () {
                var n = i.concat(l(arguments)), o = E();
                return n.push(o.makeNodeResolver()), b(function () {
                    return e.apply(t, arguments)
                }).fapply(n).fail(o.reject), o.promise
            }
        }, S.prototype.nbind = function () {
            var e = l(arguments, 0);
            return e.unshift(this), b.nbind.apply(void 0, e)
        }, b.nmapply = b.npost = function (e, t, i) {
            return b(e).npost(t, i)
        }, S.prototype.nmapply = S.prototype.npost = function (e, t) {
            var i = l(t || []), n = E();
            return i.push(n.makeNodeResolver()), this.dispatch("post", [e, i]).fail(n.reject), n.promise
        }, b.nsend = b.nmcall = b.ninvoke = function (e, t) {
            var i = l(arguments, 2), n = E();
            return i.push(n.makeNodeResolver()), b(e).dispatch("post", [t, i]).fail(n.reject), n.promise
        }, S.prototype.nsend = S.prototype.nmcall = S.prototype.ninvoke = function (e) {
            var t = l(arguments, 1), i = E();
            return t.push(i.makeNodeResolver()), this.dispatch("post", [e, t]).fail(i.reject), i.promise
        }, b.nodeify = function (e, t) {
            return b(e).nodeify(t)
        }, S.prototype.nodeify = function (e) {
            if (!e) return this;
            this.then(function (t) {
                b.nextTick(function () {
                    e(null, t)
                })
            }, function (t) {
                b.nextTick(function () {
                    e(t)
                })
            })
        }, b.noConflict = function () {
            throw new Error("Q.noConflict only works when Q is used as a global")
        };
        var W = w();
        return b
    })
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = {}, r = {numeric: !0, timeout: 2, min_reply: 1, extra: []};
    o.getResult = function (e, t) {
        var i = t || {}, o = [];
        return ["numeric", "timeout", "min_reply", "extra"].forEach(function (e) {
            "boolean" != typeof i[e] && (i[e] = i[e] || r[e])
        }), i.numeric && o.push("-n"), i.timeout && (o = o.concat(["-w", n.format("%d", i.timeout)])), i.min_reply && (o = o.concat(["-c", n.format("%d", i.min_reply)])), i.extra && (o = o.concat(i.extra)), o.push(e), o
    }, e.exports = o
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = {}, r = {numeric: !0, timeout: 2, min_reply: 1, extra: []};
    o.getResult = function (e, t) {
        var i = t || {}, o = [];
        return ["numeric", "timeout", "min_reply", "extra"].forEach(function (e) {
            "boolean" != typeof i[e] && (i[e] = i[e] || r[e])
        }), i.numeric && o.push("-n"), i.timeout && (o = o.concat(["-t", n.format("%d", i.timeout)])), i.min_reply && (o = o.concat(["-c", n.format("%d", i.min_reply)])), i.extra && (o = o.concat(i.extra)), o.push(e), o
    }, e.exports = o
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = {}, r = {numeric: !0, timeout: 5, min_reply: 1, extra: []};
    o.getResult = function (e, t) {
        var i = t || {}, o = [];
        return ["numeric", "timeout", "min_reply", "extra"].forEach(function (e) {
            "boolean" != typeof i[e] && (i[e] = i[e] || r[e])
        }), i.numeric || o.push("-a"), i.timeout && (o = o.concat(["-w", n.format("%d", 1e3 * i.timeout)])), i.min_reply && (o = o.concat(["-n", n.format("%d", i.min_reply)])), i.extra && (o = o.concat(i.extra)), o.push(e), o
    }, e.exports = o
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(650), r = i(815), s = i(651), a = i(816);

    function l() {
    }

    l.createParser = function (e) {
        if (!o.isPlatformSupport(e)) throw new Error(n.format("Platform |%s| is not support", e));
        var t = null;
        return o.isWindow(e) ? t = new r : o.isMacOS(e) ? t = new s : o.isLinux(e) && (t = new a), t
    }, e.exports = l
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(204), r = i(526);

    function s() {
        r.call(this), this._ipv4Regex = /^([0-9]{1,3}\.){3}[0-9]{1,3}$/
    }

    n.inherits(s, r), s.prototype._processHeader = function (e) {
        var t = e.split(" ");
        this._response.host = t[1], this._ipv4Regex.test(this._response.host) ? this._response.numeric_host = t[1] : this._response.numeric_host = t[2].slice(1, -1), this._changeState(this.STATES.BODY)
    }, s.prototype._processBody = function (e) {
        var t = e.split(" "), i = o.filter(t, function (e) {
            return e.indexOf("=") >= 0 || e.indexOf("<") >= 0
        });
        if (i.length >= 3) {
            var n = o.find(i, function (e) {
                return e.indexOf("ms") >= 0
            }), r = /([0-9\.]+)/.exec(n);
            this._times.push(parseFloat(r[1], 10))
        }
        ":" === e.slice(-1) && this._changeState(this.STATES.FOOTER)
    }, s.prototype._processFooter = function (e) {
        if (e.indexOf("ms") >= 0) {
            var t = /([0-9\.]+)/g, i = t.exec(e), n = t.exec(e), r = t.exec(e);
            o.all([i, n, r]) && (this._response.min = parseFloat(i[1], 10), this._response.max = parseFloat(n[1], 10), this._response.avg = parseFloat(r[1], 10), this._changeState(this.STATES.END))
        }
    }, e.exports = s
}, function (e, t, i) {
    "use strict";
    var n = i(6), o = i(526), r = i(651);

    function s() {
        o.call(this)
    }

    n.inherits(s, o), s.prototype._processHeader = function (e) {
        var t = e.split(" ");
        this._response.host = t[1], this._response.numeric_host = t[2].slice(1, -1), this._changeState(this.STATES.BODY)
    }, s.prototype._processBody = function (e) {
        r.prototype._processBody.call(this, e)
    }, s.prototype._processFooter = function (e) {
        r.prototype._processFooter.call(this, e)
    }, e.exports = s
}, function (e, t, i) {
    "use strict";
    var n = i(1073);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(574), o = i(388);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\custom-task-filter.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(575), o = i(390);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(821);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\create-big-file.vue", t.default = a.exports
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t, i) {
    "use strict";
    var n = i(1075);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(576), o = i(392);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(823);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\img-dlg.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1077);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(577), o = i(394);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(825), i(527), i(209), i(652), i(826), i(827);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\copy-link-share.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1079);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1087);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1089);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(578), o = i(396);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(200), i(527);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\favorites.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(579), o = i(398);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(830);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, "12995ddd", null);
    a.options.__file = "src\\message-box-renderer\\views\\http-auth-login.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1094);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(580), o = i(400);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\shoulei-sync-guide.vue", t.default = a.exports
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t) {
    e.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABDCAYAAAALU4KYAAAABHNCSVQICAgIfAhkiAAABw9JREFUeF7tnElwFFUYx/9fzySzZSUY9m2QRbaERaDUg0Io0j2JckELF8SDLHoxHAStwoNSxXIgnATRA+JCWVwUawYoIsVBS4QghE0WCXswMTF7pmeS6Wf1DAnpmQmQ6ZmeV8l0VVcnPe997/v/+v/165p+CaGPbX7xhRUmUp4TSCgwE5tGoLy+2g7E84qChgCxiwEFVQro95OHZ+yPppPCT84puvqMzezfbxZQMBDBxKqpS0GVtyt9xZ8Vk//qHUMDcH7xufXpgmkzAbZYBxrI/RjglQPs48ojM3Z26+wBOG/phQ+tJmwbyADipU0OYEPlkRnb1XhBgLPFi9OsRKeJYI3XIAM5DmOQZcbmnjk0/RIBTJgvXjxtIiocyKLjra2L4cypQ9PmUcHSyy9ZTcqxeA8wGOLJAWERFSy9tMliwqeDQXC8NfoC+IQKiy8dNQtUFO/ggyFel8LcNEe8XE9gg+ohOV4XVwFqaLZ0mcUr4GCMQ4ViCqCeC0+zpCspB+ogSDNTAHXgA2i6eDXlQB0IaZrEL8CR+eagtJq6Lh0SE9uVporXuHTgR6uHYuWynKD6fT82Ycue+sSSiDE6TeEU4KkDTmQ6hKCsljYF81+tjlFiYrvRJOlvLh141T1Ro3yy63piScQYnZ4W+QR4zaMFOEniFKCz+DqXDrx+yKnxxESR0xKeIPEJsNqtBeh0cQpwnHiDSwfe9IzXOHC8dDPGu1Riu9FYsZpLgLc8EzTKx0k3Eksixug0mlMH3glz4BheHThKvMmlA+96xmk8MVq6FaNHEtuNRki3uARY4x6rUT7SdTuxJGKMTsNFPgHe92gBjpA4BZhffJtLB9YeGqPxxDDxToweSWw3ekriE2CdWwsw38UpwDzxLpcOrPeM0lhnqHQvsVaKMToNke5wCbDBPVojKc91N0aJie1GOQY6MNtBWPtKBn4778ev532PVNYY5sDcxzjwhZkWPD8zHbt/akNzu3GeoGzxnmGjnds7DGPzTUFw7+1owvcVHX1CbPKM1HyWI9X02fb1Ijs+Xx/68vVWbQAF79Qm1na9olOmVGMIQNdCK/ZvytUIW1fehO8qvFHFtrhHaM5nue5HbfdGkQ27ykLwurcVnzXCfUI2BCJliPcNAaiW78W9+VCPvbe1O5qjQmz1DNe0y5T+iQCiwtu9PltzXi3f6avqDCtjshsEUFU5y2nG4W15ERDX7GjGt2FObA8D6AgD+P4yO7avzoqAV7yhAeeqjXsJRTbJGAd2K1UhHtkaCfGbCi/WlDf3AOlwax1odz104J6ybLxZpF2FrDpv6UZj4anJkkWqNaSEe1tFhXh0a26EE/dVyFhd3hJsKrvzNe6yuuqCv39ZloW3irQLaVV4SzY2Guq87uQoXTQeYHc5V2yLAvGojHfLW+DzaAFapDp8tT46vKINyYEXdKBZ/NdwB3ZfvQKnCb9sy4lw4tdHfXh7iUXjwH0VPqws0p5Tnbd4QxOqqgOGzLjRBiFTEgGqCakQj0WB2OZlyLCFZux2GXCELX9X4S1KMrygA0mqT5oDezvx+NbsCCf6H0ym6aEVHj2bCu/Fjc1JdV7PPRBSQ9IBqskUOk04vjUrAmJ42YTgteBsEsu2d04E6T8uAD6EmNknxBC8Vm7gBUuYJ4CPgsgjvBBAVyM3DuwujcIJajln9DgxBK8NZ28kb7bta5onuJq4A6gmm+Mg7C2zB/NeVd6BJgO/ourPMxHB1cwlwP6ISGbbFECd9AklLSkH6oBIKGlNAdQHsC0FMAVQBwGdXQmlnD4f6BRmVHdCaUeqhHXQJpR6UwB1ASzxngDRAh0xBm9Xxv4glMq7QVjDAwWTAAjqTvTgGMpKYYCiqEcWPAYUHrIFwPAFocS/FgLbZVRKaWbAmkawpQuwWgi2NAoezaEFC0+8dQUA2cfg7WSQ/QxenwK5k6HTuDeagELrCKVsKKhT/RuCzCfO/gkbqo5yWCm0WwQ4bP0H9YRD9TRTwbbLDO1eBe0+Fvw5QY5tBUtzhl46lPo/AFF5f5Pt3Z4IsFsouKugHBaCNV1PxPj1lf0PoKpgZQavn4HpnToZK8PP6TtDAJczE3ydF0A0NZa0VXi5GYShWQIyH7wIiiWOEX1avQz1zQoa23VAZKiExbwQByjwcKFKSedimKiiPyJsFgSh5WUQTP28h/VnnES0DQSAhjaG+hYF3kevtIscnpmexUGqVD/QrvR5mU0BlB9Aj/7Xdw4LMDxXQLZDfa2XCHnGxVRLuakdqG1U75mPGZehChBew0G60t0yUv5cloZR2AhimwCk9Q6ZaQNGDCGox4G4tXYA9xsZWiNX3HUCtBl3sQWnqVNz7+8TxHJmgwwnBDiz7FiQZUdhmhmOgQguXFOXH62NHTjX5sVJBFANO67jAEVdyPg/KEV5yF6ISZwAAAAASUVORK5CYII="
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t) {
    e.exports = "data:image/gif;base64, "
}, function (e, t) {
    e.exports = "data:image/gif;base64, "
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(581), o = i(402);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\shoulei-file-transfer.vue", t.default = a.exports
}, function (e, t) {
    e.exports = "data:image/jpeg;base64, "
}, function (e, t, i) {
    "use strict";
    var n = this && this.__awaiter || function (e, t, i, n) {
        return new (i || (i = Promise))(function (o, r) {
            function s(e) {
                try {
                    l(n.next(e))
                } catch (e) {
                    r(e)
                }
            }

            function a(e) {
                try {
                    l(n.throw(e))
                } catch (e) {
                    r(e)
                }
            }

            function l(e) {
                e.done ? o(e.value) : new i(function (t) {
                    t(e.value)
                }).then(s, a)
            }

            l((n = n.apply(e, t || [])).next())
        })
    };
    Object.defineProperty(t, "__esModule", {value: !0});
    const o = i(2), r = i(38), s = i(648), a = i(17), l = i(138), c = i(1).default.getLogger("ShouleiInstallImg"),
        u = "http://static-xl.a.88cdn.com/json/mobile-pc.json";
    let d = "";
    t.getMobileImgSrc = function () {
        return n(this, void 0, void 0, function* () {
            let e = "";
            do {
                let t = null;
                try {
                    r.default.defaults.adapter = i(25), t = yield r.default.get(u)
                } catch (e) {
                    c.warning(e)
                }
                let n = "";
                if (null !== t && void 0 !== t.status && 200 === t.status && void 0 !== t.data && null !== t.data && t.data.downloadQR && (n = t.data.downloadQR), !n) break;
                let h = l.ParseUrlFileNameNS.getNameFromUrl(n);
                if (!h) break;
                let p = o.resolve(__profilesDir, `mobile/${h}`);
                if (p === d && (yield a.FileSystemAWNS.existsAW(p))) {
                    e = p;
                    break
                }
                c.information("downloadFileAW", n, p), (yield s.AxiosNS.downloadFileAW(n, p)) && (d = p, e = p)
            } while (0);
            return e
        })
    }
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(582), o = i(404);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\custom-download-mode.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(583), o = i(406);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(842);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\imgViewer.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";
    var n = i(1096);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(584), o = i(408);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(847);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, null, null);
    a.options.__file = "src\\message-box-renderer\\views\\scancode-help.vue", t.default = a.exports
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t) {
    e.exports = "data:image/png;base64, "
}, function (e, t, i) {
    "use strict";
    var n = i(1098);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    i.r(t);
    var n = i(585), o = i(410);
    for (var r in o) "default" !== r && function (e) {
        i.d(t, e, function () {
            return o[e]
        })
    }(r);
    i(850);
    var s = i(0), a = Object(s.a)(o.default, n.a, n.b, !1, null, "7d63a43a", null);
    a.options.__file = "src\\message-box-renderer\\views\\phone-auth.vue", t.default = a.exports
}, function (e, t, i) {
    "use strict";

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

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

    function r(e, t, i) {
        e.addEventListener ? e.addEventListener(t, i) : e.attachEvent("on" + t, function (t) {
            i.call(e, t)
        })
    }

    function s(e) {
        return "undefined" == typeof window || /http/.test(window.location.protocol) ? e : "https:" + e
    }

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

    function c() {
        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
        return o("sessionid") || e.sessionid ? a.getModulesConfig().then(function (t) {
            return !!t.real_name.enable && a.isAuth(e)
        }).then(function (e) {
            if ("boolean" == typeof e) return !1;
            if ("ISAUTH" === e.result || "NOAUTH" === e.result) return "NOAUTH" === e.result;
            throw new Error(JSON.stringify(e))
        }) : Promise.reject(new Error("not login"))
    }

    function u(e) {
        var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, i = arguments[2],
            n = s("//pc.xunlei.com/auth");
        return e && (n += /\?/.test(n) ? "&entrypage=" + e : "?entrypage=" + e), i && (n += /\?/.test(n) ? "&from=" + i : "?from=" + i), new Promise(function (e, i) {
            c(t).then(function (o) {
                if (!o) return e();
                !function (e, t) {
                    var i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};
                    if ("function" == typeof e) try {
                        var n = null;
                        document.getElementById("authIframe") ? (n = document.getElementById("authIframe")).style.display = "block" : ((n = document.createElement("iframe")).src = t, 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), r(n, "load", function (e) {
                            n.contentWindow.postMessage(JSON.stringify(i), "*")
                        }), r(window, "message", function (t) {
                            try {
                                var i = JSON.parse(t.data);
                                "auth" === i.from && "close" === i.event && (n.style.display = "none", e(null, i.code))
                            } catch (e) {
                            }
                        }))
                    } catch (t) {
                        e(t)
                    }
                }(function (t, n) {
                    if (t) return i(new Error("version too low"));
                    n === l ? e() : i(new Error("auth error"))
                }, n, t)
            }).catch(i)
        })
    }

    "undefined" != typeof document && /xunlei\.com/.test(location.host) && (document.domain = "xunlei.com")
}, function (e, t, i) {
    "use strict";
    var n = i(1100);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1102);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1104);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1110);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1112);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1114);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1116);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1118);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1120);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1122);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1124);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1126);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1128);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1130);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1133);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1135);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1137);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1139);
    i.n(n).a
}, function (e, t, i) {
    "use strict";
    var n = i(1143);
    i.n(n).a
}, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , function (e, t) {
}, , function (e, t) {
}, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , , , function (e, t) {
}, , , , function (e, t) {
}, , function (e, t) {
}, , , function (e, t) {
}, , , , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , , , , , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , function (e, t) {
}, , , , function (e, t) {
}]);
/*! Thunder 11 BY LUOCHENZHIMU */
/*! Last updated on 2020/12/27 */
/*! https://www.luochenzhimu.com */