@whyour/qinglong 2.19.0-7 → 2.19.0-9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whyour/qinglong",
3
- "version": "2.19.0-7",
3
+ "version": "2.19.0-9",
4
4
  "description": "Timed task management platform supporting Python3, JavaScript, Shell, Typescript",
5
5
  "repository": {
6
6
  "type": "git",
package/shell/start.sh CHANGED
@@ -34,40 +34,36 @@ fi
34
34
 
35
35
  command="$1"
36
36
 
37
- if [[ $command == "reload" ]]; then
38
- mkdir -p /run/nginx
39
- nginx -s reload 2>/dev/null || nginx -c /etc/nginx/nginx.conf
40
- exit 1
41
- fi
37
+ if [[ $command != "reload" ]]; then
38
+ # 安装依赖
39
+ os_name=$(source /etc/os-release && echo "$ID")
40
+
41
+ if [[ $os_name == 'alpine' ]]; then
42
+ apk update
43
+ apk add -f bash \
44
+ coreutils \
45
+ git \
46
+ curl \
47
+ wget \
48
+ tzdata \
49
+ perl \
50
+ openssl \
51
+ jq \
52
+ nginx \
53
+ openssh \
54
+ procps \
55
+ netcat-openbsd
56
+ elif [[ $os_name == 'debian' ]] || [[ $os_name == 'ubuntu' ]]; then
57
+ apt-get update
58
+ apt-get install -y git curl wget tzdata perl openssl jq nginx procps netcat-openbsd openssh-client
59
+ else
60
+ echo -e "暂不支持此系统部署 $os_name"
61
+ exit 1
62
+ fi
42
63
 
43
- # 安装依赖
44
- os_name=$(source /etc/os-release && echo "$ID")
45
-
46
- if [[ $os_name == 'alpine' ]]; then
47
- apk update
48
- apk add -f bash \
49
- coreutils \
50
- git \
51
- curl \
52
- wget \
53
- tzdata \
54
- perl \
55
- openssl \
56
- jq \
57
- nginx \
58
- openssh \
59
- procps \
60
- netcat-openbsd
61
- elif [[ $os_name == 'debian' ]] || [[ $os_name == 'ubuntu' ]]; then
62
- apt-get update
63
- apt-get install -y git curl wget tzdata perl openssl jq nginx procps netcat-openbsd openssh-client
64
- else
65
- echo -e "暂不支持此系统部署 $os_name"
66
- exit 1
64
+ npm install -g pnpm@8.3.1 pm2 ts-node
67
65
  fi
68
66
 
69
- npm install -g pnpm@8.3.1 pm2 ts-node
70
-
71
67
  export PYTHON_SHORT_VERSION=$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')
72
68
  export PNPM_HOME=${QL_DIR}/data/dep_cache/node
73
69
  export PYTHON_HOME=${QL_DIR}/data/dep_cache/python3
@@ -78,7 +74,9 @@ export NODE_PATH=/usr/local/bin:/usr/local/lib/node_modules:${PNPM_HOME}/global/
78
74
  export PIP_CACHE_DIR=${PYTHON_HOME}/pip
79
75
  export PYTHONPATH=${PYTHON_HOME}:${PYTHON_HOME}/lib/python${PYTHON_SHORT_VERSION}:${PYTHON_HOME}/lib/python${PYTHON_SHORT_VERSION}/site-packages
80
76
 
81
- pip3 install --prefix ${PYTHON_HOME} requests
77
+ if [[ $command != "reload" ]]; then
78
+ pip3 install --prefix ${PYTHON_HOME} requests
79
+ fi
82
80
 
83
81
  cd ${QL_DIR}
84
82
  cp -f .env.example .env
@@ -107,20 +105,22 @@ pm2 l &>/dev/null
107
105
  log_with_style "INFO" "🔄 2. 启动 nginx..."
108
106
  nginx -s reload 2>/dev/null || nginx -c /etc/nginx/nginx.conf
109
107
 
110
- log_with_style "INFO" "⚙️ 3. 启动 pm2 服务...\n"
108
+ log_with_style "INFO" "⚙️ 3. 启动 pm2 服务..."
111
109
  reload_pm2
112
110
 
113
- if [[ $AutoStartBot == true ]]; then
114
- log_with_style "INFO" "🤖 4. 启动 bot..."
115
- nohup ql bot >$dir_log/bot.log 2>&1 &
116
- fi
111
+ if [[ $command != "reload" ]]; then
112
+ if [[ $AutoStartBot == true ]]; then
113
+ log_with_style "INFO" "🤖 4. 启动 bot..."
114
+ nohup ql bot >$dir_log/bot.log 2>&1 &
115
+ fi
117
116
 
118
- if [[ $EnableExtraShell == true ]]; then
119
- log_with_style "INFO" "🛠️ 5. 执行自定义脚本..."
120
- nohup ql extra >$dir_log/extra.log 2>&1 &
121
- fi
117
+ if [[ $EnableExtraShell == true ]]; then
118
+ log_with_style "INFO" "🛠️ 5. 执行自定义脚本..."
119
+ nohup ql extra >$dir_log/extra.log 2>&1 &
120
+ fi
122
121
 
123
- pm2 startup
124
- pm2 save
122
+ pm2 startup
123
+ pm2 save
124
+ fi
125
125
 
126
- log_with_style "SUCCESS" "🎉 容器启动成功!"
126
+ log_with_style "SUCCESS" "🎉 启动成功!"
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
@@ -12,19 +35,16 @@ const typedi_1 = require("typedi");
12
35
  const config_1 = __importDefault(require("./config"));
13
36
  const logger_1 = __importDefault(require("./loaders/logger"));
14
37
  const monitoring_1 = require("./middlewares/monitoring");
15
- const grpc_1 = require("./services/grpc");
16
- const http_1 = require("./services/http");
17
38
  class Application {
18
39
  constructor() {
19
40
  this.isShuttingDown = false;
20
41
  this.app = (0, express_1.default)();
21
- this.httpServerService = typedi_1.Container.get(http_1.HttpServerService);
22
- this.grpcServerService = typedi_1.Container.get(grpc_1.GrpcServerService);
23
42
  }
24
43
  async start() {
25
44
  var _a;
26
45
  try {
27
46
  await this.initializeDatabase();
47
+ await this.initServer();
28
48
  this.setupMiddlewares();
29
49
  await this.initializeServices();
30
50
  this.setupGracefulShutdown();
@@ -35,6 +55,12 @@ class Application {
35
55
  process.exit(1);
36
56
  }
37
57
  }
58
+ async initServer() {
59
+ const { HttpServerService } = await Promise.resolve().then(() => __importStar(require('./services/http')));
60
+ const { GrpcServerService } = await Promise.resolve().then(() => __importStar(require('./services/grpc')));
61
+ this.httpServerService = typedi_1.Container.get(HttpServerService);
62
+ this.grpcServerService = typedi_1.Container.get(GrpcServerService);
63
+ }
38
64
  async initializeDatabase() {
39
65
  await require('./loaders/db').default();
40
66
  }
@@ -45,21 +71,23 @@ class Application {
45
71
  this.app.use(monitoring_1.monitoringMiddleware);
46
72
  }
47
73
  async initializeServices() {
48
- await this.grpcServerService.initialize();
74
+ var _a, _b;
75
+ await ((_a = this.grpcServerService) === null || _a === void 0 ? void 0 : _a.initialize());
49
76
  await require('./loaders/app').default({ app: this.app });
50
- this.server = await this.httpServerService.initialize(this.app, config_1.default.port);
51
- await require('./loaders/server').default({ server: this.server });
77
+ const server = await ((_b = this.httpServerService) === null || _b === void 0 ? void 0 : _b.initialize(this.app, config_1.default.port));
78
+ await require('./loaders/server').default({ server });
52
79
  }
53
80
  setupGracefulShutdown() {
54
81
  const shutdown = async () => {
82
+ var _a, _b;
55
83
  if (this.isShuttingDown)
56
84
  return;
57
85
  this.isShuttingDown = true;
58
86
  logger_1.default.info('Shutting down services...');
59
87
  try {
60
88
  await Promise.all([
61
- this.grpcServerService.shutdown(),
62
- this.httpServerService.shutdown(),
89
+ (_a = this.grpcServerService) === null || _a === void 0 ? void 0 : _a.shutdown(),
90
+ (_b = this.httpServerService) === null || _b === void 0 ? void 0 : _b.shutdown(),
63
91
  ]);
64
92
  process.exit(0);
65
93
  }
@@ -58,8 +58,11 @@ exports.default = async () => {
58
58
  password: 'admin',
59
59
  };
60
60
  try {
61
- const content = await (0, promises_1.readFile)(config_1.default.authConfigFile, 'utf8');
62
- authInfo = (0, util_1.safeJSONParse)(content);
61
+ const authFileExist = await (0, util_1.fileExist)(config_1.default.authConfigFile);
62
+ if (authFileExist) {
63
+ const content = await (0, promises_1.readFile)(config_1.default.authConfigFile, 'utf8');
64
+ authInfo = (0, util_1.safeJSONParse)(content);
65
+ }
63
66
  }
64
67
  catch (error) {
65
68
  logger_1.default.warn('Failed to read auth config file, using default credentials');
@@ -7,10 +7,10 @@
7
7
  <link rel="shortcut icon" href="https://qn.whyour.cn/favicon.svg">
8
8
  <link rel="stylesheet" href="./umi.a4d14b92.css">
9
9
  <script src="./api/env.js"></script>
10
- <script src="./preload_helper.67e88ed6.js"></script>
10
+ <script src="./preload_helper.6f133e1a.js"></script>
11
11
  </head>
12
12
  <body>
13
13
  <div id="root"></div>
14
- <script src="./umi.b7656bb3.js"></script>
14
+ <script src="./umi.80b4d6a9.js"></script>
15
15
  </body>
16
16
  </html>
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[1717],{44224:function(e,t,n){var i=(0,n(19919).Z)({scriptUrl:["//at.alicdn.com/t/c/font_3354854_lc939gab1iq.js"]});t.Z=i},84903:function(e,t,n){n.r(t),n.d(t,{default:function(){return A}});var i=n(26068),o=n.n(i),a=n(48305),s=n.n(a),r=n(3475),c=n(9364),u=n(16314),l=n(81379),d=n(1371),h=n(5323),p=n(41206),f=n(34014),m=n(99192),g=n(98783),v=n(71571),x=n(65823),k=n(59816),b=n(87893),y=n(85950),Z=n(70892),w=n(75271),j=n(72317),P=n(86563),S=n.n(P),I=n(76991),E=n(44224),q=n(52676),L={route:{routes:[{name:j.ZP.get("登录"),path:"/login",hideInMenu:!0,component:"@/pages/login/index"},{name:j.ZP.get("初始化"),path:"/initialization",hideInMenu:!0,component:"@/pages/initialization/index"},{name:j.ZP.get("错误"),path:"/error",hideInMenu:!0,component:"@/pages/error/index"},{path:"/crontab",name:j.ZP.get("定时任务"),icon:(0,q.jsx)(E.Z,{type:"ql-icon-crontab"}),component:"@/pages/crontab/index"},{path:"/subscription",name:j.ZP.get("订阅管理"),icon:(0,q.jsx)(E.Z,{type:"ql-icon-subs"}),component:"@/pages/subscription/index"},{path:"/env",name:j.ZP.get("环境变量"),icon:(0,q.jsx)(E.Z,{type:"ql-icon-env"}),component:"@/pages/env/index"},{path:"/config",name:j.ZP.get("配置文件"),icon:(0,q.jsx)(E.Z,{type:"ql-icon-config"}),component:"@/pages/config/index"},{path:"/script",name:j.ZP.get("脚本管理"),icon:(0,q.jsx)(E.Z,{type:"ql-icon-script"}),component:"@/pages/script/index"},{path:"/dependence",name:j.ZP.get("依赖管理"),icon:(0,q.jsx)(E.Z,{type:"ql-icon-dependence"}),component:"@/pages/dependence/index"},{path:"/log",name:j.ZP.get("日志管理"),icon:(0,q.jsx)(E.Z,{type:"ql-icon-log"}),component:"@/pages/log/index"},{path:"/diff",name:j.ZP.get("对比工具"),icon:(0,q.jsx)(E.Z,{type:"ql-icon-diff"}),component:"@/pages/diff/index"},{path:"/setting",name:j.ZP.get("系统设置"),icon:(0,q.jsx)(I.Z,{}),component:"@/pages/password/index"}]},navTheme:"light",fixSiderbar:!0,contentWidth:"Fixed",splitMenus:!1,siderWidth:180},C=n(83383);var z=n(65814);function A(){var e=(0,g.useLocation)(),t=(0,c.e)(),n=(0,c.F)(),i=n.theme,a=n.reloadTheme,P=(0,w.useState)({}),I=s()(P,2),E=I[0],A=I[1],M=(0,w.useState)(!0),T=s()(M,2),_=T[0],N=T[1],O=(0,w.useState)(),F=s()(O,2),R=F[0],W=F[1],H=(0,w.useState)(!1),U=s()(H,2),D=U[0],J=U[1],K=(0,w.useState)(!0),B=s()(K,2),Q=B[0],G=B[1],V=v||{},X=V.enable,Y=V.disable,$=(V.exportGeneratedCSS,V.setFetchMethod),ee=V.auto,te=function(){u.W.get("".concat(r.Z.apiPrefix,"system")).then((function(e){var t=e.code,n=e.data;200===t&&(W(n),n.isInitialized?(n.version,C._m.config({paths:{vs:"".concat(r.Z.baseUrl,"monaco-editor/min/vs")},"vs/nls":{availableLanguages:{"*":"zh-cn"}}}),ne()):g.history.push("/initialization"))})).catch((function(e){console.log(e)}))},ne=function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];t&&N(!0),u.W.get("".concat(r.Z.apiPrefix,"user")).then((function(n){var i=n.code,o=n.data;200===i&&o.username&&(A(o),"/"===e.pathname&&g.history.push("/crontab")),t&&N(!1)})).catch((function(e){console.log(e)}))},ie=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];ne(e)};if((0,w.useEffect)((function(){R&&R.isInitialized&&!E&&ne()}),[e.pathname]),(0,w.useEffect)((function(){u.W.get("".concat(r.Z.apiPrefix,"health")).then((function(e){var t;"ok"===(null==e||null===(t=e.data)||void 0===t?void 0:t.status)?te():g.history.push("/error")})).catch((function(e){401!==e.response.status&&g.history.push("/error")})).finally((function(){return G(!1)}))}),[]),(0,w.useEffect)((function(){"vs-dark"===i?document.body.setAttribute("data-dark","true"):document.body.setAttribute("data-dark","false")}),[i]),(0,w.useEffect)((function(){S()();var e=localStorage.getItem("qinglong_dark_theme")||"auto";if("undefined"!=typeof window&&void 0!==window.matchMedia)return v?($(fetch),"dark"===e?X({}):"light"===e?Y():ee({}),function(){Y()}):function(){return null}}),[]),(0,w.useEffect)((function(){if(E&&E.username){var e=z.Z.getInstance("".concat(window.location.origin).concat(r.Z.apiPrefix,"ws?token=").concat(localStorage.getItem(r.Z.authKey)));return function(){e.close()}}}),[E]),(0,w.useEffect)((function(){window.onload=function(){var e=performance.timing;console.log("白屏时间: ".concat(e.responseStart-e.navigationStart)),console.log("请求完毕至DOM加载: ".concat(e.domInteractive-e.responseEnd)),console.log("解释dom树耗时: ".concat(e.domComplete-e.domInteractive)),console.log("从开始至load总耗时: ".concat(e.loadEventEnd-e.navigationStart))}}),[]),Q)return(0,q.jsx)(f.Z,{});if(["/login","/initialization","/error"].includes(e.pathname)&&(null!=R&&R.isInitialized&&"/initialization"===e.pathname&&g.history.push("/crontab"),R||"/error"===e.pathname))return(0,q.jsx)(g.Outlet,{context:o()(o()({},t),{},{theme:i,user:E,reloadUser:ie,reloadTheme:a})});var oe=navigator.userAgent.includes("Firefox"),ae=navigator.userAgent.includes("Safari")&&!navigator.userAgent.includes("Chrome"),se=navigator.userAgent.includes("QQBrowser"),re={items:[{label:j.ZP.get("退出登录"),className:"side-menu-user-drop-menu",onClick:function(){u.W.post("".concat(r.Z.apiPrefix,"user/logout")).then((function(){localStorage.removeItem(r.Z.authKey),g.history.push("/login")}))},key:"logout",icon:(0,q.jsx)(l.Z,{})}]};return _?(0,q.jsx)(f.Z,{}):(0,q.jsx)(m.ZP,o()(o()({selectedKeys:[e.pathname],loading:_,logo:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(x.Z,{preview:!1,src:"https://qn.whyour.cn/logo.png"}),(0,q.jsxs)("div",{className:"title",children:[(0,q.jsx)("span",{className:"title",children:j.ZP.get("青龙")}),(0,q.jsx)("span",{onClick:function(e){e.stopPropagation(),window.open(null==R?void 0:R.changeLogLink,"_blank")},children:(0,q.jsx)(k.Z,{title:"develop"===(null==R?void 0:R.branch)?j.ZP.get("开发版"):j.ZP.get("正式版"),children:(0,q.jsx)(b.Z,{size:"small",dot:"develop"===(null==R?void 0:R.branch),children:(0,q.jsxs)("span",{style:{fontSize:oe?9:12,color:"#666",marginLeft:2,zoom:ae?.66:.8,letterSpacing:se?-2:0},children:["v",null==R?void 0:R.version]})})})})]})]}),title:!1,menuItemRender:function(t,n){return t.isUrl||!t.path||e.pathname===t.path?n:(0,q.jsx)(g.Link,{to:t.path,children:n})},pageTitleRender:function(t,n,i){var o=r.Z.documentTitleMap[e.pathname]||j.ZP.get("未找到");return"".concat(o," - ").concat(j.ZP.get("青龙"))},onCollapse:J,collapsed:D,rightContentRender:function(){return t.isPhone&&(0,q.jsx)(y.Z,{menu:re,placement:"bottomRight",trigger:["click"],children:(0,q.jsxs)("span",{className:"side-menu-user-wrapper",children:[(0,q.jsx)(Z.C,{shape:"square",size:"small",icon:(0,q.jsx)(d.Z,{}),src:E.avatar?"".concat(r.Z.apiPrefix,"static/").concat(E.avatar):""}),(0,q.jsx)("span",{style:{marginLeft:5},children:E.username})]})})},collapsedButtonRender:function(e){return(0,q.jsxs)("span",{className:"side-menu-container",onClick:function(e){e.preventDefault(),e.stopPropagation()},children:[!e&&!t.isPhone&&(0,q.jsx)(y.Z,{menu:re,placement:"topLeft",trigger:["hover"],children:(0,q.jsxs)("span",{className:"side-menu-user-wrapper",children:[(0,q.jsx)(Z.C,{shape:"square",size:"small",icon:(0,q.jsx)(d.Z,{}),src:E.avatar?"".concat(r.Z.apiPrefix,"static/").concat(E.avatar):""}),(0,q.jsx)("span",{style:{marginLeft:5},children:E.username})]})}),(0,q.jsx)("span",{className:"side-menu-collapse-button",onClick:function(){return J(!e)},children:e?(0,q.jsx)(h.Z,{}):(0,q.jsx)(p.Z,{})})]})}},L),{},{children:(0,q.jsx)(g.Outlet,{context:o()(o()({},t),{},{theme:i,user:E,reloadUser:ie,reloadTheme:a,systemInfo:R})})}))}},9364:function(e,t,n){n.d(t,{F:function(){return c},e:function(){return r}});var i=n(48305),o=n.n(i),a=n(75271),s=n(48916),r=function(){var e=(0,a.useState)("100%"),t=o()(e,2),n=t[0],i=t[1],r=(0,a.useState)(0),c=o()(r,2),u=c[0],l=c[1],d=(0,a.useState)(-48),h=o()(d,2),p=h[0],f=h[1],m=(0,a.useState)(!1),g=o()(m,2),v=g[0],x=g[1],k=(0,a.useMemo)((function(){return(0,s.ZP)()}),[]).platform;return(0,a.useEffect)((function(){"mobile"===k&&document.body.offsetWidth<768?(i("auto"),l(0),f(0),x(!0),document.body.setAttribute("data-mode","phone")):(i("100%"),l(0),f(-48),x(!1),document.body.setAttribute("data-mode","desktop"))}),[]),{headerStyle:{padding:"4px 16px 4px 15px",position:"sticky",top:0,left:0,zIndex:20,marginTop:p,width:n,marginLeft:u},isPhone:v}},c=function(){var e=(0,a.useState)(),t=o()(e,2),n=t[0],i=t[1];return(0,a.useEffect)((function(){var e=window.matchMedia("(prefers-color-scheme: dark)"),t=localStorage.getItem("qinglong_dark_theme"),n=e.matches&&"light"!==t||"dark"===t;i(n?"vs-dark":"vs");var o=function(e){"auto"!==t&&t||(e.matches?i("vs-dark"):i("vs"))};"function"==typeof e.addEventListener?e.addEventListener("change",o):"function"==typeof e.addListener&&e.addListener(o)}),[]),{theme:n,reloadTheme:function(){var e=window.matchMedia("(prefers-color-scheme: dark)"),t=localStorage.getItem("qinglong_dark_theme"),n=e.matches&&"light"!==t||"dark"===t;i(n?"vs-dark":"vs")}}}},65814:function(e,t,n){var i=n(15558),o=n.n(i),a=n(67825),s=n.n(a),r=n(90228),c=n.n(r),u=n(87999),l=n.n(u),d=n(25298),h=n.n(d),p=n(17069),f=n.n(p),m=n(82092),g=n.n(m),v=n(78078),x=n.n(v),k=["type"],b=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};h()(this,e),g()(this,"url",void 0),g()(this,"socket",null),g()(this,"subscriptions",new Map),g()(this,"options",void 0),g()(this,"reconnectAttempts",0),g()(this,"heartbeatTimeout",null),g()(this,"state","closed"),this.url=t,this.options={maxReconnectAttempts:n.maxReconnectAttempts||5,reconnectInterval:n.reconnectInterval||3e3,heartbeatInterval:n.heartbeatInterval||3e4},this.init()}var t,n;return f()(e,[{key:"init",value:(n=l()(c()().mark((function e(){var t=this;return c()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:e.prev=0,this.state="connecting",this.emit("connecting");case 3:if(!(this.reconnectAttempts<this.options.maxReconnectAttempts)){e.next=16;break}return this.socket=new(x())(this.url),this.setupEventListeners(),this.startHeartbeat(),e.next=9,this.waitForClose();case 9:return this.stopHeartbeat(),this.socket=null,this.reconnectAttempts++,e.next=14,new Promise((function(e){return setTimeout(e,t.options.reconnectInterval)}));case 14:e.next=3;break;case 16:e.next=21;break;case 18:e.prev=18,e.t0=e.catch(0),this.handleError(e.t0);case 21:case"end":return e.stop()}}),e,this,[[0,18]])}))),function(){return n.apply(this,arguments)})},{key:"setupEventListeners",value:function(){var e=this;this.socket&&(this.socket.onopen=function(){e.state="open",e.emit("open")},this.socket.onmessage=function(t){var n=JSON.parse(t.data);e.dispatchMessage(n)},this.socket.onclose=function(){e.state="closed",e.emit("close")})}},{key:"waitForClose",value:(t=l()(c()().mark((function e(){var t;return c()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((null===(t=this.socket)||void 0===t?void 0:t.readyState)===x().CLOSED){e.next=5;break}return e.next=3,new Promise((function(e){return setTimeout(e,100)}));case 3:e.next=0;break;case 5:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"subscribe",value:function(e,t){var n=this.subscriptions.get(e)||new Set;if(!n.has(t)){n.add(t),this.subscriptions.set(e,n);var i={action:"subscribe",topic:e};this.send(i)}}},{key:"unsubscribe",value:function(e,t){var n=this.subscriptions.get(e)||new Set;if(n.has(t)){n.delete(t);var i={action:"unsubscribe",topic:e};this.send(i)}}},{key:"send",value:function(e){var t;(null===(t=this.socket)||void 0===t?void 0:t.readyState)===x().OPEN&&this.socket.send(JSON.stringify(e))}},{key:"dispatchMessage",value:function(e){var t=e.type,n=s()(e,k),i=this.subscriptions.get(t)||new Set;o()(i).forEach((function(e){return e(n)}))}},{key:"startHeartbeat",value:function(){var e=this;this.heartbeatTimeout=setInterval((function(){var t;(null===(t=e.socket)||void 0===t?void 0:t.readyState)===x().OPEN&&e.socket.send(JSON.stringify({type:"heartbeat"}))}),this.options.heartbeatInterval)}},{key:"stopHeartbeat",value:function(){this.heartbeatTimeout&&clearInterval(this.heartbeatTimeout)}},{key:"close",value:function(){this.socket&&(this.state="closed",this.stopHeartbeat(),this.socket.close(),this.emit("close"))}},{key:"handleError",value:function(e){console.error("WebSocket错误:",e),this.emit("error",e)}},{key:"on",value:function(e,t){}},{key:"emit",value:function(e,t){}}],[{key:"getInstance",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",n=arguments.length>1?arguments[1]:void 0;return e.instance||(e.instance=new e(t,n)),e.instance}}]),e}();g()(b,"instance",null),t.Z=b}}]);
@@ -1 +1 @@
1
- !function(){"use strict";var t="/".replace(/([^/])$/,"$1/"),e=location.pathname,n=e.startsWith(t)&&decodeURI("/".concat(e.slice(t.length)));if(n){var a=document,c=a.head,r=a.createElement.bind(a),i=function(t,e,n){var a,c=e.r[t]||(null===(a=Object.entries(e.r).find((function(e){var n=e[0];return new RegExp("^".concat(n.replace(/\/:[^/]+/g,"/[^/]+").replace("/*","/.+"),"$")).test(t)})))||void 0===a?void 0:a[1]);return null==c?void 0:c.map((function(t){var a=e.f[t][1],c=e.f[t][0];return{type:c.split(".").pop(),url:"".concat(n.publicPath).concat(c),attrs:[["data-".concat(e.b),"".concat(e.p,":").concat(a)]]}}))}(n,{"p":"@whyour/qinglong","b":"webpack","f":[["src__pages__subscription__modal.46a69195.async.js",73],["119.89e2d610.async.js",119],["src__pages__setting__about.e6db5090.chunk.css",154],["src__pages__setting__about.3d3c019f.async.js",154],["src__pages__env__modal.7d952f26.async.js",222],["255.12f03ab2.async.js",255],["src__pages__crontab__viewManageModal.c4bfd6a2.async.js",349],["src__pages__script__setting.dcdd7253.async.js",440],["src__pages__subscription__logModal.9bf0b4f6.async.js",578],["691.187a388c.async.js",691],["src__pages__dependence__modal.7f588c0b.async.js",803],["874.ae8edb1a.async.js",874],["1352.ab6da08e.async.js",1352],["src__pages__dependence__logModal.f123e2ac.async.js",1406],["src__pages__initialization__index.66819338.chunk.css",1554],["src__pages__initialization__index.5bd471c5.async.js",1554],["1571.94ddca13.async.js",1571],["layouts__index.1fce90e0.chunk.css",1717],["layouts__index.6e23431c.async.js",1717],["1742.6cbe5aca.async.js",1742],["1765.d8e002d7.async.js",1765],["1883.675b6a18.chunk.css",1883],["1885.e0d00d2d.async.js",1885],["2096.383c1047.async.js",2096],["2208.98ccac5f.async.js",2208],["src__pages__setting__appModal.25adf30e.async.js",2313],["2325.dfa32834.async.js",2325],["2338.d678967d.async.js",2338],["src__pages__setting__index.7cf46d4a.chunk.css",2340],["src__pages__setting__index.3b426f9f.async.js",2340],["2821.be3dc88e.async.js",2821],["2890.9e373f5b.async.js",2890],["src__pages__script__components__UnsupportedFilePreview__index.d50aeff1.chunk.css",2892],["src__pages__script__components__UnsupportedFilePreview__index.39074c68.async.js",2892],["3191.f56b00f8.async.js",3191],["src__pages__error__index.b047bb77.chunk.css",3217],["src__pages__error__index.837f4753.async.js",3217],["src__pages__crontab__logModal.0767c532.async.js",3249],["src__pages__setting__progress.8823ac90.async.js",3308],["3382.a584a111.async.js",3382],["3383.041eee73.async.js",3383],["3390.fb4b6851.async.js",3390],["3481.333c2962.async.js",3481],["3600.7637c822.async.js",3600],["src__pages__setting__checkUpdate.c152dfaf.async.js",3830],["4046.7fbcfa02.async.js",4046],["src__pages__env__editNameModal.411043e2.async.js",4216],["src__pages__crontab__viewCreateModal.ffcf7a24.async.js",4453],["src__pages__crontab__index.5bbea517.chunk.css",4473],["src__pages__crontab__index.d6d37f6a.async.js",4473],["src__pages__crontab__const.323d5124.async.js",4555],["src__pages__404.771168fc.async.js",4650],["4859.1b962b29.chunk.css",4859],["4859.93e63ea6.async.js",4859],["4902.54ecbdb5.async.js",4902],["4934.1ca6b6b0.async.js",4934],["5312.74b95311.async.js",5312],["5481.624d0e07.async.js",5481],["5520.ff2cfd6b.async.js",5520],["src__pages__setting__security.7c80dd0f.chunk.css",5530],["src__pages__setting__security.7623a492.async.js",5530],["src__pages__script__editModal.10dd9857.async.js",5586],["src__pages__setting__loginLog.cea6056c.async.js",5722],["src__pages__crontab__type.db7c1858.async.js",5812],["src__pages__config__index.622b6ee8.async.js",5825],["5970.10ac4f16.async.js",5970],["6013.2d7bb12a.async.js",6013],["6016.9c379049.async.js",6016],["6035.5889ddc7.async.js",6035],["6159.55cb068a.async.js",6159],["6341.673fb65c.async.js",6341],["src__pages__diff__index.16e53710.chunk.css",6401],["src__pages__diff__index.013b7c75.async.js",6401],["6439.7ef6c5e3.async.js",6439],["src__pages__setting__other.28ecea01.chunk.css",6465],["src__pages__setting__other.45f67bd2.async.js",6465],["src__pages__script__index.60b6f827.chunk.css",6534],["src__pages__script__index.53f99bee.async.js",6534],["6646.5fc37228.async.js",6646],["6707.801b886b.async.js",6707],["6872.42f939f1.async.js",6872],["src__pages__setting__dependence.28ecea01.chunk.css",6877],["src__pages__setting__dependence.95dd01e7.async.js",6877],["src__pages__script__editNameModal.32bb2f80.async.js",7158],["src__pages__setting__notification.989e57d6.async.js",7213],["src__pages__dependence__type.e48c5c88.async.js",7243],["7253.4b9bf133.async.js",7253],["7285.d561cf26.async.js",7285],["7355.5e5e573b.async.js",7355],["7384.065ccae2.async.js",7384],["7508.3fffed15.chunk.css",7508],["7508.a31662a3.async.js",7508],["7528.d8b76d8a.async.js",7528],["7802.6b73f16a.async.js",7802],["src__pages__subscription__index.4b5150de.chunk.css",7953],["src__pages__subscription__index.850531a4.async.js",7953],["7984.e6bb9378.async.js",7984],["8060.8b699029.async.js",8060],["8078.8586c875.async.js",8078],["src__pages__env__index.77923857.chunk.css",8247],["src__pages__env__index.5a863036.async.js",8247],["8317.c44c1ebd.async.js",8317],["src__pages__crontab__modal.dcd053b5.async.js",8393],["src__pages__setting__systemLog.2e8cc7a0.async.js",8490],["src__pages__script__saveModal.8e358e84.async.js",8673],["8826.faecf076.async.js",8826],["8851.cf7e0ebc.async.js",8851],["8982.d2dba153.async.js",8982],["src__pages__script__renameModal.8232c924.async.js",9064],["9066.605168f8.async.js",9066],["9313.37acaf13.async.js",9313],["src__pages__crontab__detail.ebbb4abf.async.js",9558],["9730.30083c91.async.js",9730],["9761.627ca3b5.async.js",9761],["src__pages__log__index.9f2eae80.chunk.css",9818],["src__pages__log__index.cf00c9af.async.js",9818],["src__pages__dependence__index.ef46db37.chunk.css",9914],["src__pages__dependence__index.c31e50f0.async.js",9914],["src__pages__login__index.d00b91e8.chunk.css",9939],["src__pages__login__index.cd6e3152.async.js",9939]],"r":{"/*":[5,9,20,30,42,43,51,65,1,16,17,18,21,40,41,45,89,98,101,106,109,110],"/":[1,5,16,17,18,20,21,30,40,41,42,43,45,89,98,101,106,109,110],"/initialization":[5,9,14,15,20,27,30,42,65,66,67,87,110,1,16,17,18,21,40,41,43,45,89,98,101,106,109],"/subscription":[1,5,9,20,21,22,26,27,30,34,42,45,58,65,66,68,70,78,87,88,89,90,91,94,95,97,98,106,109,110,112,16,17,18,40,41,43,101],"/dependence":[1,5,9,20,21,22,26,27,30,42,58,65,66,68,70,86,87,88,89,90,91,93,97,98,105,109,110,112,116,117,16,17,18,40,41,43,45,101,106],"/crontab":[1,5,9,11,12,20,21,22,26,27,30,31,40,42,45,48,49,58,65,66,68,69,70,73,86,87,88,89,90,91,97,107,109,110,112,16,17,18,41,43,98,101,106],"/setting":[1,5,9,12,16,19,20,21,22,26,27,28,29,30,31,42,45,54,57,58,65,66,67,68,70,80,87,88,89,90,91,96,97,98,109,110,112,113,17,18,40,41,43,101,106],"/config":[1,5,19,20,21,22,30,40,42,45,55,56,64,66,68,89,90,91,106,110,16,17,18,41,43,98,101,109],"/script":[1,5,9,19,20,21,22,27,30,39,40,42,45,52,53,55,56,58,65,66,67,68,70,76,77,87,89,90,91,97,98,109,110,112,113,16,17,18,41,43,101,106],"/error":[5,9,20,30,35,36,65,110,1,16,17,18,21,40,41,42,43,45,89,98,101,106,109],"/login":[5,20,27,30,31,42,45,65,87,106,110,118,119,1,16,17,18,21,40,41,43,89,98,101,109],"/diff":[1,5,20,21,27,30,40,42,45,66,68,71,72,79,89,90,91,106,110,16,17,18,41,43,98,101,109],"/env":[1,5,9,11,20,21,22,26,27,30,42,45,58,65,66,67,68,70,86,87,88,89,90,91,92,99,100,106,109,110,112,113,16,17,18,40,41,43,98,101],"/log":[1,5,9,19,20,21,22,30,39,40,42,45,55,58,65,66,68,70,87,89,90,91,106,109,110,112,114,115,16,17,18,41,43,98,101],"/crontab/viewCreateModal":[5,12,20,24,27,30,42,47,58,65,66,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/crontab/viewManageModal":[1,5,6,9,11,12,20,22,24,26,27,30,42,58,65,66,70,86,87,88,89,109,110,112,16,17,18,21,40,41,43,45,98,101,106],"/subscription/logModal":[8,30,42,45,58,97,106,109,110,1,5,16,17,18,20,21,40,41,43,89,98,101],"/script/editNameModal":[5,20,22,23,27,30,42,55,58,65,66,67,83,87,109,110,112,113,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/notification":[5,20,27,30,42,65,66,84,87,110,1,16,17,18,21,40,41,43,45,89,98,101,106,109],"/dependence/logModal":[13,30,42,58,97,98,105,109,110,1,5,16,17,18,20,21,40,41,43,45,89,101,106],"/setting/checkUpdate":[30,31,42,44,45,58,97,98,106,109,110,1,5,16,17,18,20,21,40,41,43,89,101],"/script/renameModal":[5,20,27,30,42,58,65,87,108,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/dependence":[5,20,27,30,42,65,81,82,87,97,98,110,1,16,17,18,21,40,41,43,45,89,101,106,109],"/subscription/modal":[0,5,20,27,30,34,42,45,58,65,66,78,87,109,110,1,16,17,18,21,40,41,43,89,98,101,106],"/env/editNameModal":[5,20,27,30,42,46,58,65,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/systemLog":[5,12,19,30,42,57,103,110,1,16,17,18,20,21,40,41,43,45,89,98,101,106,109],"/crontab/logModal":[5,9,20,30,31,37,42,45,58,65,97,106,109,110,1,16,17,18,21,40,41,43,89,98,101],"/dependence/modal":[5,10,20,27,30,42,58,65,66,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/script/editModal":[5,20,22,27,30,39,40,41,42,45,55,58,61,65,66,87,97,98,106,109,110,1,16,17,18,21,43,89,101],"/script/saveModal":[5,20,27,30,42,58,65,87,104,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/appModal":[5,20,25,27,30,42,58,65,66,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/loginLog":[1,5,9,20,22,26,30,42,62,65,66,70,87,88,89,16,17,18,21,40,41,43,45,98,101,106,109,110],"/setting/progress":[30,38,42,58,67,109,1,5,16,17,18,20,21,40,41,43,45,89,98,101,106,110],"/setting/security":[5,9,20,27,30,42,58,59,60,65,67,87,96,109,110,112,113,1,16,17,18,21,40,41,43,45,89,98,101,106],"/dependence/type":[85,1,5,16,17,18,20,21,30,40,41,42,43,45,89,98,101,106,109,110],"/crontab/detail":[5,9,20,26,30,31,40,42,45,58,65,66,68,73,89,97,106,109,110,111,1,16,17,18,21,41,43,98,101],"/script/setting":[5,7,20,27,30,42,58,65,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/crontab/const":[50,1,5,16,17,18,20,21,30,40,41,42,43,45,89,98,101,106,109,110],"/crontab/modal":[5,20,27,30,42,45,58,65,66,69,87,102,109,110,1,16,17,18,21,40,41,43,89,98,101,106],"/setting/about":[2,3,5,9,20,30,65,1,16,17,18,21,40,41,42,43,45,89,98,101,106,109,110],"/setting/other":[5,16,20,27,30,31,42,45,58,65,66,67,74,75,78,80,87,97,98,106,109,110,112,113,1,17,18,21,40,41,43,89,101],"/crontab/type":[63,1,5,16,17,18,20,21,30,40,41,42,43,45,89,98,101,106,109,110],"/env/modal":[4,5,20,27,30,42,58,65,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/script/components/UnsupportedFilePreview":[32,33,42,1,5,16,17,18,20,21,30,40,41,43,45,89,98,101,106,109,110]}},{publicPath:"./"});null==i||i.forEach((function(t){var e,n=t.type,a=t.url;if("js"===n)(e=r("script")).src=a,e.async=!0;else{if("css"!==n)return;(e=r("link")).href=a,e.rel="preload",e.as="style"}t.attrs.forEach((function(t){e.setAttribute(t[0],t[1]||"")})),c.appendChild(e)}))}}();
1
+ !function(){"use strict";var t="/".replace(/([^/])$/,"$1/"),e=location.pathname,n=e.startsWith(t)&&decodeURI("/".concat(e.slice(t.length)));if(n){var a=document,c=a.head,r=a.createElement.bind(a),i=function(t,e,n){var a,c=e.r[t]||(null===(a=Object.entries(e.r).find((function(e){var n=e[0];return new RegExp("^".concat(n.replace(/\/:[^/]+/g,"/[^/]+").replace("/*","/.+"),"$")).test(t)})))||void 0===a?void 0:a[1]);return null==c?void 0:c.map((function(t){var a=e.f[t][1],c=e.f[t][0];return{type:c.split(".").pop(),url:"".concat(n.publicPath).concat(c),attrs:[["data-".concat(e.b),"".concat(e.p,":").concat(a)]]}}))}(n,{"p":"@whyour/qinglong","b":"webpack","f":[["src__pages__subscription__modal.46a69195.async.js",73],["119.89e2d610.async.js",119],["src__pages__setting__about.e6db5090.chunk.css",154],["src__pages__setting__about.3d3c019f.async.js",154],["src__pages__env__modal.7d952f26.async.js",222],["255.12f03ab2.async.js",255],["src__pages__crontab__viewManageModal.c4bfd6a2.async.js",349],["src__pages__script__setting.dcdd7253.async.js",440],["src__pages__subscription__logModal.9bf0b4f6.async.js",578],["691.187a388c.async.js",691],["src__pages__dependence__modal.7f588c0b.async.js",803],["874.ae8edb1a.async.js",874],["1352.ab6da08e.async.js",1352],["src__pages__dependence__logModal.f123e2ac.async.js",1406],["src__pages__initialization__index.66819338.chunk.css",1554],["src__pages__initialization__index.5bd471c5.async.js",1554],["1571.94ddca13.async.js",1571],["layouts__index.1fce90e0.chunk.css",1717],["layouts__index.8451cde4.async.js",1717],["1742.6cbe5aca.async.js",1742],["1765.d8e002d7.async.js",1765],["1883.675b6a18.chunk.css",1883],["1885.e0d00d2d.async.js",1885],["2096.383c1047.async.js",2096],["2208.98ccac5f.async.js",2208],["src__pages__setting__appModal.25adf30e.async.js",2313],["2325.dfa32834.async.js",2325],["2338.d678967d.async.js",2338],["src__pages__setting__index.7cf46d4a.chunk.css",2340],["src__pages__setting__index.3b426f9f.async.js",2340],["2821.be3dc88e.async.js",2821],["2890.9e373f5b.async.js",2890],["src__pages__script__components__UnsupportedFilePreview__index.d50aeff1.chunk.css",2892],["src__pages__script__components__UnsupportedFilePreview__index.39074c68.async.js",2892],["3191.f56b00f8.async.js",3191],["src__pages__error__index.b047bb77.chunk.css",3217],["src__pages__error__index.18520dbf.async.js",3217],["src__pages__crontab__logModal.0767c532.async.js",3249],["src__pages__setting__progress.8823ac90.async.js",3308],["3382.a584a111.async.js",3382],["3383.041eee73.async.js",3383],["3390.fb4b6851.async.js",3390],["3481.333c2962.async.js",3481],["3600.7637c822.async.js",3600],["src__pages__setting__checkUpdate.c152dfaf.async.js",3830],["4046.7fbcfa02.async.js",4046],["src__pages__env__editNameModal.411043e2.async.js",4216],["src__pages__crontab__viewCreateModal.ffcf7a24.async.js",4453],["src__pages__crontab__index.5bbea517.chunk.css",4473],["src__pages__crontab__index.d6d37f6a.async.js",4473],["src__pages__crontab__const.323d5124.async.js",4555],["src__pages__404.771168fc.async.js",4650],["4859.1b962b29.chunk.css",4859],["4859.93e63ea6.async.js",4859],["4902.54ecbdb5.async.js",4902],["4934.1ca6b6b0.async.js",4934],["5312.74b95311.async.js",5312],["5481.624d0e07.async.js",5481],["5520.ff2cfd6b.async.js",5520],["src__pages__setting__security.7c80dd0f.chunk.css",5530],["src__pages__setting__security.7623a492.async.js",5530],["src__pages__script__editModal.10dd9857.async.js",5586],["src__pages__setting__loginLog.cea6056c.async.js",5722],["src__pages__crontab__type.db7c1858.async.js",5812],["src__pages__config__index.622b6ee8.async.js",5825],["5970.10ac4f16.async.js",5970],["6013.2d7bb12a.async.js",6013],["6016.9c379049.async.js",6016],["6035.5889ddc7.async.js",6035],["6159.55cb068a.async.js",6159],["6341.673fb65c.async.js",6341],["src__pages__diff__index.16e53710.chunk.css",6401],["src__pages__diff__index.013b7c75.async.js",6401],["6439.7ef6c5e3.async.js",6439],["src__pages__setting__other.28ecea01.chunk.css",6465],["src__pages__setting__other.45f67bd2.async.js",6465],["src__pages__script__index.60b6f827.chunk.css",6534],["src__pages__script__index.53f99bee.async.js",6534],["6646.5fc37228.async.js",6646],["6707.801b886b.async.js",6707],["6872.42f939f1.async.js",6872],["src__pages__setting__dependence.28ecea01.chunk.css",6877],["src__pages__setting__dependence.95dd01e7.async.js",6877],["src__pages__script__editNameModal.32bb2f80.async.js",7158],["src__pages__setting__notification.989e57d6.async.js",7213],["src__pages__dependence__type.e48c5c88.async.js",7243],["7253.4b9bf133.async.js",7253],["7285.d561cf26.async.js",7285],["7355.5e5e573b.async.js",7355],["7384.065ccae2.async.js",7384],["7508.3fffed15.chunk.css",7508],["7508.a31662a3.async.js",7508],["7528.d8b76d8a.async.js",7528],["7802.6b73f16a.async.js",7802],["src__pages__subscription__index.4b5150de.chunk.css",7953],["src__pages__subscription__index.850531a4.async.js",7953],["7984.e6bb9378.async.js",7984],["8060.8b699029.async.js",8060],["8078.8586c875.async.js",8078],["src__pages__env__index.77923857.chunk.css",8247],["src__pages__env__index.5a863036.async.js",8247],["8317.c44c1ebd.async.js",8317],["src__pages__crontab__modal.dcd053b5.async.js",8393],["src__pages__setting__systemLog.2e8cc7a0.async.js",8490],["src__pages__script__saveModal.8e358e84.async.js",8673],["8826.faecf076.async.js",8826],["8851.cf7e0ebc.async.js",8851],["8982.d2dba153.async.js",8982],["src__pages__script__renameModal.8232c924.async.js",9064],["9066.605168f8.async.js",9066],["9313.37acaf13.async.js",9313],["src__pages__crontab__detail.ebbb4abf.async.js",9558],["9730.30083c91.async.js",9730],["9761.627ca3b5.async.js",9761],["src__pages__log__index.9f2eae80.chunk.css",9818],["src__pages__log__index.cf00c9af.async.js",9818],["src__pages__dependence__index.ef46db37.chunk.css",9914],["src__pages__dependence__index.c31e50f0.async.js",9914],["src__pages__login__index.d00b91e8.chunk.css",9939],["src__pages__login__index.cd6e3152.async.js",9939]],"r":{"/*":[5,9,20,30,42,43,51,65,1,16,17,18,21,40,41,45,89,98,101,106,109,110],"/":[1,5,16,17,18,20,21,30,40,41,42,43,45,89,98,101,106,109,110],"/initialization":[5,9,14,15,20,27,30,42,65,66,67,87,110,1,16,17,18,21,40,41,43,45,89,98,101,106,109],"/subscription":[1,5,9,20,21,22,26,27,30,34,42,45,58,65,66,68,70,78,87,88,89,90,91,94,95,97,98,106,109,110,112,16,17,18,40,41,43,101],"/dependence":[1,5,9,20,21,22,26,27,30,42,58,65,66,68,70,86,87,88,89,90,91,93,97,98,105,109,110,112,116,117,16,17,18,40,41,43,45,101,106],"/crontab":[1,5,9,11,12,20,21,22,26,27,30,31,40,42,45,48,49,58,65,66,68,69,70,73,86,87,88,89,90,91,97,107,109,110,112,16,17,18,41,43,98,101,106],"/setting":[1,5,9,12,16,19,20,21,22,26,27,28,29,30,31,42,45,54,57,58,65,66,67,68,70,80,87,88,89,90,91,96,97,98,109,110,112,113,17,18,40,41,43,101,106],"/config":[1,5,19,20,21,22,30,40,42,45,55,56,64,66,68,89,90,91,106,110,16,17,18,41,43,98,101,109],"/script":[1,5,9,19,20,21,22,27,30,39,40,42,45,52,53,55,56,58,65,66,67,68,70,76,77,87,89,90,91,97,98,109,110,112,113,16,17,18,41,43,101,106],"/error":[5,9,20,30,35,36,65,110,1,16,17,18,21,40,41,42,43,45,89,98,101,106,109],"/login":[5,20,27,30,31,42,45,65,87,106,110,118,119,1,16,17,18,21,40,41,43,89,98,101,109],"/diff":[1,5,20,21,27,30,40,42,45,66,68,71,72,79,89,90,91,106,110,16,17,18,41,43,98,101,109],"/env":[1,5,9,11,20,21,22,26,27,30,42,45,58,65,66,67,68,70,86,87,88,89,90,91,92,99,100,106,109,110,112,113,16,17,18,40,41,43,98,101],"/log":[1,5,9,19,20,21,22,30,39,40,42,45,55,58,65,66,68,70,87,89,90,91,106,109,110,112,114,115,16,17,18,41,43,98,101],"/crontab/viewCreateModal":[5,12,20,24,27,30,42,47,58,65,66,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/crontab/viewManageModal":[1,5,6,9,11,12,20,22,24,26,27,30,42,58,65,66,70,86,87,88,89,109,110,112,16,17,18,21,40,41,43,45,98,101,106],"/subscription/logModal":[8,30,42,45,58,97,106,109,110,1,5,16,17,18,20,21,40,41,43,89,98,101],"/script/editNameModal":[5,20,22,23,27,30,42,55,58,65,66,67,83,87,109,110,112,113,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/notification":[5,20,27,30,42,65,66,84,87,110,1,16,17,18,21,40,41,43,45,89,98,101,106,109],"/dependence/logModal":[13,30,42,58,97,98,105,109,110,1,5,16,17,18,20,21,40,41,43,45,89,101,106],"/setting/checkUpdate":[30,31,42,44,45,58,97,98,106,109,110,1,5,16,17,18,20,21,40,41,43,89,101],"/script/renameModal":[5,20,27,30,42,58,65,87,108,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/dependence":[5,20,27,30,42,65,81,82,87,97,98,110,1,16,17,18,21,40,41,43,45,89,101,106,109],"/subscription/modal":[0,5,20,27,30,34,42,45,58,65,66,78,87,109,110,1,16,17,18,21,40,41,43,89,98,101,106],"/env/editNameModal":[5,20,27,30,42,46,58,65,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/systemLog":[5,12,19,30,42,57,103,110,1,16,17,18,20,21,40,41,43,45,89,98,101,106,109],"/crontab/logModal":[5,9,20,30,31,37,42,45,58,65,97,106,109,110,1,16,17,18,21,40,41,43,89,98,101],"/dependence/modal":[5,10,20,27,30,42,58,65,66,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/script/editModal":[5,20,22,27,30,39,40,41,42,45,55,58,61,65,66,87,97,98,106,109,110,1,16,17,18,21,43,89,101],"/script/saveModal":[5,20,27,30,42,58,65,87,104,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/appModal":[5,20,25,27,30,42,58,65,66,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/setting/loginLog":[1,5,9,20,22,26,30,42,62,65,66,70,87,88,89,16,17,18,21,40,41,43,45,98,101,106,109,110],"/setting/progress":[30,38,42,58,67,109,1,5,16,17,18,20,21,40,41,43,45,89,98,101,106,110],"/setting/security":[5,9,20,27,30,42,58,59,60,65,67,87,96,109,110,112,113,1,16,17,18,21,40,41,43,45,89,98,101,106],"/dependence/type":[85,1,5,16,17,18,20,21,30,40,41,42,43,45,89,98,101,106,109,110],"/crontab/detail":[5,9,20,26,30,31,40,42,45,58,65,66,68,73,89,97,106,109,110,111,1,16,17,18,21,41,43,98,101],"/script/setting":[5,7,20,27,30,42,58,65,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/crontab/const":[50,1,5,16,17,18,20,21,30,40,41,42,43,45,89,98,101,106,109,110],"/crontab/modal":[5,20,27,30,42,45,58,65,66,69,87,102,109,110,1,16,17,18,21,40,41,43,89,98,101,106],"/setting/about":[2,3,5,9,20,30,65,1,16,17,18,21,40,41,42,43,45,89,98,101,106,109,110],"/setting/other":[5,16,20,27,30,31,42,45,58,65,66,67,74,75,78,80,87,97,98,106,109,110,112,113,1,17,18,21,40,41,43,89,101],"/crontab/type":[63,1,5,16,17,18,20,21,30,40,41,42,43,45,89,98,101,106,109,110],"/env/modal":[4,5,20,27,30,42,58,65,87,109,110,1,16,17,18,21,40,41,43,45,89,98,101,106],"/script/components/UnsupportedFilePreview":[32,33,42,1,5,16,17,18,20,21,30,40,41,43,45,89,98,101,106,109,110]}},{publicPath:"./"});null==i||i.forEach((function(t){var e,n=t.type,a=t.url;if("js"===n)(e=r("script")).src=a,e.async=!0;else{if("css"!==n)return;(e=r("link")).href=a,e.rel="preload",e.as="style"}t.attrs.forEach((function(t){e.setAttribute(t[0],t[1]||"")})),c.appendChild(e)}))}}();
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[3217],{69870:function(e,t){t.Z={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"}}]},name:"check",theme:"outlined"}},81372:function(e,t,r){var a=r(98037),o=r(75271),l=r(69870),n=r(64720),i=function(e,t){return o.createElement(n.Z,(0,a.Z)((0,a.Z)({},e),{},{ref:t,icon:l.Z}))},s=o.forwardRef(i);t.Z=s},82795:function(e,t,r){r.r(t),r.d(t,{default:function(){return G}});var a=r(48305),o=r.n(a),l=r(72317),n=r(75271),i=r(3475),s=r(16314),c=r(34014),u=r(98783),p=r(2053),g=r(99459),d=r(57904),P=r(37024),h=r(7686),Z=r(84007),b=r(74142),m=r(32324),f=r(17555),v=r(65060),E=r(11596),y=r(30134),k=r(82187),N=r.n(k),x=r(88522),w=r(96820),_=r(92767),C=r(5555),T=r(73779),S=r(71374),U=r(57520),M=r(95531),A=r(52601),I=r(36326);function O(e,t,r){return t=(0,A.Z)(t),(0,U.Z)(e,(0,M.Z)()?Reflect.construct(t,r||[],(0,A.Z)(e).constructor):t.apply(e,r))}var R=function(e){function t(){var e;return(0,T.Z)(this,t),(e=O(this,t,arguments)).state={error:void 0,info:{componentStack:""}},e}return(0,I.Z)(t,e),(0,S.Z)(t,[{key:"componentDidCatch",value:function(e,t){this.setState({error:e,info:t})}},{key:"render",value:function(){var e=this.props,t=e.message,r=e.description,a=e.children,o=this.state,l=o.error,i=o.info,s=i&&i.componentStack?i.componentStack:null,c=void 0===t?(l||"").toString():t,u=void 0===r?s:r;return l?n.createElement(Q,{type:"error",message:c,description:n.createElement("pre",null,u)}):a}}]),t}(n.Component),B=R,q=function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(a=Object.getOwnPropertySymbols(e);o<a.length;o++)t.indexOf(a[o])<0&&Object.prototype.propertyIsEnumerable.call(e,a[o])&&(r[a[o]]=e[a[o]])}return r},K={success:P.Z,info:E.Z,error:Z.Z,warning:f.Z},L={success:h.Z,info:y.Z,error:b.Z,warning:v.Z},H=function(e){var t=e.description,r=e.icon,a=e.prefixCls,o=e.type,l=(t?L:K)[o]||null;return r?(0,C.wm)(r,n.createElement("span",{className:"".concat(a,"-icon")},r),(function(){return{className:N()("".concat(a,"-icon"),(0,d.Z)({},r.props.className,r.props.className))}})):n.createElement(l,{className:"".concat(a,"-icon")})},F=function(e){var t=e.isClosable,r=e.closeText,a=e.prefixCls,o=e.closeIcon,l=e.handleClose;return t?n.createElement("button",{type:"button",onClick:l,className:"".concat(a,"-close-icon"),tabIndex:0},r?n.createElement("span",{className:"".concat(a,"-close-text")},r):o):null},j=function(e){var t=e.description,r=e.prefixCls,a=e.message,o=e.banner,l=e.className,i=void 0===l?"":l,s=e.style,c=e.onMouseEnter,u=e.onMouseLeave,P=e.onClick,h=e.afterClose,Z=e.showIcon,b=e.closable,f=e.closeText,v=e.closeIcon,E=void 0===v?n.createElement(m.Z,null):v,y=e.action,k=q(e,["description","prefixCls","message","banner","className","style","onMouseEnter","onMouseLeave","onClick","afterClose","showIcon","closable","closeText","closeIcon","action"]),C=n.useState(!1),T=(0,g.Z)(C,2),S=T[0],U=T[1],M=n.useRef(),A=n.useContext(w.E_),I=A.getPrefixCls,O=A.direction,R=I("alert",r),B=function(e){var t;U(!0),null===(t=k.onClose)||void 0===t||t.call(k,e)},K=!!f||b,L=function(){var e=k.type;return void 0!==e?e:o?"warning":"info"}(),j=!(!o||void 0!==Z)||Z,Q=N()(R,"".concat(R,"-").concat(L),(0,d.Z)((0,d.Z)((0,d.Z)((0,d.Z)({},"".concat(R,"-with-description"),!!t),"".concat(R,"-no-icon"),!j),"".concat(R,"-banner"),!!o),"".concat(R,"-rtl"),"rtl"===O),i),W=(0,_.Z)(k);return n.createElement(x.ZP,{visible:!S,motionName:"".concat(R,"-motion"),motionAppear:!1,motionEnter:!1,onLeaveStart:function(e){return{maxHeight:e.offsetHeight}},onLeaveEnd:h},(function(e){var r=e.className,o=e.style;return n.createElement("div",(0,p.Z)({ref:M,"data-show":!S,className:N()(Q,r),style:(0,p.Z)((0,p.Z)({},s),o),onMouseEnter:c,onMouseLeave:u,onClick:P,role:"alert"},W),j?n.createElement(H,{description:t,icon:k.icon,prefixCls:R,type:L}):null,n.createElement("div",{className:"".concat(R,"-content")},a?n.createElement("div",{className:"".concat(R,"-message")},a):null,t?n.createElement("div",{className:"".concat(R,"-description")},t):null),y?n.createElement("div",{className:"".concat(R,"-action")},y):null,n.createElement(F,{isClosable:!!K,closeText:f,prefixCls:R,closeIcon:E,handleClose:B}))}))};j.ErrorBoundary=B;var Q=j,W=r(50691),D=r(52676),G=function(){var e=(0,u.useOutletContext)().user,t=(0,n.useState)(!1),r=o()(t,2),a=r[0],p=r[1],g=(0,n.useState)(l.ZP.get("暂无日志")),d=o()(g,2),P=d[0],h=d[1],Z=(0,n.useRef)(1),b=function e(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];t&&p(!0),s.W.get("".concat(i.Z.apiPrefix,"health")).then((function(t){var r=t.error,a=t.data;"ok"!==(null==a?void 0:a.status)?Z.current>3?h(null==r?void 0:r.details):(Z.current+=1,setTimeout((function(){e(!1)}),3e3)):Z.current>1&&setTimeout((function(){window.location.reload()}))})).catch((function(e){401===e.response.status&&u.history.push("/login")})).finally((function(){return t&&p(!1)}))};return(0,n.useEffect)((function(){e&&e.username&&u.history.push("/crontab")}),[e]),(0,n.useEffect)((function(){b()}),[]),(0,D.jsx)("div",{className:"error-wrapper",children:a?(0,D.jsx)(c.Z,{}):Z.current>3?(0,D.jsxs)("div",{className:"code-box",children:[(0,D.jsx)("div",{className:"browser-markup"}),(0,D.jsx)(Q,{type:"error",message:(0,D.jsx)(W.Z.Title,{level:5,type:"danger",children:l.ZP.get("服务启动超时")}),description:(0,D.jsxs)(W.Z.Text,{type:"danger",children:[(0,D.jsx)("div",{children:l.ZP.get("请先按如下方式修复:")}),(0,D.jsx)("div",{children:"1. 宿主机执行 docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower -cR <容器名>"}),(0,D.jsx)("div",{children:l.ZP.get("2. 容器内执行 ql check、ql update")}),(0,D.jsxs)("div",{children:[l.ZP.get("3. 如果无法解决,容器内执行 pm2 logs,拷贝执行结果"),(0,D.jsx)(W.Z.Link,{href:"https://github.com/whyour/qinglong/issues/new?assignees=&labels=&template=bug_report.yml",children:l.ZP.get("提交 issue")})]})]}),banner:!0}),(0,D.jsx)(W.Z.Paragraph,{code:!0,className:"log",children:P})]}):(0,D.jsx)(c.Z,{tip:l.ZP.get("启动中,请稍后...")})})}},3475:function(e,t,r){var a=r(72317),o=window.__ENV__QlBaseUrl||"/";t.Z={siteName:a.ZP.get("青龙"),baseUrl:o,apiPrefix:"".concat(o,"api/"),authKey:"token",layouts:[{name:"primary",include:[/.*/],exclude:[/(\/(en|zh))*\/login/]}],i18n:{languages:[{key:"pt-br",title:"Português",flag:"/portugal.svg"},{key:"en",title:"English",flag:"/america.svg"},{key:"zh",title:a.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:a.ZP.get("定时任务"),value:"crons"},{name:a.ZP.get("环境变量"),value:"envs"},{name:a.ZP.get("订阅管理"),value:"subscriptions"},{name:a.ZP.get("配置文件"),value:"configs"},{name:a.ZP.get("脚本管理"),value:"scripts"},{name:a.ZP.get("日志管理"),value:"logs"},{name:a.ZP.get("依赖管理"),value:"dependencies"},{name:a.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:a.ZP.get("定时任务"),envs:a.ZP.get("环境变量"),subscriptions:a.ZP.get("订阅管理"),configs:a.ZP.get("配置文件"),scripts:a.ZP.get("脚本管理"),logs:a.ZP.get("日志管理"),dependencies:a.ZP.get("依赖管理"),system:a.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"ntfy",label:"Ntfy"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:a.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:a.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:a.ZP.get("钉钉机器人")},{value:"weWorkBot",label:a.ZP.get("企业微信机器人")},{value:"weWorkApp",label:a.ZP.get("企业微信应用")},{value:"aibotk",label:a.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"wePlusBot",label:a.ZP.get("微加机器人")},{value:"wxPusherBot",label:"wxPusher"},{value:"chat",label:a.ZP.get("群晖chat")},{value:"email",label:a.ZP.get("邮箱")},{value:"lark",label:a.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:a.ZP.get("自定义通知")},{value:"closed",label:a.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:a.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:a.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:a.ZP.get("推送消息的优先级")}],ntfy:[{label:"ntfyUrl",tip:a.ZP.get("ntfy的url地址,例如 https://ntfy.sh"),required:!0},{label:"ntfyTopic",tip:a.ZP.get("ntfy的消息应用topic"),required:!0},{label:"ntfyPriority",tip:a.ZP.get("推送消息的优先级")}],chat:[{label:"synologyChatUrl",tip:a.ZP.get("synologyChat的url地址"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:a.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:a.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:a.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:a.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:a.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:a.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:a.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:a.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:a.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:a.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:a.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:a.ZP.get("BARK推送消息的跳转URL")},{label:"barkArchive",tip:a.ZP.get("BARK是否保存推送消息")}],telegramBot:[{label:"telegramBotToken",tip:a.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:a.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:a.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:a.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:a.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:a.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:a.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:a.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:a.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:a.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:a.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:a.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:a.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:a.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:a.ZP.get("请输入要发送的目标"),items:[{value:"room",label:a.ZP.get("群聊")},{value:"contact",label:a.ZP.get("好友")}]},{label:"aibotkName",tip:a.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:a.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:a.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:a.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")},{label:"pushplusTemplate",tip:a.ZP.get("发送模板")},{label:"pushplusChannel",tip:a.ZP.get("发送渠道")},{label:"pushplusWebhook",tip:a.ZP.get("webhook编码")},{label:"pushplusCallbackUrl",tip:a.ZP.get("发送结果回调地址")},{label:"pushplusTo",tip:a.ZP.get("好友令牌")}],wePlusBot:[{label:"wePlusBotToken",tip:a.ZP.get("用户令牌,扫描登录后 我的—>设置->令牌 中获取,参考 https://www.weplusbot.com/"),required:!0},{label:"wePlusBotReceiver",tip:a.ZP.get("消息接收人")},{label:"wePlusBotVersion",tip:a.ZP.get("调用版本;专业版填写pro,个人版填写personal,为空默认使用专业版")}],wxPusherBot:[{label:"wxPusherBotAppToken",tip:a.ZP.get("wxPusherBot的appToken"),required:!0},{label:"wxPusherBotTopicIds",tip:a.ZP.get("wxPusherBot的topicIds"),required:!1},{label:"wxPusherBotUids",tip:a.ZP.get("wxPusherBot的uids"),required:!1}],lark:[{label:"larkKey",tip:a.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:a.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://github.com/nodemailer/nodemailer/blob/master/lib/well-known/services.json"),required:!0},{label:"emailUser",tip:a.ZP.get("邮箱认证地址"),required:!0},{label:"emailPass",tip:a.ZP.get("SMTP 登录密码,也可能为特殊口令,视具体邮件服务商说明而定"),required:!0},{label:"emailTo",tip:a.ZP.get("收件邮箱地址,多个分号分隔,默认发送给发件邮箱地址")}],pushMe:[{label:"pushMeKey",tip:a.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0},{label:"pushMeUrl",tip:a.ZP.get("自建的PushMeServer消息接口地址,例如:http://127.0.0.1:3010,不填则使用官方消息接口"),required:!1}],chronocat:[{label:"chronocatURL",tip:a.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:a.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:a.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:a.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:a.ZP.get("请求头Content-Type"),required:!0,items:[{value:"text/plain"},{value:"application/json"},{value:"multipart/form-data"},{value:"application/x-www-form-urlencoded"}]},{label:"webhookUrl",tip:a.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:a.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:a.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":a.ZP.get("登录"),"/initialization":a.ZP.get("初始化"),"/crontab":a.ZP.get("定时任务"),"/env":a.ZP.get("环境变量"),"/subscription":a.ZP.get("订阅管理"),"/config":a.ZP.get("配置文件"),"/script":a.ZP.get("脚本管理"),"/diff":a.ZP.get("对比工具"),"/log":a.ZP.get("日志管理"),"/setting":a.ZP.get("系统设置"),"/error":a.ZP.get("错误日志"),"/dependence":a.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},16314:function(e,t,r){r.d(t,{W:function(){return b}});var a=r(90228),o=r.n(a),l=r(87999),n=r.n(l),i=r(72317),s=r(61508),c=r(33839),u=r(3475),p=r(98783),g=r(69313),d=r(52676);s.ZP.config({duration:2});var P=Date.now(),h=g.Z.create({timeout:6e4,params:{t:P}}),Z=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];h.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!Z.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),h.interceptors.response.use(function(){var e=n()(o()().mark((function e(t){var r,a,l;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.status,![502,504].includes(r)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==r){e.next=9;break}"/login"!==p.history.location.pathname&&(localStorage.removeItem(u.Z.authKey),p.history.push("/login")),e.next=18;break;case 9:return e.prev=9,200!==(a=t.data).code&&(l=a.message||a.data)&&c.Z.error({message:l,description:null!=a&&a.errors?(0,d.jsx)(d.Fragment,{children:null==a?void 0:a.errors.map((function(e){return(0,d.jsx)("div",{children:e.message})}))}):void 0}),e.abrupt("return",a);case 15:e.prev=15,e.t0=e.catch(9);case 17:case 18:return e.abrupt("return",t);case 19:case"end":return e.stop()}}),e,null,[[9,15]])})));return function(t){return e.apply(this,arguments)}}(),(function(e){if(e.response){var t=e.response.data?e.response.data.message||e.message:e.response.statusText,r=e.response.status;if([502,504].includes(r))p.history.push("/error");else if(401===r)"/login"!==p.history.location.pathname&&(s.ZP.error(i.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login"));else{var a,o,l,n;if("function"==typeof(null===(a=e.config)||void 0===a?void 0:a.onError))return null===(n=e.config)||void 0===n?void 0:n.onError(e.response);t&&c.Z.error({message:t,description:null!==(o=e.response)&&void 0!==o&&null!==(o=o.data)&&void 0!==o&&o.errors?(0,d.jsx)(d.Fragment,{children:null===(l=e.response)||void 0===l||null===(l=l.data)||void 0===l||null===(l=l.errors)||void 0===l?void 0:l.map((function(e){return(0,d.jsxs)("div",{children:[e.message," (",e.value,")"]})}))}):void 0})}}else console.log(e.message);return Promise.reject(e)}));var b=h},92767:function(e,t,r){function a(e){return Object.keys(e).reduce((function(t,r){return!r.startsWith("data-")&&!r.startsWith("aria-")&&"role"!==r||r.startsWith("data-__")||(t[r]=e[r]),t}),{})}r.d(t,{Z:function(){return a}})},1260:function(e,t){var r={MAC_ENTER:3,BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,QUESTION_MARK:63,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,META:91,WIN_KEY_RIGHT:92,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,NUMLOCK:144,SEMICOLON:186,DASH:189,EQUALS:187,COMMA:188,PERIOD:190,SLASH:191,APOSTROPHE:192,SINGLE_QUOTE:222,OPEN_SQUARE_BRACKET:219,BACKSLASH:220,CLOSE_SQUARE_BRACKET:221,WIN_KEY:224,MAC_FF_META:224,WIN_IME:229,isTextModifyingKeyEvent:function(e){var t=e.keyCode;if(e.altKey&&!e.ctrlKey||e.metaKey||t>=r.F1&&t<=r.F12)return!1;switch(t){case r.ALT:case r.CAPS_LOCK:case r.CONTEXT_MENU:case r.CTRL:case r.DOWN:case r.END:case r.ESC:case r.HOME:case r.INSERT:case r.LEFT:case r.MAC_FF_META:case r.META:case r.NUMLOCK:case r.NUM_CENTER:case r.PAGE_DOWN:case r.PAGE_UP:case r.PAUSE:case r.PRINT_SCREEN:case r.RIGHT:case r.SHIFT:case r.UP:case r.WIN_KEY:case r.WIN_KEY_RIGHT:return!1;default:return!0}},isCharacterKey:function(e){if(e>=r.ZERO&&e<=r.NINE)return!0;if(e>=r.NUM_ZERO&&e<=r.NUM_MULTIPLY)return!0;if(e>=r.A&&e<=r.Z)return!0;if(-1!==window.navigator.userAgent.indexOf("WebKit")&&0===e)return!0;switch(e){case r.SPACE:case r.QUESTION_MARK:case r.NUM_PLUS:case r.NUM_MINUS:case r.NUM_PERIOD:case r.NUM_DIVISION:case r.SEMICOLON:case r.DASH:case r.EQUALS:case r.COMMA:case r.PERIOD:case r.SLASH:case r.APOSTROPHE:case r.SINGLE_QUOTE:case r.OPEN_SQUARE_BRACKET:case r.BACKSLASH:case r.CLOSE_SQUARE_BRACKET:return!0;default:return!1}}};t.Z=r}}]);