@whyour/qinglong 0.13.3 → 0.14.0

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.
Files changed (212) hide show
  1. package/README-en.md +13 -15
  2. package/README.md +14 -17
  3. package/docker/Dockerfile +6 -8
  4. package/docker/docker-entrypoint.sh +2 -16
  5. package/docker/front.conf +12 -0
  6. package/ecosystem.config.js +8 -0
  7. package/package.json +13 -8
  8. package/sample/config.sample.sh +10 -20
  9. package/sample/notify.js +115 -136
  10. package/sample/notify.py +7 -7
  11. package/shell/api.sh +4 -4
  12. package/shell/bot.sh +0 -3
  13. package/shell/check.sh +1 -13
  14. package/shell/env.sh +0 -0
  15. package/shell/share.sh +2 -4
  16. package/shell/start.sh +0 -10
  17. package/shell/update.sh +6 -17
  18. package/static/build/api/config.js +23 -6
  19. package/static/build/api/log.js +3 -32
  20. package/static/build/api/script.js +31 -21
  21. package/static/build/api/system.js +76 -8
  22. package/static/build/config/const.js +18 -1
  23. package/static/build/config/index.js +3 -0
  24. package/static/build/config/util.js +98 -95
  25. package/static/build/data/notify.js +2 -2
  26. package/static/build/data/{auth.js → system.js} +3 -3
  27. package/static/build/loaders/db.js +4 -4
  28. package/static/build/loaders/deps.js +11 -14
  29. package/static/build/loaders/express.js +4 -6
  30. package/static/build/loaders/initFile.js +16 -16
  31. package/static/build/loaders/sentry.js +2 -3
  32. package/static/build/loaders/sock.js +3 -3
  33. package/static/build/public.js +1 -1
  34. package/static/build/schedule/client.js +1 -1
  35. package/static/build/schedule/health.js +1 -1
  36. package/static/build/schedule/index.js +1 -1
  37. package/static/build/services/cron.js +32 -25
  38. package/static/build/services/dependence.js +15 -5
  39. package/static/build/services/env.js +2 -2
  40. package/static/build/services/notify.js +8 -7
  41. package/static/build/services/script.js +2 -6
  42. package/static/build/services/sshKey.js +27 -52
  43. package/static/build/services/subscription.js +19 -21
  44. package/static/build/services/system.js +112 -21
  45. package/static/build/services/user.js +52 -41
  46. package/static/build/shared/pLimit.js +4 -4
  47. package/static/dist/{6644.1f11b8fa.async.js → 1431.36b64dc5.async.js} +1 -1
  48. package/static/dist/3752.56c3fba2.async.js +1 -0
  49. package/static/dist/{419.e21ea0bd.async.js → 419.d9597044.async.js} +1 -1
  50. package/static/dist/{8008.cf4ff203.async.js → 8008.fbdcf863.async.js} +1 -1
  51. package/static/dist/833.7348bf8c.async.js +1 -0
  52. package/static/dist/8722.408e3112.async.js +1 -0
  53. package/static/dist/{8171.e2986b87.async.js → 9847.d72d4b37.async.js} +1 -1
  54. package/static/dist/index.html +1 -1
  55. package/static/dist/layouts__index.2c89a418.async.js +1 -0
  56. package/static/dist/monaco-editor/min/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  57. package/static/dist/monaco-editor/min/vs/base/worker/workerMain.js +22 -0
  58. package/static/dist/monaco-editor/min/vs/basic-languages/abap/abap.js +10 -0
  59. package/static/dist/monaco-editor/min/vs/basic-languages/apex/apex.js +10 -0
  60. package/static/dist/monaco-editor/min/vs/basic-languages/azcli/azcli.js +10 -0
  61. package/static/dist/monaco-editor/min/vs/basic-languages/bat/bat.js +10 -0
  62. package/static/dist/monaco-editor/min/vs/basic-languages/bicep/bicep.js +11 -0
  63. package/static/dist/monaco-editor/min/vs/basic-languages/cameligo/cameligo.js +10 -0
  64. package/static/dist/monaco-editor/min/vs/basic-languages/clojure/clojure.js +10 -0
  65. package/static/dist/monaco-editor/min/vs/basic-languages/coffee/coffee.js +10 -0
  66. package/static/dist/monaco-editor/min/vs/basic-languages/cpp/cpp.js +10 -0
  67. package/static/dist/monaco-editor/min/vs/basic-languages/csharp/csharp.js +10 -0
  68. package/static/dist/monaco-editor/min/vs/basic-languages/csp/csp.js +10 -0
  69. package/static/dist/monaco-editor/min/vs/basic-languages/css/css.js +12 -0
  70. package/static/dist/monaco-editor/min/vs/basic-languages/dart/dart.js +10 -0
  71. package/static/dist/monaco-editor/min/vs/basic-languages/dockerfile/dockerfile.js +10 -0
  72. package/static/dist/monaco-editor/min/vs/basic-languages/ecl/ecl.js +10 -0
  73. package/static/dist/monaco-editor/min/vs/basic-languages/elixir/elixir.js +10 -0
  74. package/static/dist/monaco-editor/min/vs/basic-languages/flow9/flow9.js +10 -0
  75. package/static/dist/monaco-editor/min/vs/basic-languages/freemarker2/freemarker2.js +12 -0
  76. package/static/dist/monaco-editor/min/vs/basic-languages/fsharp/fsharp.js +10 -0
  77. package/static/dist/monaco-editor/min/vs/basic-languages/go/go.js +10 -0
  78. package/static/dist/monaco-editor/min/vs/basic-languages/graphql/graphql.js +10 -0
  79. package/static/dist/monaco-editor/min/vs/basic-languages/handlebars/handlebars.js +10 -0
  80. package/static/dist/monaco-editor/min/vs/basic-languages/hcl/hcl.js +10 -0
  81. package/static/dist/monaco-editor/min/vs/basic-languages/html/html.js +10 -0
  82. package/static/dist/monaco-editor/min/vs/basic-languages/ini/ini.js +10 -0
  83. package/static/dist/monaco-editor/min/vs/basic-languages/java/java.js +10 -0
  84. package/static/dist/monaco-editor/min/vs/basic-languages/javascript/javascript.js +10 -0
  85. package/static/dist/monaco-editor/min/vs/basic-languages/julia/julia.js +10 -0
  86. package/static/dist/monaco-editor/min/vs/basic-languages/kotlin/kotlin.js +10 -0
  87. package/static/dist/monaco-editor/min/vs/basic-languages/less/less.js +11 -0
  88. package/static/dist/monaco-editor/min/vs/basic-languages/lexon/lexon.js +10 -0
  89. package/static/dist/monaco-editor/min/vs/basic-languages/liquid/liquid.js +10 -0
  90. package/static/dist/monaco-editor/min/vs/basic-languages/lua/lua.js +10 -0
  91. package/static/dist/monaco-editor/min/vs/basic-languages/m3/m3.js +10 -0
  92. package/static/dist/monaco-editor/min/vs/basic-languages/markdown/markdown.js +10 -0
  93. package/static/dist/monaco-editor/min/vs/basic-languages/mips/mips.js +10 -0
  94. package/static/dist/monaco-editor/min/vs/basic-languages/msdax/msdax.js +10 -0
  95. package/static/dist/monaco-editor/min/vs/basic-languages/mysql/mysql.js +10 -0
  96. package/static/dist/monaco-editor/min/vs/basic-languages/objective-c/objective-c.js +10 -0
  97. package/static/dist/monaco-editor/min/vs/basic-languages/pascal/pascal.js +10 -0
  98. package/static/dist/monaco-editor/min/vs/basic-languages/pascaligo/pascaligo.js +10 -0
  99. package/static/dist/monaco-editor/min/vs/basic-languages/perl/perl.js +10 -0
  100. package/static/dist/monaco-editor/min/vs/basic-languages/pgsql/pgsql.js +10 -0
  101. package/static/dist/monaco-editor/min/vs/basic-languages/php/php.js +10 -0
  102. package/static/dist/monaco-editor/min/vs/basic-languages/pla/pla.js +10 -0
  103. package/static/dist/monaco-editor/min/vs/basic-languages/postiats/postiats.js +10 -0
  104. package/static/dist/monaco-editor/min/vs/basic-languages/powerquery/powerquery.js +10 -0
  105. package/static/dist/monaco-editor/min/vs/basic-languages/powershell/powershell.js +10 -0
  106. package/static/dist/monaco-editor/min/vs/basic-languages/protobuf/protobuf.js +11 -0
  107. package/static/dist/monaco-editor/min/vs/basic-languages/pug/pug.js +10 -0
  108. package/static/dist/monaco-editor/min/vs/basic-languages/python/python.js +10 -0
  109. package/static/dist/monaco-editor/min/vs/basic-languages/qsharp/qsharp.js +10 -0
  110. package/static/dist/monaco-editor/min/vs/basic-languages/r/r.js +10 -0
  111. package/static/dist/monaco-editor/min/vs/basic-languages/razor/razor.js +10 -0
  112. package/static/dist/monaco-editor/min/vs/basic-languages/redis/redis.js +10 -0
  113. package/static/dist/monaco-editor/min/vs/basic-languages/redshift/redshift.js +10 -0
  114. package/static/dist/monaco-editor/min/vs/basic-languages/restructuredtext/restructuredtext.js +10 -0
  115. package/static/dist/monaco-editor/min/vs/basic-languages/ruby/ruby.js +10 -0
  116. package/static/dist/monaco-editor/min/vs/basic-languages/rust/rust.js +10 -0
  117. package/static/dist/monaco-editor/min/vs/basic-languages/sb/sb.js +10 -0
  118. package/static/dist/monaco-editor/min/vs/basic-languages/scala/scala.js +10 -0
  119. package/static/dist/monaco-editor/min/vs/basic-languages/scheme/scheme.js +10 -0
  120. package/static/dist/monaco-editor/min/vs/basic-languages/scss/scss.js +12 -0
  121. package/static/dist/monaco-editor/min/vs/basic-languages/shell/shell.js +10 -0
  122. package/static/dist/monaco-editor/min/vs/basic-languages/solidity/solidity.js +10 -0
  123. package/static/dist/monaco-editor/min/vs/basic-languages/sophia/sophia.js +10 -0
  124. package/static/dist/monaco-editor/min/vs/basic-languages/sparql/sparql.js +10 -0
  125. package/static/dist/monaco-editor/min/vs/basic-languages/sql/sql.js +10 -0
  126. package/static/dist/monaco-editor/min/vs/basic-languages/st/st.js +10 -0
  127. package/static/dist/monaco-editor/min/vs/basic-languages/swift/swift.js +13 -0
  128. package/static/dist/monaco-editor/min/vs/basic-languages/systemverilog/systemverilog.js +10 -0
  129. package/static/dist/monaco-editor/min/vs/basic-languages/tcl/tcl.js +10 -0
  130. package/static/dist/monaco-editor/min/vs/basic-languages/twig/twig.js +10 -0
  131. package/static/dist/monaco-editor/min/vs/basic-languages/typescript/typescript.js +10 -0
  132. package/static/dist/monaco-editor/min/vs/basic-languages/vb/vb.js +10 -0
  133. package/static/dist/monaco-editor/min/vs/basic-languages/xml/xml.js +10 -0
  134. package/static/dist/monaco-editor/min/vs/basic-languages/yaml/yaml.js +10 -0
  135. package/static/dist/monaco-editor/min/vs/editor/editor.main.css +6 -0
  136. package/static/dist/monaco-editor/min/vs/editor/editor.main.js +805 -0
  137. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.de.js +29 -0
  138. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.es.js +29 -0
  139. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.fr.js +27 -0
  140. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.it.js +27 -0
  141. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.ja.js +29 -0
  142. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.js +27 -0
  143. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.ko.js +27 -0
  144. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.ru.js +29 -0
  145. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.zh-cn.js +29 -0
  146. package/static/dist/monaco-editor/min/vs/editor/editor.main.nls.zh-tw.js +27 -0
  147. package/static/dist/monaco-editor/min/vs/language/css/cssMode.js +13 -0
  148. package/static/dist/monaco-editor/min/vs/language/css/cssWorker.js +63 -0
  149. package/static/dist/monaco-editor/min/vs/language/html/htmlMode.js +13 -0
  150. package/static/dist/monaco-editor/min/vs/language/html/htmlWorker.js +453 -0
  151. package/static/dist/monaco-editor/min/vs/language/json/jsonMode.js +15 -0
  152. package/static/dist/monaco-editor/min/vs/language/json/jsonWorker.js +36 -0
  153. package/static/dist/monaco-editor/min/vs/language/typescript/tsMode.js +20 -0
  154. package/static/dist/monaco-editor/min/vs/language/typescript/tsWorker.js +33970 -0
  155. package/static/dist/monaco-editor/min/vs/loader.js +11 -0
  156. package/static/dist/src__pages__config__index.e809a5d0.async.js +1 -0
  157. package/static/dist/src__pages__crontab__detail.5b509309.async.js +1 -0
  158. package/static/dist/src__pages__crontab__index.73fc56e9.chunk.css +1 -0
  159. package/static/dist/src__pages__crontab__index.da430aa9.async.js +1 -0
  160. package/static/dist/{src__pages__crontab__modal.3fa8f075.async.js → src__pages__crontab__modal.13de83de.async.js} +1 -1
  161. package/static/dist/src__pages__dependence__index.27d29203.async.js +1 -0
  162. package/static/dist/src__pages__dependence__logModal.b55dacc8.async.js +1 -0
  163. package/static/dist/src__pages__dependence__modal.3cc1a9be.async.js +1 -0
  164. package/static/dist/src__pages__diff__index.218dfd1a.async.js +1 -0
  165. package/static/dist/{src__pages__env__editNameModal.25c21e59.async.js → src__pages__env__editNameModal.08af0049.async.js} +1 -1
  166. package/static/dist/src__pages__env__modal.4c039f3d.async.js +1 -0
  167. package/static/dist/src__pages__error__index.1748dfaa.async.js +1 -0
  168. package/static/dist/src__pages__initialization__index.8f114cca.async.js +1 -0
  169. package/static/dist/src__pages__log__index.84556deb.async.js +1 -0
  170. package/static/dist/src__pages__script__editModal.17bcb1c2.async.js +1 -0
  171. package/static/dist/{src__pages__script__editNameModal.ca76e055.async.js → src__pages__script__editNameModal.61262353.async.js} +1 -1
  172. package/static/dist/src__pages__script__index.27582916.async.js +1 -0
  173. package/static/dist/{src__pages__script__renameModal.c166915b.async.js → src__pages__script__renameModal.3e39fdf4.async.js} +1 -1
  174. package/static/dist/src__pages__script__saveModal.449e50d8.async.js +1 -0
  175. package/static/dist/{src__pages__script__setting.020a7629.async.js → src__pages__script__setting.7944fdd6.async.js} +1 -1
  176. package/static/dist/{src__pages__setting__about.e3293e77.chunk.css → src__pages__setting__about.f6325812.chunk.css} +1 -1
  177. package/static/dist/{src__pages__setting__appModal.efa5bb29.async.js → src__pages__setting__appModal.a419e539.async.js} +1 -1
  178. package/static/dist/{src__pages__setting__other.b4adcffe.chunk.css → src__pages__setting__dependence.55c598d0.chunk.css} +1 -1
  179. package/static/dist/src__pages__setting__dependence.7bcddc85.async.js +1 -0
  180. package/static/dist/src__pages__setting__index.d2fc96f6.async.js +1 -0
  181. package/static/dist/{src__pages__setting__index.d57cc3fc.chunk.css → src__pages__setting__index.d666f8ec.chunk.css} +1 -1
  182. package/static/dist/src__pages__setting__notification.552e6815.async.js +1 -0
  183. package/static/dist/src__pages__setting__other.55c598d0.chunk.css +1 -0
  184. package/static/dist/src__pages__setting__other.a029d99a.async.js +1 -0
  185. package/static/dist/{src__pages__setting__security.d14993c7.async.js → src__pages__setting__security.c667d9e8.async.js} +1 -1
  186. package/static/dist/src__pages__subscription__modal.07629f02.async.js +1 -0
  187. package/static/dist/{umi.decd4ae2.js → umi.c864c23a.js} +1 -1
  188. package/version.yaml +27 -5
  189. package/sample/package.json +0 -12
  190. package/static/dist/5619.db04f386.async.js +0 -1
  191. package/static/dist/6747.36513965.async.js +0 -1
  192. package/static/dist/833.5add31bf.async.js +0 -1
  193. package/static/dist/layouts__index.931ce4c3.async.js +0 -1
  194. package/static/dist/src__pages__config__index.9d83dfb7.async.js +0 -1
  195. package/static/dist/src__pages__crontab__detail.7bceef05.async.js +0 -1
  196. package/static/dist/src__pages__crontab__index.55c93601.async.js +0 -1
  197. package/static/dist/src__pages__crontab__index.9fb90359.chunk.css +0 -1
  198. package/static/dist/src__pages__dependence__index.21153c24.async.js +0 -1
  199. package/static/dist/src__pages__dependence__logModal.5aada63c.async.js +0 -1
  200. package/static/dist/src__pages__dependence__modal.96353c88.async.js +0 -1
  201. package/static/dist/src__pages__diff__index.e644b15f.async.js +0 -1
  202. package/static/dist/src__pages__env__modal.4fd6abc2.async.js +0 -1
  203. package/static/dist/src__pages__error__index.f3ca5563.async.js +0 -1
  204. package/static/dist/src__pages__initialization__index.727e0f70.async.js +0 -1
  205. package/static/dist/src__pages__log__index.ba2c1721.async.js +0 -1
  206. package/static/dist/src__pages__script__editModal.8d7bac2a.async.js +0 -1
  207. package/static/dist/src__pages__script__index.da31e2c2.async.js +0 -1
  208. package/static/dist/src__pages__script__saveModal.7ee07566.async.js +0 -1
  209. package/static/dist/src__pages__setting__index.540c33a4.async.js +0 -1
  210. package/static/dist/src__pages__setting__notification.b99a4c64.async.js +0 -1
  211. package/static/dist/src__pages__setting__other.d20be1c1.async.js +0 -1
  212. package/static/dist/src__pages__subscription__modal.61e787ce.async.js +0 -1
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[7158],{85472:function(e,t,a){a.r(t);var r=a(57213),l=a.n(r),i=a(54689),n=a.n(i),o=a(25359),s=a.n(o),u=a(49811),p=a.n(u),c=a(54306),g=a.n(c),d=a(88265),P=a(63313),h=a(28756),Z=a(67393),b=a(9835),m=a(84163),f=a(84468),v=a(22159),k=a(75310),y=a(57679),x=a(57229),w=a(15207),q=a(59953),B=a(11527);h.Z.Option;t.default=function(e){var t=e.handleCancel,a=e.treeData,r=e.visible,i=Z.Z.useForm(),o=g()(i,1)[0],u=(0,P.useState)(!1),c=g()(u,2),h=c[0],_=c[1],C=(0,P.useState)([]),j=g()(C,2),K=j[0],S=j[1],T=(0,P.useState)(),U=g()(T,2),Q=U[0],A=U[1],H=(0,P.useState)("blank"),X=g()(H,2),D=X[0],I=X[1],R=function(){var e=p()(s()().mark((function e(a){var r,l,i,n,o,u;return s()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_(!0),r=a.path,l=void 0===r?"":r,i=a.filename,n=a.directory,o=void 0===n?"":n,(u=new FormData).append("file",Q),u.append("filename",i),u.append("path",l),u.append("content",""),u.append("directory",o),x.W.post("".concat(w.Z.apiPrefix,"scripts"),u).then((function(e){var a=e.code;e.data;if(200===a){b.ZP.success(o?d.ZP.get("创建文件夹成功"):d.ZP.get("创建文件成功"));var r=l?"".concat(l,"/"):"",n=Q?Q.name:i;t({filename:n,path:l,key:"".concat(r).concat(n)})}_(!1)})).finally((function(){return _(!1)}));case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),E=function e(t){var a,r=n()(t);try{for(r.s();!(a=r.n()).done;){var i=a.value;i.children&&i.children.length>0&&(i.children=i.children.filter((function(e){return"directory"===e.type})).map((function(e){return l()(l()({},e),{},{disabled:!1})})),e(i.children))}}catch(e){r.e(e)}finally{r.f()}return t};return(0,P.useEffect)((function(){var e=a.filter((function(e){return"directory"===e.type})).map((function(e){return l()(l()({},e),{},{disabled:!1})})),t=E(e);S(t)}),[a]),(0,P.useEffect)((function(){o.resetFields()}),[r]),(0,B.jsx)(m.Z,{title:d.ZP.get("创建"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){o.validateFields().then((function(e){R(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return t()},confirmLoading:h,children:(0,B.jsxs)(Z.Z,{form:o,layout:"vertical",name:"edit_name_modal",children:[(0,B.jsx)(Z.Z.Item,{name:"type",label:d.ZP.get("类型"),rules:[{required:!0}],initialValue:"blank",children:(0,B.jsxs)(f.ZP.Group,{onChange:function(e){I(e.target.value)},children:[(0,B.jsx)(f.ZP,{value:"blank",children:d.ZP.get("空文件")}),(0,B.jsx)(f.ZP,{value:"upload",children:d.ZP.get("本地文件")}),(0,B.jsx)(f.ZP,{value:"directory",children:d.ZP.get("文件夹")})]})}),"blank"===D&&(0,B.jsx)(Z.Z.Item,{name:"filename",label:d.ZP.get("文件名"),rules:[{required:!0,message:d.ZP.get("请输入文件名")},{validator:function(e,t){return t.includes("/")?Promise.reject(new Error(d.ZP.get("文件名不能包含斜杠"))):Promise.resolve()}}],children:(0,B.jsx)(v.Z,{placeholder:d.ZP.get("请输入文件名")})}),"directory"===D&&(0,B.jsx)(Z.Z.Item,{name:"directory",label:d.ZP.get("文件夹名"),rules:[{required:!0,message:d.ZP.get("请输入文件夹名")}],children:(0,B.jsx)(v.Z,{placeholder:d.ZP.get("请输入文件夹名")})}),(0,B.jsx)(Z.Z.Item,{label:d.ZP.get("父目录"),name:"path",children:(0,B.jsx)(k.Z,{allowClear:!0,treeData:K,fieldNames:{value:"key",label:"title"},placeholder:d.ZP.get("请选择父目录"),treeDefaultExpandAll:!0})}),"upload"===D&&(0,B.jsx)(Z.Z.Item,{label:d.ZP.get("文件"),name:"file",children:(0,B.jsxs)(y.Z.Dragger,{beforeUpload:function(e){return A(e),!1},maxCount:1,children:[(0,B.jsx)("p",{className:"ant-upload-drag-icon",children:(0,B.jsx)(q.Z,{})}),(0,B.jsx)("p",{className:"ant-upload-text",children:d.ZP.get("点击或者拖拽文件到此区域上传")})]})})]})})}},15207:function(e,t,a){var r=a(88265),l=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),apiPrefix:"".concat(l,"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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://nodemailer.com/smtp/well-known/"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("邮箱SMTP授权码"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.ZP.get("请求头Content-Type"),required:!0,items:[{value:"application/json"},{value:"multipart/form-data"},{value:"application/x-www-form-urlencoded"}]},{label:"webhookUrl",tip:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return h}});var r=a(25359),l=a.n(r),i=a(49811),n=a.n(i),o=a(88265),s=a(9835),u=a(15207),p=a(14851),c=a(73669);s.ZP.config({duration:2});var g=Date.now(),d=c.Z.create({timeout:6e4,params:{t:g}}),P=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];d.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!P.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),d.interceptors.response.use(function(){var e=n()(l()().mark((function e(t){var a,r,i;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(i=r.message||r.data)&&s.ZP.error({content:i,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(o.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var h=d},92235:function(e,t,a){a.d(t,{Z:function(){return i}});var r=a(41171),l=a(63313);function i(){var e=l.useReducer((function(e){return e+1}),0);return(0,r.Z)(e,2)[1]}}}]);
1
+ "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[7158],{85472:function(e,t,a){a.r(t);var r=a(57213),l=a.n(r),i=a(54689),n=a.n(i),o=a(25359),s=a.n(o),u=a(49811),p=a.n(u),c=a(54306),g=a.n(c),d=a(88265),h=a(63313),P=a(28756),Z=a(67393),b=a(9835),m=a(84163),f=a(84468),v=a(22159),k=a(75310),y=a(57679),x=a(57229),w=a(15207),q=a(59953),B=a(11527);P.Z.Option;t.default=function(e){var t=e.handleCancel,a=e.treeData,r=e.visible,i=Z.Z.useForm(),o=g()(i,1)[0],u=(0,h.useState)(!1),c=g()(u,2),P=c[0],_=c[1],C=(0,h.useState)([]),j=g()(C,2),K=j[0],S=j[1],T=(0,h.useState)(),U=g()(T,2),Q=U[0],A=U[1],H=(0,h.useState)("blank"),X=g()(H,2),D=X[0],I=X[1],R=function(){var e=p()(s()().mark((function e(a){var r,l,i,n,o,u;return s()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_(!0),r=a.path,l=void 0===r?"":r,i=a.filename,n=a.directory,o=void 0===n?"":n,(u=new FormData).append("file",Q),u.append("filename",i),u.append("path",l),u.append("content",""),u.append("directory",o),x.W.post("".concat(w.Z.apiPrefix,"scripts"),u).then((function(e){var a=e.code;e.data;if(200===a){b.ZP.success(o?d.ZP.get("创建文件夹成功"):d.ZP.get("创建文件成功"));var r=l?"".concat(l,"/"):"",n=Q?Q.name:i;t({filename:n,path:l,key:"".concat(r).concat(n)})}_(!1)})).finally((function(){return _(!1)}));case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),E=function e(t){var a,r=n()(t);try{for(r.s();!(a=r.n()).done;){var i=a.value;i.children&&i.children.length>0&&(i.children=i.children.filter((function(e){return"directory"===e.type})).map((function(e){return l()(l()({},e),{},{disabled:!1})})),e(i.children))}}catch(e){r.e(e)}finally{r.f()}return t};return(0,h.useEffect)((function(){var e=a.filter((function(e){return"directory"===e.type})).map((function(e){return l()(l()({},e),{},{disabled:!1})})),t=E(e);S(t)}),[a]),(0,h.useEffect)((function(){o.resetFields()}),[r]),(0,B.jsx)(m.Z,{title:d.ZP.get("创建"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){o.validateFields().then((function(e){R(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return t()},confirmLoading:P,children:(0,B.jsxs)(Z.Z,{form:o,layout:"vertical",name:"edit_name_modal",children:[(0,B.jsx)(Z.Z.Item,{name:"type",label:d.ZP.get("类型"),rules:[{required:!0}],initialValue:"blank",children:(0,B.jsxs)(f.ZP.Group,{onChange:function(e){I(e.target.value)},children:[(0,B.jsx)(f.ZP,{value:"blank",children:d.ZP.get("空文件")}),(0,B.jsx)(f.ZP,{value:"upload",children:d.ZP.get("本地文件")}),(0,B.jsx)(f.ZP,{value:"directory",children:d.ZP.get("文件夹")})]})}),"blank"===D&&(0,B.jsx)(Z.Z.Item,{name:"filename",label:d.ZP.get("文件名"),rules:[{required:!0,message:d.ZP.get("请输入文件名")},{validator:function(e,t){return t.includes("/")?Promise.reject(new Error(d.ZP.get("文件名不能包含斜杠"))):Promise.resolve()}}],children:(0,B.jsx)(v.Z,{placeholder:d.ZP.get("请输入文件名")})}),"directory"===D&&(0,B.jsx)(Z.Z.Item,{name:"directory",label:d.ZP.get("文件夹名"),rules:[{required:!0,message:d.ZP.get("请输入文件夹名")}],children:(0,B.jsx)(v.Z,{placeholder:d.ZP.get("请输入文件夹名")})}),(0,B.jsx)(Z.Z.Item,{label:d.ZP.get("父目录"),name:"path",children:(0,B.jsx)(k.Z,{allowClear:!0,treeData:K,fieldNames:{value:"key",label:"title"},placeholder:d.ZP.get("请选择父目录"),treeDefaultExpandAll:!0})}),"upload"===D&&(0,B.jsx)(Z.Z.Item,{label:d.ZP.get("文件"),name:"file",children:(0,B.jsxs)(y.Z.Dragger,{beforeUpload:function(e){return A(e),!1},maxCount:1,children:[(0,B.jsx)("p",{className:"ant-upload-drag-icon",children:(0,B.jsx)(q.Z,{})}),(0,B.jsx)("p",{className:"ant-upload-text",children:d.ZP.get("点击或者拖拽文件到此区域上传")})]})})]})})}},15207:function(e,t,a){var r=a(88265),l=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),apiPrefix:"".concat(l,"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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://github.com/nodemailer/nodemailer/blob/master/lib/well-known/services.json"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("SMTP 登录密码,也可能为特殊口令,视具体邮件服务商说明而定"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.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:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return P}});var r=a(25359),l=a.n(r),i=a(49811),n=a.n(i),o=a(88265),s=a(9835),u=a(15207),p=a(14851),c=a(73669);s.ZP.config({duration:2});var g=Date.now(),d=c.Z.create({timeout:6e4,params:{t:g}}),h=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];d.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!h.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),d.interceptors.response.use(function(){var e=n()(l()().mark((function e(t){var a,r,i;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(i=r.message||r.data)&&s.ZP.error({content:i,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(o.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var P=d},92235:function(e,t,a){a.d(t,{Z:function(){return i}});var r=a(41171),l=a(63313);function i(){var e=l.useReducer((function(e){return e+1}),0);return(0,r.Z)(e,2)[1]}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[6534,9064,8673,440,833],{38582:function(e,t,n){"use strict";var r=(0,n(55258).Z)({scriptUrl:["//at.alicdn.com/t/c/font_3354854_ob5y15ewlyq.js"]});t.Z=r},51805:function(e,t,n){"use strict";var r=n(57213),a=n.n(r),i=n(63313);t.Z=function(e,t,n){var r=n.treeNodeFilterProp;return(0,i.useMemo)((function(){var n=[];if(!t)return{treeData:e,keys:n};var i=t.toUpperCase();function o(e,t){var n=t[r];return String(n).toUpperCase().includes(i)}return{treeData:function e(t){var r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return t.map((function(t){var i=t.children,l=r||o(0,t),s=e(i||[],l);return l||s.length?(s.length&&n.push(t.key),a()(a()({},t),{},{children:s})):null})).filter((function(e){return e}))}(e),keys:n}}),[e,t,r])}},98912:function(e,t,n){"use strict";n.r(t);var r=n(57213),a=n.n(r),i=n(54306),o=n.n(i),l=n(88265),s=n(63313),c=n(28756),u=n(60858),d=n(75310),p=n(24378),g=n(57229),h=n(15207),f=n(36035),m=n(82755),v=n(68793),Z=n(12417),b=n(3094),P=n(40141),y=n(21758),k=n(99120),x=n.n(k),w=n(11527),j=c.Z.Option;t.default=function(e){var t=e.treeData,n=e.currentNode,r=e.content,i=e.handleCancel,k=e.visible,S=(0,s.useState)(""),C=o()(S,2),_=C[0],q=C[1],E=(0,s.useState)("javascript"),I=o()(E,2),B=I[0],R=I[1],F=(0,s.useState)(),N=o()(F,2),T=N[0],D=N[1],M=(0,s.useState)(),A=o()(M,2),H=A[0],V=A[1],O=(0,s.useState)(!1),L=o()(O,2),W=L[0],U=L[1],K=(0,s.useState)(!1),z=o()(K,2),Q=z[0],X=z[1],Y=(0,s.useState)(""),G=o()(Y,2),$=G[0],J=G[1],ee=(0,b.F)().theme,te=(0,s.useRef)(null),ne=(0,s.useState)(!1),re=o()(ne,2),ae=re[0],ie=re[1],oe=(0,s.useState)(null),le=o()(oe,2),se=le[0],ce=le[1],ue=function(e){g.W.get("".concat(h.Z.apiPrefix,"scripts/").concat(e.title,"?path=").concat(e.parent||"")).then((function(e){var t=e.code,n=e.data;200===t&&q(n)}))},de=function(){T&&T.title&&se&&g.W.put("".concat(h.Z.apiPrefix,"scripts/stop"),{filename:T.title,path:T.parent||"",pid:se}).then((function(e){var t=e.code;e.data;200===t&&ie(!1)}))},pe=(0,s.useCallback)((function(e){var t=e.message;(0,P.x$)(t)&&setTimeout((function(){ie(!1)}),300),J((function(e){return"".concat(e).concat(t)}))}),[]);return(0,s.useEffect)((function(){var e=y.Z.getInstance();return e.subscribe("manuallyRunScript",pe),function(){e.unsubscribe("manuallyRunScript",pe)}}),[]),(0,s.useEffect)((function(){if(J(""),n){D(n),q(r),V(n.key);var e=(0,P.H$)(n.title);R(e)}}),[r,n]),(0,w.jsxs)(u.Z,{className:"edit-modal",closable:!1,title:(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(d.Z,{treeExpandAction:"click",style:{marginRight:8,width:300},value:H,dropdownStyle:{maxHeight:400,overflow:"auto"},treeData:t,placeholder:l.ZP.get("请选择脚本文件"),fieldNames:{value:"key",label:"title"},showSearch:!0,onSelect:function(e,t){if(t.key!==H&&e&&"directory"!==t.type){var n=(0,P.H$)(e);D(t),R(n),ue(t),V(t.key)}},treeLine:{showLeafIcon:!0}}),(0,w.jsxs)(c.Z,{value:B,style:{width:110,marginRight:8},onChange:function(e){R(e)},children:[(0,w.jsx)(j,{value:"javascript",children:"javascript"}),(0,w.jsx)(j,{value:"typescript",children:"typescript"}),(0,w.jsx)(j,{value:"shell",children:"shell"}),(0,w.jsx)(j,{value:"python",children:"python"})]}),(0,w.jsx)(p.Z,{type:"primary",style:{marginRight:8},onClick:ae?de:function(){J("");var e=te.current.getValue().replace(/\r\n/g,"\n");g.W.put("".concat(h.Z.apiPrefix,"scripts/run"),{filename:T.title,path:T.parent||"",content:e}).then((function(e){var t=e.code,n=e.data;200===t&&(ie(!0),ce(n))}))},children:ae?l.ZP.get("停止"):l.ZP.get("运行")}),(0,w.jsx)(p.Z,{type:"primary",style:{marginRight:8},onClick:function(){J("")},children:l.ZP.get("清空日志")}),(0,w.jsx)(p.Z,{type:"primary",style:{marginRight:8},onClick:function(){U(!0)},children:l.ZP.get("保存")}),(0,w.jsx)(p.Z,{type:"primary",style:{marginRight:8},onClick:function(){de(),i()},children:l.ZP.get("退出")})]}),width:"100%",headerStyle:{padding:"11px 24px"},onClose:function(){i()},open:k,children:[(0,w.jsxs)(f.Z,{split:"vertical",minSize:200,defaultSize:"50%",style:{height:"calc(100vh - 55px)"},pane2Style:{overflowY:"auto"},children:[(0,w.jsx)(m.ZP,{language:B,value:_,theme:ee,options:{fontSize:12,minimap:{enabled:!1},lineNumbersMinChars:3,glyphMargin:!1},onMount:function(e){te.current=e}}),(0,w.jsx)("pre",{style:{padding:"0 15px"},children:(0,w.jsx)(x(),{children:$})})]}),(0,w.jsx)(v.default,{visible:W,handleCancel:function(){U(!1)},file:a()({content:te.current&&te.current.getValue().replace(/\r\n/g,"\n")},T)}),(0,w.jsx)(Z.default,{visible:Q,handleCancel:function(){X(!1)}})]})}},85472:function(e,t,n){"use strict";n.r(t);var r=n(57213),a=n.n(r),i=n(54689),o=n.n(i),l=n(25359),s=n.n(l),c=n(49811),u=n.n(c),d=n(54306),p=n.n(d),g=n(88265),h=n(63313),f=n(28756),m=n(67393),v=n(9835),Z=n(84163),b=n(84468),P=n(22159),y=n(75310),k=n(57679),x=n(57229),w=n(15207),j=n(59953),S=n(11527);f.Z.Option;t.default=function(e){var t=e.handleCancel,n=e.treeData,r=e.visible,i=m.Z.useForm(),l=p()(i,1)[0],c=(0,h.useState)(!1),d=p()(c,2),f=d[0],C=d[1],_=(0,h.useState)([]),q=p()(_,2),E=q[0],I=q[1],B=(0,h.useState)(),R=p()(B,2),F=R[0],N=R[1],T=(0,h.useState)("blank"),D=p()(T,2),M=D[0],A=D[1],H=function(){var e=u()(s()().mark((function e(n){var r,a,i,o,l,c;return s()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:C(!0),r=n.path,a=void 0===r?"":r,i=n.filename,o=n.directory,l=void 0===o?"":o,(c=new FormData).append("file",F),c.append("filename",i),c.append("path",a),c.append("content",""),c.append("directory",l),x.W.post("".concat(w.Z.apiPrefix,"scripts"),c).then((function(e){var n=e.code;e.data;if(200===n){v.ZP.success(l?g.ZP.get("创建文件夹成功"):g.ZP.get("创建文件成功"));var r=a?"".concat(a,"/"):"",o=F?F.name:i;t({filename:o,path:a,key:"".concat(r).concat(o)})}C(!1)})).finally((function(){return C(!1)}));case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),V=function e(t){var n,r=o()(t);try{for(r.s();!(n=r.n()).done;){var i=n.value;i.children&&i.children.length>0&&(i.children=i.children.filter((function(e){return"directory"===e.type})).map((function(e){return a()(a()({},e),{},{disabled:!1})})),e(i.children))}}catch(e){r.e(e)}finally{r.f()}return t};return(0,h.useEffect)((function(){var e=n.filter((function(e){return"directory"===e.type})).map((function(e){return a()(a()({},e),{},{disabled:!1})})),t=V(e);I(t)}),[n]),(0,h.useEffect)((function(){l.resetFields()}),[r]),(0,S.jsx)(Z.Z,{title:g.ZP.get("创建"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){l.validateFields().then((function(e){H(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return t()},confirmLoading:f,children:(0,S.jsxs)(m.Z,{form:l,layout:"vertical",name:"edit_name_modal",children:[(0,S.jsx)(m.Z.Item,{name:"type",label:g.ZP.get("类型"),rules:[{required:!0}],initialValue:"blank",children:(0,S.jsxs)(b.ZP.Group,{onChange:function(e){A(e.target.value)},children:[(0,S.jsx)(b.ZP,{value:"blank",children:g.ZP.get("空文件")}),(0,S.jsx)(b.ZP,{value:"upload",children:g.ZP.get("本地文件")}),(0,S.jsx)(b.ZP,{value:"directory",children:g.ZP.get("文件夹")})]})}),"blank"===M&&(0,S.jsx)(m.Z.Item,{name:"filename",label:g.ZP.get("文件名"),rules:[{required:!0,message:g.ZP.get("请输入文件名")},{validator:function(e,t){return t.includes("/")?Promise.reject(new Error(g.ZP.get("文件名不能包含斜杠"))):Promise.resolve()}}],children:(0,S.jsx)(P.Z,{placeholder:g.ZP.get("请输入文件名")})}),"directory"===M&&(0,S.jsx)(m.Z.Item,{name:"directory",label:g.ZP.get("文件夹名"),rules:[{required:!0,message:g.ZP.get("请输入文件夹名")}],children:(0,S.jsx)(P.Z,{placeholder:g.ZP.get("请输入文件夹名")})}),(0,S.jsx)(m.Z.Item,{label:g.ZP.get("父目录"),name:"path",children:(0,S.jsx)(y.Z,{allowClear:!0,treeData:E,fieldNames:{value:"key",label:"title"},placeholder:g.ZP.get("请选择父目录"),treeDefaultExpandAll:!0})}),"upload"===M&&(0,S.jsx)(m.Z.Item,{label:g.ZP.get("文件"),name:"file",children:(0,S.jsxs)(k.Z.Dragger,{beforeUpload:function(e){return N(e),!1},maxCount:1,children:[(0,S.jsx)("p",{className:"ant-upload-drag-icon",children:(0,S.jsx)(j.Z,{})}),(0,S.jsx)("p",{className:"ant-upload-text",children:g.ZP.get("点击或者拖拽文件到此区域上传")})]})})]})})}},66553:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return z}});var r=n(93525),a=n.n(r),i=n(54306),o=n.n(i),l=n(88265),s=n(63313),c=n(92260),u=n(84163),d=n(9835),p=n(75310),g=n(34133),h=n(24378),f=n(15367),m=n(22159),v=n(43209),Z=n(84540),b=n(15207),P=n(23435),y=n(82755),k=n(57229),x={"left-tree-container":"left-tree-container___z9VeF","left-tree-scroller":"left-tree-scroller___MRc8C","log-container":"log-container___Iva4k"},w=n(98912),j=n(31988),S=n(36035),C=n(26839),_=n(32132),q=n(13740),E=n(23831),I=n(85472),B=n(66292),R=n.n(B),F=n(14851),N=n(43977),T=n(40141),D=n(51805),M=n(4363),A=n.n(M),H=n(38582),V=n(38359),O=n(26747),L=n(95407),W=n(79514),U=n(11527),K=c.Z.Text,z=function(){var e=(0,F.useOutletContext)(),t=e.headerStyle,n=e.isPhone,r=e.theme,i=(0,s.useState)(l.ZP.get("请选择脚本文件")),c=o()(i,2),B=c[0],M=c[1],z=(0,s.useState)(l.ZP.get("请选择脚本文件")),Q=o()(z,2),X=Q[0],Y=Q[1],G=(0,s.useState)([]),$=o()(G,2),J=$[0],ee=$[1],te=(0,s.useState)(!1),ne=o()(te,2),re=ne[0],ae=ne[1],ie=(0,s.useState)(""),oe=o()(ie,2),le=oe[0],se=oe[1],ce=(0,s.useState)(),ue=o()(ce,2),de=ue[0],pe=ue[1],ge=(0,s.useRef)(),he=(0,s.useState)(!1),fe=o()(he,2),me=fe[0],ve=fe[1],Ze=(0,s.useState)(""),be=o()(Ze,2),Pe=be[0],ye=be[1],ke=(0,s.useState)(!1),xe=o()(ke,2),we=xe[0],je=xe[1],Se=(0,s.useRef)(null),Ce=(0,s.useState)(!1),_e=o()(Ce,2),qe=_e[0],Ee=_e[1],Ie=(0,s.useState)(!1),Be=o()(Ie,2),Re=Be[0],Fe=Be[1],Ne=(0,s.useState)(),Te=o()(Ne,2),De=Te[0],Me=Te[1],Ae=(0,s.useState)([]),He=o()(Ae,2),Ve=He[0],Oe=He[1],Le=function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];e&&ae(!0),k.W.get("".concat(b.Z.apiPrefix,"scripts")).then((function(e){var t=e.code,n=e.data;200===t&&(ee(n),it(),Ue(n))})).finally((function(){return e&&ae(!1)}))},We=function(e){k.W.get("".concat(b.Z.apiPrefix,"scripts/").concat(encodeURIComponent(e.title),"?path=").concat(e.parent||"")).then((function(e){var t=e.code,n=e.data;200===t&&M(n)}))},Ue=function(e){var t=(0,N.parse)(F.history.location.search),n=t.p,r=t.s;if(r){var a="".concat(n,"/").concat(r),i={node:{title:r,key:n?a:r,parent:n}};(0,T.DY)(e,(function(e){return e.key===i.node.key}))&&(Oe([n]),ze([a],i))}},Ke=function(e,t){if(Y(t.key),Me(t),t.key!==X&&e)if("directory"!==t.type){var r=(0,T.H$)(e);se(n&&"typescript"===r?"javascript":r),M(l.ZP.get("加载中...")),We(t)}else M(l.ZP.get("请选择脚本文件"))},ze=(0,s.useCallback)((function(e,t){t.node.key===X&&we||((Se.current?Se.current.getValue().replace(/\r\n/g,"\n"):B)!==B?u.Z.confirm({title:"确认离开",content:(0,U.jsx)(U.Fragment,{children:l.ZP.get("当前修改未保存,确定离开吗")}),onOk:function(){Ke(e[0],t.node),je(!1)},onCancel:function(){console.log("Cancel")}}):(je(!1),Ke(e[0],t.node)))}),[B,X,we]),Qe=(0,s.useCallback)((function(e){var t=e.target.value;Xe(t)}),[J]),Xe=(0,s.useCallback)(R()((function(e){ye(e)}),300),[J]),Ye=(0,D.Z)(J,Pe,{treeNodeFilterProp:"title"}),Ge=Ye.treeData,$e=Ye.keys;(0,s.useEffect)((function(){Oe(A()([].concat(a()(Ve),a()($e))))}),[$e]);var Je=function(){setTimeout((function(){je(!0)}),300)},et=function(){je(!1),M(l.ZP.get("加载中...")),We(De)},tt=function(){u.Z.confirm({title:"确认保存",content:(0,U.jsxs)(U.Fragment,{children:[l.ZP.get("确认保存文件"),(0,U.jsx)(K,{style:{wordBreak:"break-all"},type:"warning",children:De.title})," ",l.ZP.get(",保存后不可恢复")]}),onOk:function(){var e=Se.current?Se.current.getValue().replace(/\r\n/g,"\n"):B;return new Promise((function(t,n){k.W.put("".concat(b.Z.apiPrefix,"scripts"),{filename:De.title,path:De.parent||"",content:e}).then((function(n){var r=n.code;n.data;200===r&&(d.ZP.success("保存成功"),M(e),je(!1)),t(null)})).catch((function(e){return n(e)}))}))},onCancel:function(){console.log("Cancel")}})},nt=function(){u.Z.confirm({title:"确认删除",content:(0,U.jsxs)(U.Fragment,{children:[l.ZP.get("确认删除"),(0,U.jsx)(K,{style:{wordBreak:"break-all"},type:"warning",children:X}),l.ZP.get("文件"),"directory"===De.type?l.ZP.get("夹及其子文件"):"",l.ZP.get(",删除后不可恢复")]}),onOk:function(){k.W.delete("".concat(b.Z.apiPrefix,"scripts"),{data:{filename:De.title,path:De.parent||"",type:De.type}}).then((function(e){if(200===e.code){d.ZP.success("删除成功");var t=a()(J);if(De.parent)t=(0,T.I1)(t,(function(e){return e.key===De.key}));else{var n=t.findIndex((function(e){return e.key===De.key}));-1!==n&&t.splice(n,1)}ee(t),it()}}))},onCancel:function(){console.log("Cancel")}})},rt=function(){Fe(!0)},at=function(){Ee(!0)},it=function(){Y(l.ZP.get("请选择脚本文件")),Me(null),M(l.ZP.get("请选择脚本文件"))};(0,s.useEffect)((function(){Le()}),[]),(0,s.useEffect)((function(){ge.current&&pe(ge.current.clientHeight)}),[ge.current,J]),(0,L.y1)("meta+s",(function(e){we&&tt()}),{enableOnFormTags:["textarea"],preventDefault:!0});var ot=we?{items:[{label:l.ZP.get("保存"),key:"save",icon:(0,U.jsx)(C.Z,{})},{label:l.ZP.get("退出编辑"),key:"exit",icon:(0,U.jsx)(_.Z,{})}],onClick:function(e){var t=e.key;e.domEvent.stopPropagation(),function(e){switch(e){case"save":tt();break;case"exit":et()}}(t)}}:{items:[{label:l.ZP.get("创建"),key:"add",icon:(0,U.jsx)(C.Z,{})},{label:l.ZP.get("编辑"),key:"edit",icon:(0,U.jsx)(_.Z,{}),disabled:!X},{label:l.ZP.get("重命名"),key:"rename",icon:(0,U.jsx)(H.Z,{type:"ql-icon-rename"}),disabled:!X},{label:l.ZP.get("删除"),key:"delete",icon:(0,U.jsx)(q.Z,{}),disabled:!X}],onClick:function(e){var t=e.key;e.domEvent.stopPropagation(),function(e){switch(e){case"add":at();break;case"edit":Je();break;case"delete":nt();break;case"rename":rt()}}(t)}};return(0,U.jsx)(P.ZP,{className:"ql-container-wrapper log-wrapper",title:(0,U.jsxs)(U.Fragment,{children:[X,"file"===(null==De?void 0:De.type)&&(0,U.jsx)("span",{style:{marginLeft:6,fontSize:12,color:"#999",display:"inline-block",height:14},children:(0,W.Z)(De.size)})]}),loading:re,extra:n?[(0,U.jsx)(p.Z,{treeExpandAction:"click",className:"log-select",value:X,dropdownStyle:{maxHeight:400,overflow:"auto"},treeData:J,placeholder:l.ZP.get("请选择脚本"),fieldNames:{value:"key"},treeNodeFilterProp:"title",showSearch:!0,allowClear:!0,onSelect:Ke}),(0,U.jsx)(g.Z,{menu:ot,trigger:["click"],children:(0,U.jsx)(h.Z,{type:"primary",icon:(0,U.jsx)(E.Z,{})})})]:we?[(0,U.jsx)(h.Z,{type:"primary",onClick:tt,children:l.ZP.get("保存")}),(0,U.jsx)(h.Z,{type:"primary",onClick:et,children:l.ZP.get("退出编辑")})]:[(0,U.jsx)(f.Z,{title:l.ZP.get("创建"),children:(0,U.jsx)(h.Z,{type:"primary",onClick:at,icon:(0,U.jsx)(C.Z,{})})}),(0,U.jsx)(f.Z,{title:l.ZP.get("编辑"),children:(0,U.jsx)(h.Z,{disabled:!X,type:"primary",onClick:Je,icon:(0,U.jsx)(_.Z,{})})}),(0,U.jsx)(f.Z,{title:l.ZP.get("重命名"),children:(0,U.jsx)(h.Z,{disabled:!X,type:"primary",onClick:rt,icon:(0,U.jsx)(H.Z,{type:"ql-icon-rename"})})}),(0,U.jsx)(f.Z,{title:l.ZP.get("删除"),children:(0,U.jsx)(h.Z,{type:"primary",disabled:!X,onClick:nt,icon:(0,U.jsx)(q.Z,{})})}),(0,U.jsx)(h.Z,{type:"primary",onClick:function(){ve(!0)},children:l.ZP.get("调试")})],header:{style:t},children:(0,U.jsxs)("div",{className:"".concat(x["log-container"]," log-container"),children:[!n&&(0,U.jsxs)(S.Z,{split:"vertical",size:200,maxSize:-100,children:[(0,U.jsx)("div",{className:x["left-tree-container"],children:J.length>0?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(m.Z.Search,{className:x["left-tree-search"],onChange:Qe,placeholder:l.ZP.get("请输入脚本名"),allowClear:!0}),(0,U.jsx)("div",{className:x["left-tree-scroller"],ref:ge,children:(0,U.jsx)(v.Z,{expandAction:"click",className:x["left-tree"],treeData:Ge,showIcon:!0,height:de,selectedKeys:[X],expandedKeys:Ve,onExpand:function(e){Oe(e)},showLine:{showLeafIcon:!0},onSelect:ze,onDoubleClick:function(e,t){"file"===t.type&&(Y(t.key),Me(t),je(!0))}})})]}):(0,U.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100%"},children:(0,U.jsx)(Z.Z,{description:l.ZP.get("暂无脚本"),image:Z.Z.PRESENTED_IMAGE_SIMPLE})})}),(0,U.jsx)(y.ZP,{language:le,value:B,theme:r,options:{readOnly:!we,fontSize:12,lineNumbersMinChars:3,glyphMargin:!1},onMount:function(e){Se.current=e}})]}),n&&(0,U.jsx)(j.ZP,{value:B,extensions:le?[O.RI[le]()]:void 0,theme:r.includes("dark")?"dark":"light",readOnly:!we,onChange:function(e){M(e)}}),me&&(0,U.jsx)(w.default,{visible:me,treeData:J,currentNode:De,content:B,handleCancel:function(){ve(!1)}}),(0,U.jsx)(I.default,{visible:qe,treeData:J,handleCancel:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{filename:"",path:"",key:""},t=e.filename,n=e.path,r=e.key;if(t){var i=a()(J),o={title:t,key:r,parent:n};if(n){i=(0,T.I1)(i,(function(e){return e.key===n}),o);var l=n.split("/"),s=[];l.reduce((function(e,t){return s.push(e),"".concat(e,"/").concat(t)})),Oe([].concat(a()(Ve),s,[n]))}else i.unshift(o);ee(i),Ke(o.title,o),je(!0)}Ee(!1)}}),(0,U.jsx)(V.default,{visible:Re,handleCancel:function(){Fe(!1),Le(!1)},currentNode:De})]})})}},38359:function(e,t,n){"use strict";n.r(t);var r=n(25359),a=n.n(r),i=n(49811),o=n.n(i),l=n(54306),s=n.n(l),c=n(88265),u=n(63313),d=n(67393),p=n(9835),g=n(84163),h=n(22159),f=n(57229),m=n(15207),v=n(11527);t.default=function(e){var t=e.currentNode,n=e.handleCancel,r=e.visible,i=d.Z.useForm(),l=s()(i,1)[0],Z=(0,u.useState)(!1),b=s()(Z,2),P=b[0],y=b[1],k=function(){var e=o()(a()().mark((function e(r){var i,o;return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return y(!0),e.prev=1,e.next=4,f.W.put("".concat(m.Z.apiPrefix,"scripts/rename"),{filename:t.title,path:t.parent||"",newFilename:r.name});case 4:i=e.sent,o=i.code,i.data,200===o&&(p.ZP.success(c.ZP.get("更新名称成功")),n()),y(!1),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),y(!1);case 14:case"end":return e.stop()}}),e,null,[[1,11]])})));return function(t){return e.apply(this,arguments)}}();return(0,u.useEffect)((function(){l.resetFields()}),[t,r]),(0,v.jsx)(g.Z,{title:c.ZP.get("重命名"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){l.validateFields().then((function(e){k(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return n()},confirmLoading:P,children:(0,v.jsx)(d.Z,{form:l,layout:"vertical",name:"edit_name_modal",children:(0,v.jsx)(d.Z.Item,{name:"name",rules:[{required:!0,message:c.ZP.get("请输入新名称")}],children:(0,v.jsx)(h.Z,{placeholder:c.ZP.get("请输入新名称")})})})})}},68793:function(e,t,n){"use strict";n.r(t);var r=n(25359),a=n.n(r),i=n(57213),o=n.n(i),l=n(49811),s=n.n(l),c=n(54306),u=n.n(c),d=n(88265),p=n(63313),g=n(67393),h=n(9835),f=n(84163),m=n(22159),v=n(57229),Z=n(15207),b=n(11527);t.default=function(e){var t=e.file,n=e.handleCancel,r=e.visible,i=g.Z.useForm(),l=u()(i,1)[0],c=(0,p.useState)(!1),P=u()(c,2),y=P[0],k=P[1],x=function(){var e=s()(a()().mark((function e(r){var i;return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:k(!0),i=o()(o()(o()({},t),r),{},{originFilename:t.title}),v.W.post("".concat(Z.Z.apiPrefix,"scripts"),i).then((function(e){var t=e.code,r=e.data;200===t&&(h.ZP.success(d.ZP.get("保存文件成功")),n(r))})).finally((function(){k(!1)}));case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return(0,p.useEffect)((function(){l.resetFields(),k(!1)}),[t,r]),(0,b.jsx)(f.Z,{title:d.ZP.get("保存文件"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){l.validateFields().then((function(e){x(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return n()},confirmLoading:y,children:(0,b.jsxs)(g.Z,{form:l,layout:"vertical",name:"script_modal",initialValues:{filename:null==t?void 0:t.title,path:(null==t?void 0:t.parent)||""},children:[(0,b.jsx)(g.Z.Item,{name:"filename",label:d.ZP.get("文件名"),rules:[{required:!0,message:d.ZP.get("请输入文件名")}],children:(0,b.jsx)(m.Z,{placeholder:d.ZP.get("请输入文件名")})}),(0,b.jsx)(g.Z.Item,{name:"path",label:d.ZP.get("保存目录"),children:(0,b.jsx)(m.Z,{placeholder:d.ZP.get("请输入保存目录,默认scripts目录")})})]})})}},12417:function(e,t,n){"use strict";n.r(t);n(25359),n(57213),n(49811);var r=n(54306),a=n.n(r),i=n(88265),o=n(63313),l=n(67393),s=(n(9835),n(84163)),c=n(22159),u=(n(57229),n(15207),n(11527));t.default=function(e){var t=e.file,n=e.handleCancel,r=e.visible,d=l.Z.useForm(),p=a()(d,1)[0],g=(0,o.useState)(!1),h=a()(g,2),f=(h[0],h[1]);return(0,o.useEffect)((function(){p.resetFields(),f(!1)}),[t,r]),(0,u.jsx)(s.Z,{title:i.ZP.get("运行设置"),open:r,forceRender:!0,centered:!0,onCancel:function(){return n()},children:(0,u.jsx)(l.Z,{form:p,layout:"vertical",name:"setting_modal",initialValues:t,children:(0,u.jsx)(l.Z.Item,{name:"filename",label:i.ZP.get("待开发"),rules:[{required:!0,message:i.ZP.get("待开发")}],children:(0,u.jsx)(c.Z,{placeholder:i.ZP.get("待开发")})})})})}},15207:function(e,t,n){"use strict";var r=n(88265),a=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),apiPrefix:"".concat(a,"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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://github.com/nodemailer/nodemailer/blob/master/lib/well-known/services.json"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("SMTP 登录密码,也可能为特殊口令,视具体邮件服务商说明而定"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.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:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},3094:function(e,t,n){"use strict";n.d(t,{F:function(){return s},e:function(){return l}});var r=n(54306),a=n.n(r),i=n(63313),o=n(40141),l=function(){var e=(0,i.useState)("100%"),t=a()(e,2),n=t[0],r=t[1],l=(0,i.useState)(0),s=a()(l,2),c=s[0],u=s[1],d=(0,i.useState)(-48),p=a()(d,2),g=p[0],h=p[1],f=(0,i.useState)(!1),m=a()(f,2),v=m[0],Z=m[1],b=(0,i.useMemo)((function(){return(0,o.ZP)()}),[]).platform;return(0,i.useEffect)((function(){"mobile"===b&&document.body.offsetWidth<768?(r("auto"),u(0),h(0),Z(!0),document.body.setAttribute("data-mode","phone")):(r("100%"),u(0),h(-48),Z(!1),document.body.setAttribute("data-mode","desktop"))}),[]),{headerStyle:{padding:"4px 16px 4px 15px",position:"sticky",top:0,left:0,zIndex:20,marginTop:g,width:n,marginLeft:c},isPhone:v}},s=function(){var e=(0,i.useState)(),t=a()(e,2),n=t[0],r=t[1];return(0,i.useEffect)((function(){var e=window.matchMedia("(prefers-color-scheme: dark)"),t=localStorage.getItem("qinglong_dark_theme"),n=e.matches&&"light"!==t||"dark"===t;r(n?"vs-dark":"vs");var a=function(e){"auto"!==t&&t||(e.matches?r("vs-dark"):r("vs"))};"function"==typeof e.addEventListener?e.addEventListener("change",a):"function"==typeof e.addListener&&e.addListener(a)}),[]),{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;r(n?"vs-dark":"vs")}}}},57229:function(e,t,n){"use strict";n.d(t,{W:function(){return f}});var r=n(25359),a=n.n(r),i=n(49811),o=n.n(i),l=n(88265),s=n(9835),c=n(15207),u=n(14851),d=n(73669);s.ZP.config({duration:2});var p=Date.now(),g=d.Z.create({timeout:6e4,params:{t:p}}),h=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];g.interceptors.request.use((function(e){var t=localStorage.getItem(c.Z.authKey);return t&&!h.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),g.interceptors.response.use(function(){var e=o()(a()().mark((function e(t){var n,r,i;return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.status,![502,504].includes(n)){e.next=5;break}u.history.push("/error"),e.next=18;break;case 5:if(401!==n){e.next=9;break}"/login"!==u.history.location.pathname&&(localStorage.removeItem(c.Z.authKey),u.history.push("/login")),e.next=18;break;case 9:return e.prev=9,200!==(r=t.data).code&&(i=r.message||r.data)&&s.ZP.error({content:i,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,n=e.response.status;[502,504].includes(n)?u.history.push("/error"):401===n?"/login"!==u.history.location.pathname&&(s.ZP.error(l.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(c.Z.authKey),u.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var f=g},40141:function(e,t,n){"use strict";n.d(t,{ZP:function(){return c},I1:function(){return p},w7:function(){return d},DY:function(){return g},FA:function(){return f},rS:function(){return v},H$:function(){return Z},W9:function(){return u},x$:function(){return h}});var r=n(93525),a=n.n(r),i=n(88265),o={".py":"python",".js":"javascript",".mjs":"javascript",".sh":"shell",".ts":"typescript"},l=n(11186),s=n.n(l);function c(){var e=navigator.userAgent.toLowerCase(),t=function(t){return t.test(e)},n=function(t){return(e.match(t)||[]).toString().replace(/[^0-9|_.]/g,"").replace(/_/g,".")},r="unknow";t(/windows|win32|win64|wow32|wow64/g)?r="windows":t(/macintosh|macintel/g)?r="macos":t(/x11/g)?r="linux":t(/android|adr/g)?r="android":t(/ios|iphone|ipad|ipod|iwatch/g)&&(r="ios");var a="unknow";"windows"===r?t(/windows nt 5.0|windows 2000/g)?a="2000":t(/windows nt 5.1|windows xp/g)?a="xp":t(/windows nt 5.2|windows 2003/g)?a="2003":t(/windows nt 6.0|windows vista/g)?a="vista":t(/windows nt 6.1|windows 7/g)?a="7":t(/windows nt 6.2|windows 8/g)?a="8":t(/windows nt 6.3|windows 8.1/g)?a="8.1":t(/windows nt 10.0|windows 10/g)&&(a="10"):"macos"===r?a=n(/os x [\d._]+/g):"android"===r?a=n(/android [\d._]+/g):"ios"===r&&(a=n(/os [\d._]+/g));var i="unknow";"windows"===r||"macos"===r||"linux"===r?i="desktop":("android"===r||"ios"===r||t(/mobile/g))&&(i="mobile");var o="unknow",l="unknow";t(/applewebkit/g)?(o="webkit",t(/edge/g)?l="edge":t(/opr/g)?l="opera":t(/chrome/g)?l="chrome":t(/safari/g)&&(l="safari")):t(/gecko/g)&&t(/firefox/g)?(o="gecko",l="firefox"):t(/presto/g)?(o="presto",l="opera"):t(/trident|compatible|msie/g)&&(o="trident",l="iexplore");var s="unknow";"webkit"===o?s=n(/applewebkit\/[\d._]+/g):"gecko"===o?s=n(/gecko\/[\d._]+/g):"presto"===o?s=n(/presto\/[\d._]+/g):"trident"===o&&(s=n(/trident\/[\d._]+/g));var c="unknow";"chrome"===l?c=n(/chrome\/[\d._]+/g):"safari"===l?c=n(/version\/[\d._]+/g):"firefox"===l?c=n(/firefox\/[\d._]+/g):"opera"===l?c=n(/opr\/[\d._]+/g):"iexplore"===l?c=n(/(msie [\d._]+)|(rv:[\d._]+)/g):"edge"===l&&(c=n(/edge\/[\d._]+/g));var u="none",d="unknow";t(/micromessenger/g)?(u="wechat",d=n(/micromessenger\/[\d._]+/g)):t(/qqbrowser/g)?(u="qq",d=n(/qqbrowser\/[\d._]+/g)):t(/ucbrowser/g)?(u="uc",d=n(/ucbrowser\/[\d._]+/g)):t(/qihu 360se/g)?u="360":t(/2345explorer/g)?(u="2345",d=n(/2345explorer\/[\d._]+/g)):t(/metasr/g)?u="sougou":t(/lbbrowser/g)?u="liebao":t(/maxthon/g)&&(u="maxthon",d=n(/maxthon\/[\d._]+/g));var p=Object.assign({engine:o,engineVs:s,platform:i,supporter:l,supporterVs:c,system:r,systemVs:a},"none"===u?{}:{shell:u,shellVs:d});return console.log("%c\n .d88b. d888888b d8b db d888b db .d88b. d8b db d888b \n.8P Y8. `88' 888o 88 88' Y8b 88 .8P Y8. 888o 88 88' Y8b \n88 88 88 88V8o 88 88 88 88 88 88V8o 88 88 \n88 88 88 88 V8o88 88 ooo 88 88 88 88 V8o88 88 ooo \n`8P d8' .88. 88 V888 88. ~8~ 88booo. `8b d8' 88 V888 88. ~8~ \n `Y88'Y8 Y888888P VP V8P Y888P Y88888P `Y88P' VP V8P Y888P \n \n \n","color: blue;font-size: 14px;"),console.log("%c忘形雨笠烟蓑,知心牧唱樵歌。明月清风共我,闲人三个,从他今古消磨。\n","color: yellow;font-size: 18px;"),console.log("%c青龙运行环境:\n\n系统:".concat(p.system,"/").concat(p.systemVs,"\n浏览器:").concat(p.supporter,"/").concat(p.supporterVs,"\n内核:").concat(p.engine,"/").concat(p.engineVs),"color: green;font-size: 14px;font-weight: bold;"),p}function u(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.extraHeight,n=e.target;void 0===t&&(t=99);var r=null,a=0;(r=n||document.querySelector(".ant-table-wrapper"))&&(a=r.getBoundingClientRect().top);var i=document.body.clientHeight-a-t;return i}function d(e,t){var n,r,a=window.URL||window.webkitURL||window,i=new Blob([t]),o=document.createElementNS("http://www.w3.org/1999/xhtml","a");o.href=a.createObjectURL(i),o.download=e,n=o,(r=document.createEvent("MouseEvents")).initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),n.dispatchEvent(r)}function p(e,t,n){var r=a()(e),i=[];return function e(r){if(r)for(var a=0;a<(null==r?void 0:r.length);a++){if(t(r[a]))return n?void(r[a].children?r[a].children.unshift(n):r[a].children=[n]):void r.splice(a,1);r[a].children&&(i.push(r[a].key),e(r[a].children))}}(r),r}function g(e,t){var n;return function e(r){if(r)for(var a=0;a<(null==r?void 0:r.length);a++)t(r[a])?n=r[a]:r[a].children&&e(r[a].children)}(a()(e)),n}function h(e){return["     ",i.ZP.get("执行结束")].some((function(t){return e.includes(t)}))}function f(e){var t=e.split(" ");if("repo"===t[1]||"raw"===t[1])return t[2];var n=t.find((function(e){return[".js",".ts",".sh",".py"].some((function(t){return e.endsWith(t)}))}));if(n){var r,a;n.startsWith("/ql/data/scripts")&&(n=n.replace("/ql/data/scripts/",""));var i=n.lastIndexOf("/");return i>=0?(a=n.slice(i+1),r=n.slice(0,i)):(a=n,r=""),[a,r]}}function m(e){try{var t=s().parseExpression(e);if(t)return t.next().toDate()}catch(e){}return null}function v(e,t){var n=m(e);return null!=t&&t.length&&t.forEach((function(e){var t=m(e);t&&(!n||t<n)&&(n=t)})),n}function Z(e){var t=function(e){if(!e)return"";var t=e.split(".");return".".concat(t[t.length-1])}(e);return o[t]}},21758:function(e,t,n){"use strict";var r=n(93525),a=n.n(r),i=n(12342),o=n.n(i),l=n(25359),s=n.n(l),c=n(49811),u=n.n(c),d=n(21140),p=n.n(d),g=n(63466),h=n.n(g),f=n(52510),m=n.n(f),v=n(78078),Z=n.n(v),b=["type"],P=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};p()(this,e),m()(this,"url",void 0),m()(this,"socket",null),m()(this,"subscriptions",new Map),m()(this,"options",void 0),m()(this,"reconnectAttempts",0),m()(this,"heartbeatTimeout",null),m()(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 h()(e,[{key:"init",value:(n=u()(s()().mark((function e(){var t=this;return s()().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(Z())(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=u()(s()().mark((function e(){var t;return s()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((null===(t=this.socket)||void 0===t?void 0:t.readyState)===Z().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 r={action:"subscribe",topic:e};this.send(r)}}},{key:"unsubscribe",value:function(e,t){var n=this.subscriptions.get(e)||new Set;if(n.has(t)){n.delete(t);var r={action:"unsubscribe",topic:e};this.send(r)}}},{key:"send",value:function(e){var t;(null===(t=this.socket)||void 0===t?void 0:t.readyState)===Z().OPEN&&this.socket.send(JSON.stringify(e))}},{key:"dispatchMessage",value:function(e){var t=e.type,n=o()(e,b),r=this.subscriptions.get(t)||new Set;a()(r).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)===Z().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}();m()(P,"instance",null),t.Z=P},38433:function(){}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[9064],{38359:function(e,t,a){a.r(t);var r=a(25359),l=a.n(r),o=a(49811),i=a.n(o),n=a(54306),s=a.n(n),u=a(88265),p=a(63313),g=a(67393),c=a(9835),d=a(84163),P=a(22159),h=a(57229),b=a(15207),Z=a(11527);t.default=function(e){var t=e.currentNode,a=e.handleCancel,r=e.visible,o=g.Z.useForm(),n=s()(o,1)[0],m=(0,p.useState)(!1),k=s()(m,2),v=k[0],f=k[1],y=function(){var e=i()(l()().mark((function e(r){var o,i;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return f(!0),e.prev=1,e.next=4,h.W.put("".concat(b.Z.apiPrefix,"scripts/rename"),{filename:t.title,path:t.parent||"",newFilename:r.name});case 4:o=e.sent,i=o.code,o.data,200===i&&(c.ZP.success(u.ZP.get("更新名称成功")),a()),f(!1),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),f(!1);case 14:case"end":return e.stop()}}),e,null,[[1,11]])})));return function(t){return e.apply(this,arguments)}}();return(0,p.useEffect)((function(){n.resetFields()}),[t,r]),(0,Z.jsx)(d.Z,{title:u.ZP.get("重命名"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){n.validateFields().then((function(e){y(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return a()},confirmLoading:v,children:(0,Z.jsx)(g.Z,{form:n,layout:"vertical",name:"edit_name_modal",children:(0,Z.jsx)(g.Z.Item,{name:"name",rules:[{required:!0,message:u.ZP.get("请输入新名称")}],children:(0,Z.jsx)(P.Z,{placeholder:u.ZP.get("请输入新名称")})})})})}},15207:function(e,t,a){var r=a(88265),l=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),apiPrefix:"".concat(l,"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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://nodemailer.com/smtp/well-known/"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("邮箱SMTP授权码"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.ZP.get("请求头Content-Type"),required:!0,items:[{value:"application/json"},{value:"multipart/form-data"},{value:"application/x-www-form-urlencoded"}]},{label:"webhookUrl",tip:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return h}});var r=a(25359),l=a.n(r),o=a(49811),i=a.n(o),n=a(88265),s=a(9835),u=a(15207),p=a(14851),g=a(73669);s.ZP.config({duration:2});var c=Date.now(),d=g.Z.create({timeout:6e4,params:{t:c}}),P=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];d.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!P.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),d.interceptors.response.use(function(){var e=i()(l()().mark((function e(t){var a,r,o;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(o=r.message||r.data)&&s.ZP.error({content:o,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(n.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var h=d}}]);
1
+ "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[9064],{38359:function(e,t,a){a.r(t);var r=a(25359),l=a.n(r),i=a(49811),o=a.n(i),n=a(54306),s=a.n(n),u=a(88265),p=a(63313),g=a(67393),c=a(9835),d=a(84163),P=a(22159),h=a(57229),b=a(15207),Z=a(11527);t.default=function(e){var t=e.currentNode,a=e.handleCancel,r=e.visible,i=g.Z.useForm(),n=s()(i,1)[0],m=(0,p.useState)(!1),k=s()(m,2),v=k[0],f=k[1],y=function(){var e=o()(l()().mark((function e(r){var i,o;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return f(!0),e.prev=1,e.next=4,h.W.put("".concat(b.Z.apiPrefix,"scripts/rename"),{filename:t.title,path:t.parent||"",newFilename:r.name});case 4:i=e.sent,o=i.code,i.data,200===o&&(c.ZP.success(u.ZP.get("更新名称成功")),a()),f(!1),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),f(!1);case 14:case"end":return e.stop()}}),e,null,[[1,11]])})));return function(t){return e.apply(this,arguments)}}();return(0,p.useEffect)((function(){n.resetFields()}),[t,r]),(0,Z.jsx)(d.Z,{title:u.ZP.get("重命名"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){n.validateFields().then((function(e){y(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return a()},confirmLoading:v,children:(0,Z.jsx)(g.Z,{form:n,layout:"vertical",name:"edit_name_modal",children:(0,Z.jsx)(g.Z.Item,{name:"name",rules:[{required:!0,message:u.ZP.get("请输入新名称")}],children:(0,Z.jsx)(P.Z,{placeholder:u.ZP.get("请输入新名称")})})})})}},15207:function(e,t,a){var r=a(88265),l=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),apiPrefix:"".concat(l,"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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://github.com/nodemailer/nodemailer/blob/master/lib/well-known/services.json"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("SMTP 登录密码,也可能为特殊口令,视具体邮件服务商说明而定"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.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:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return h}});var r=a(25359),l=a.n(r),i=a(49811),o=a.n(i),n=a(88265),s=a(9835),u=a(15207),p=a(14851),g=a(73669);s.ZP.config({duration:2});var c=Date.now(),d=g.Z.create({timeout:6e4,params:{t:c}}),P=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];d.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!P.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),d.interceptors.response.use(function(){var e=o()(l()().mark((function e(t){var a,r,i;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(i=r.message||r.data)&&s.ZP.error({content:i,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(n.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var h=d}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[8673],{68793:function(e,t,a){a.r(t);var r=a(25359),l=a.n(r),i=a(57213),o=a.n(i),n=a(49811),s=a.n(n),u=a(54306),p=a.n(u),g=a(88265),c=a(63313),d=a(67393),P=a(9835),h=a(84163),b=a(22159),Z=a(57229),m=a(15207),k=a(11527);t.default=function(e){var t=e.file,a=e.handleCancel,r=e.visible,i=d.Z.useForm(),n=p()(i,1)[0],u=(0,c.useState)(!1),v=p()(u,2),f=v[0],y=v[1],x=function(){var e=s()(l()().mark((function e(r){var i;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:y(!0),i=o()(o()(o()({},t),r),{},{originFilename:t.title}),Z.W.post("".concat(m.Z.apiPrefix,"scripts"),i).then((function(e){var t=e.code,r=e.data;200===t&&(P.ZP.success(g.ZP.get("保存文件成功")),a(r))})).finally((function(){y(!1)}));case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return(0,c.useEffect)((function(){n.resetFields(),y(!1)}),[t,r]),(0,k.jsx)(h.Z,{title:g.ZP.get("保存文件"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){n.validateFields().then((function(e){x(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return a()},confirmLoading:f,children:(0,k.jsxs)(d.Z,{form:n,layout:"vertical",name:"script_modal",initialValues:{filename:null==t?void 0:t.title,path:(null==t?void 0:t.parent)||""},children:[(0,k.jsx)(d.Z.Item,{name:"filename",label:g.ZP.get("文件名"),rules:[{required:!0,message:g.ZP.get("请输入文件名")}],children:(0,k.jsx)(b.Z,{placeholder:g.ZP.get("请输入文件名")})}),(0,k.jsx)(d.Z.Item,{name:"path",label:g.ZP.get("保存目录"),children:(0,k.jsx)(b.Z,{placeholder:g.ZP.get("请输入保存目录,默认scripts目录")})})]})})}},15207:function(e,t,a){var r=a(88265),l=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),apiPrefix:"".concat(l,"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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://github.com/nodemailer/nodemailer/blob/master/lib/well-known/services.json"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("SMTP 登录密码,也可能为特殊口令,视具体邮件服务商说明而定"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.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:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return h}});var r=a(25359),l=a.n(r),i=a(49811),o=a.n(i),n=a(88265),s=a(9835),u=a(15207),p=a(14851),g=a(73669);s.ZP.config({duration:2});var c=Date.now(),d=g.Z.create({timeout:6e4,params:{t:c}}),P=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];d.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!P.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),d.interceptors.response.use(function(){var e=o()(l()().mark((function e(t){var a,r,i;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(i=r.message||r.data)&&s.ZP.error({content:i,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(n.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var h=d}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[440],{12417:function(e,t,a){a.r(t);a(25359),a(57213),a(49811);var r=a(54306),l=a.n(r),i=a(88265),o=a(63313),n=a(67393),s=(a(9835),a(84163)),u=a(22159),p=(a(57229),a(15207),a(11527));t.default=function(e){var t=e.file,a=e.handleCancel,r=e.visible,g=n.Z.useForm(),c=l()(g,1)[0],P=(0,o.useState)(!1),d=l()(P,2),h=(d[0],d[1]);return(0,o.useEffect)((function(){c.resetFields(),h(!1)}),[t,r]),(0,p.jsx)(s.Z,{title:i.ZP.get("运行设置"),open:r,forceRender:!0,centered:!0,onCancel:function(){return a()},children:(0,p.jsx)(n.Z,{form:c,layout:"vertical",name:"setting_modal",initialValues:t,children:(0,p.jsx)(n.Z.Item,{name:"filename",label:i.ZP.get("待开发"),rules:[{required:!0,message:i.ZP.get("待开发")}],children:(0,p.jsx)(u.Z,{placeholder:i.ZP.get("待开发")})})})})}},15207:function(e,t,a){var r=a(88265),l=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),apiPrefix:"".concat(l,"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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://nodemailer.com/smtp/well-known/"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("邮箱SMTP授权码"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.ZP.get("请求头Content-Type"),required:!0,items:[{value:"application/json"},{value:"multipart/form-data"},{value:"application/x-www-form-urlencoded"}]},{label:"webhookUrl",tip:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return h}});var r=a(25359),l=a.n(r),i=a(49811),o=a.n(i),n=a(88265),s=a(9835),u=a(15207),p=a(14851),g=a(73669);s.ZP.config({duration:2});var c=Date.now(),P=g.Z.create({timeout:6e4,params:{t:c}}),d=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];P.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!d.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),P.interceptors.response.use(function(){var e=o()(l()().mark((function e(t){var a,r,i;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(i=r.message||r.data)&&s.ZP.error({content:i,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(n.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var h=P}}]);
1
+ "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[440],{12417:function(e,t,a){a.r(t);a(25359),a(57213),a(49811);var r=a(54306),l=a.n(r),i=a(88265),o=a(63313),n=a(67393),s=(a(9835),a(84163)),u=a(22159),p=(a(57229),a(15207),a(11527));t.default=function(e){var t=e.file,a=e.handleCancel,r=e.visible,g=n.Z.useForm(),c=l()(g,1)[0],P=(0,o.useState)(!1),d=l()(P,2),h=(d[0],d[1]);return(0,o.useEffect)((function(){c.resetFields(),h(!1)}),[t,r]),(0,p.jsx)(s.Z,{title:i.ZP.get("运行设置"),open:r,forceRender:!0,centered:!0,onCancel:function(){return a()},children:(0,p.jsx)(n.Z,{form:c,layout:"vertical",name:"setting_modal",initialValues:t,children:(0,p.jsx)(n.Z.Item,{name:"filename",label:i.ZP.get("待开发"),rules:[{required:!0,message:i.ZP.get("待开发")}],children:(0,p.jsx)(u.Z,{placeholder:i.ZP.get("待开发")})})})})}},15207:function(e,t,a){var r=a(88265),l=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),apiPrefix:"".concat(l,"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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://github.com/nodemailer/nodemailer/blob/master/lib/well-known/services.json"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("SMTP 登录密码,也可能为特殊口令,视具体邮件服务商说明而定"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.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:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return h}});var r=a(25359),l=a.n(r),i=a(49811),o=a.n(i),n=a(88265),s=a(9835),u=a(15207),p=a(14851),g=a(73669);s.ZP.config({duration:2});var c=Date.now(),P=g.Z.create({timeout:6e4,params:{t:c}}),d=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];P.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!d.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),P.interceptors.response.use(function(){var e=o()(l()().mark((function e(t){var a,r,i;return l()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(i=r.message||r.data)&&s.ZP.error({content:i,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(n.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var h=P}}]);
@@ -1 +1 @@
1
- .container___nww32{display:flex;justify-content:center;flex-wrap:wrap;max-width:800px;margin:20px auto}.container___nww32 .right___o0xXT{display:flex;justify-content:center;flex-direction:column}.container___nww32 .right___o0xXT .title___DHxWh{font-size:25px;margin-bottom:10px}.container___nww32 .right___o0xXT .desc___frhI6{margin-bottom:10px}.container___nww32 .right___o0xXT .ant-descriptions-row>th,.container___nww32 .right___o0xXT .ant-descriptions-row>td{padding-bottom:10px}
1
+ .container___nww32{display:flex;justify-content:center;flex-wrap:wrap;max-width:800px;margin:20px auto}.container___nww32 .right___o0xXT{display:flex;justify-content:center;flex-direction:column}.container___nww32 .right___o0xXT .title___DHxWh{font-size:25px;margin-bottom:10px}.container___nww32 .right___o0xXT .desc___frhI6{margin-bottom:10px}.container___nww32 .right___o0xXT .ant-descriptions-row>th,.container___nww32 .right___o0xXT .ant-descriptions-row>td{padding-bottom:10px}.dependence-config-wrapper___MFabM{display:flex;gap:40px}
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[2313],{32659:function(e,t,a){a.r(t);var r=a(25359),o=a.n(r),l=a(57213),i=a.n(l),n=a(49811),s=a.n(n),u=a(54306),p=a.n(u),c=a(88265),g=a(63313),d=a(67393),h=a(9835),m=a(84163),P=a(22159),b=a(28756),Z=a(57229),f=a(15207),v=a(11527);t.default=function(e){var t=e.app,a=e.handleCancel,r=e.visible,l=d.Z.useForm(),n=p()(l,1)[0],u=(0,g.useState)(!1),k=p()(u,2),y=k[0],x=k[1],w=function(){var e=s()(o()().mark((function e(r){var l,n,s,u,p;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return x(!0),l=t?"put":"post",n=i()({},r),t&&(n.id=t.id),e.prev=4,e.next=7,Z.W[l]("".concat(f.Z.apiPrefix,"apps"),n);case 7:s=e.sent,u=s.code,p=s.data,200===u&&(h.ZP.success(t?c.ZP.get("更新应用成功"):c.ZP.get("创建应用成功")),a(p)),x(!1),e.next=17;break;case 14:e.prev=14,e.t0=e.catch(4),x(!1);case 17:case"end":return e.stop()}}),e,null,[[4,14]])})));return function(t){return e.apply(this,arguments)}}();return(0,g.useEffect)((function(){n.resetFields()}),[t,r]),(0,v.jsx)(m.Z,{title:t?c.ZP.get("编辑应用"):c.ZP.get("创建应用"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){n.validateFields().then((function(e){w(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return a()},confirmLoading:y,children:(0,v.jsxs)(d.Z,{form:n,layout:"vertical",name:"form_app_modal",initialValues:t,children:[(0,v.jsx)(d.Z.Item,{name:"name",label:c.ZP.get("名称"),rules:[{validator:function(e,t){return["system"].includes(t)?Promise.reject(new Error(c.ZP.get("名称不能为保留关键字"))):Promise.resolve()}}],children:(0,v.jsx)(P.Z,{placeholder:c.ZP.get("请输入应用名称")})}),(0,v.jsx)(d.Z.Item,{name:"scopes",label:c.ZP.get("权限"),rules:[{required:!0}],children:(0,v.jsx)(b.Z,{mode:"multiple",placeholder:c.ZP.get("请选择模块权限"),allowClear:!0,style:{width:"100%"},children:f.Z.scopes.map((function(e){return(0,v.jsx)(b.Z.Option,{value:e.value,children:e.name},e.value)}))})})]})})}},15207:function(e,t,a){var r=a(88265),o=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://nodemailer.com/smtp/well-known/"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("邮箱SMTP授权码"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.ZP.get("请求头Content-Type"),required:!0,items:[{value:"application/json"},{value:"multipart/form-data"},{value:"application/x-www-form-urlencoded"}]},{label:"webhookUrl",tip:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return m}});var r=a(25359),o=a.n(r),l=a(49811),i=a.n(l),n=a(88265),s=a(9835),u=a(15207),p=a(14851),c=a(73669);s.ZP.config({duration:2});var g=Date.now(),d=c.Z.create({timeout:6e4,params:{t:g}}),h=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];d.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!h.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),d.interceptors.response.use(function(){var e=i()(o()().mark((function e(t){var a,r,l;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(l=r.message||r.data)&&s.ZP.error({content:l,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(n.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var m=d},28756:function(e,t,a){var r=a(22481),o=a(88028),l=a(84875),i=a.n(l),n=a(40804),s=a(54331),u=a(63313),p=a(82259),c=a(23474),g=a(7893),d=a(65189),h=a(76737),m=a(16082),P=a(1020),b=a(91967),Z=a(60934),f=function(e,t){var a={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(a[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(a[r[o]]=e[r[o]])}return a},v="SECRET_COMBOBOX_MODE_DO_NOT_USE",k=function(e,t){var a,l,k=e.prefixCls,y=e.bordered,x=void 0===y||y,w=e.className,C=e.getPopupContainer,q=e.dropdownClassName,_=e.popupClassName,B=e.listHeight,I=void 0===B?256:B,O=e.placement,S=e.listItemHeight,T=void 0===S?24:S,E=e.size,H=e.disabled,M=e.notFoundContent,K=e.status,A=e.showArrow,U=f(e,["prefixCls","bordered","className","getPopupContainer","dropdownClassName","popupClassName","listHeight","placement","listItemHeight","size","disabled","notFoundContent","status","showArrow"]),X=u.useContext(p.E_),N=X.getPopupContainer,Q=X.getPrefixCls,R=X.renderEmpty,j=X.direction,W=X.virtual,D=X.dropdownMatchSelectWidth,F=u.useContext(d.Z),G=Q("select",k),L=Q(),z=(0,Z.ri)(G,j),$=z.compactSize,V=z.compactItemClassnames,Y=u.useMemo((function(){var e=U.mode;if("combobox"!==e)return e===v?"combobox":e}),[U.mode]),J="multiple"===Y||"tags"===Y,ee=void 0!==A?A:U.loading||!(J||"combobox"===Y),te=(0,u.useContext)(h.aM),ae=te.status,re=te.hasFeedback,oe=te.isFormItemInput,le=te.feedbackIcon,ie=(0,P.F)(ae,K);l=void 0!==M?M:"combobox"===Y?null:(R||c.Z)("Select");var ne=(0,b.Z)((0,o.Z)((0,o.Z)({},U),{multiple:J,hasFeedback:re,feedbackIcon:le,showArrow:ee,prefixCls:G})),se=ne.suffixIcon,ue=ne.itemIcon,pe=ne.removeIcon,ce=ne.clearIcon,ge=(0,s.Z)(U,["suffixIcon","itemIcon"]),de=i()(_||q,(0,r.Z)({},"".concat(G,"-dropdown-").concat(j),"rtl"===j)),he=$||E||F,me=u.useContext(g.Z),Pe=null!=H?H:me,be=i()((a={},(0,r.Z)(a,"".concat(G,"-lg"),"large"===he),(0,r.Z)(a,"".concat(G,"-sm"),"small"===he),(0,r.Z)(a,"".concat(G,"-rtl"),"rtl"===j),(0,r.Z)(a,"".concat(G,"-borderless"),!x),(0,r.Z)(a,"".concat(G,"-in-form-item"),oe),a),(0,P.Z)(G,ie,re),V,w);return u.createElement(n.ZP,(0,o.Z)({ref:t,virtual:W,dropdownMatchSelectWidth:D},ge,{transitionName:(0,m.mL)(L,(0,m.q0)(O),U.transitionName),listHeight:I,listItemHeight:T,mode:Y,prefixCls:G,placement:void 0!==O?O:"rtl"===j?"bottomRight":"bottomLeft",direction:j,inputIcon:se,menuItemSelectedIcon:ue,removeIcon:pe,clearIcon:ce,notFoundContent:l,className:be,getPopupContainer:C||N,dropdownClassName:de,showArrow:re||A,disabled:Pe}))},y=u.forwardRef(k);y.SECRET_COMBOBOX_MODE_DO_NOT_USE=v,y.Option=n.Wx,y.OptGroup=n.Xo,t.Z=y}}]);
1
+ "use strict";(self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[2313],{32659:function(e,t,a){a.r(t);var r=a(25359),o=a.n(r),l=a(57213),i=a.n(l),n=a(49811),s=a.n(n),u=a(54306),p=a.n(u),c=a(88265),g=a(63313),d=a(67393),h=a(9835),m=a(84163),P=a(22159),b=a(28756),Z=a(57229),v=a(15207),f=a(11527);t.default=function(e){var t=e.app,a=e.handleCancel,r=e.visible,l=d.Z.useForm(),n=p()(l,1)[0],u=(0,g.useState)(!1),k=p()(u,2),y=k[0],x=k[1],w=function(){var e=s()(o()().mark((function e(r){var l,n,s,u,p;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return x(!0),l=t?"put":"post",n=i()({},r),t&&(n.id=t.id),e.prev=4,e.next=7,Z.W[l]("".concat(v.Z.apiPrefix,"apps"),n);case 7:s=e.sent,u=s.code,p=s.data,200===u&&(h.ZP.success(t?c.ZP.get("更新应用成功"):c.ZP.get("创建应用成功")),a(p)),x(!1),e.next=17;break;case 14:e.prev=14,e.t0=e.catch(4),x(!1);case 17:case"end":return e.stop()}}),e,null,[[4,14]])})));return function(t){return e.apply(this,arguments)}}();return(0,g.useEffect)((function(){n.resetFields()}),[t,r]),(0,f.jsx)(m.Z,{title:t?c.ZP.get("编辑应用"):c.ZP.get("创建应用"),open:r,forceRender:!0,centered:!0,maskClosable:!1,onOk:function(){n.validateFields().then((function(e){w(e)})).catch((function(e){console.log("Validate Failed:",e)}))},onCancel:function(){return a()},confirmLoading:y,children:(0,f.jsxs)(d.Z,{form:n,layout:"vertical",name:"form_app_modal",initialValues:t,children:[(0,f.jsx)(d.Z.Item,{name:"name",label:c.ZP.get("名称"),rules:[{validator:function(e,t){return["system"].includes(t)?Promise.reject(new Error(c.ZP.get("名称不能为保留关键字"))):Promise.resolve()}}],children:(0,f.jsx)(P.Z,{placeholder:c.ZP.get("请输入应用名称")})}),(0,f.jsx)(d.Z.Item,{name:"scopes",label:c.ZP.get("权限"),rules:[{required:!0}],children:(0,f.jsx)(b.Z,{mode:"multiple",placeholder:c.ZP.get("请选择模块权限"),allowClear:!0,style:{width:"100%"},children:v.Z.scopes.map((function(e){return(0,f.jsx)(b.Z.Option,{value:e.value,children:e.name},e.value)}))})})]})})}},15207:function(e,t,a){var r=a(88265),o=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://github.com/nodemailer/nodemailer/blob/master/lib/well-known/services.json"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("SMTP 登录密码,也可能为特殊口令,视具体邮件服务商说明而定"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.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:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,a){a.d(t,{W:function(){return m}});var r=a(25359),o=a.n(r),l=a(49811),i=a.n(l),n=a(88265),s=a(9835),u=a(15207),p=a(14851),c=a(73669);s.ZP.config({duration:2});var g=Date.now(),d=c.Z.create({timeout:6e4,params:{t:g}}),h=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];d.interceptors.request.use((function(e){var t=localStorage.getItem(u.Z.authKey);return t&&!h.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),d.interceptors.response.use(function(){var e=i()(o()().mark((function e(t){var a,r,l;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.status,![502,504].includes(a)){e.next=5;break}p.history.push("/error"),e.next=18;break;case 5:if(401!==a){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!==(r=t.data).code&&(l=r.message||r.data)&&s.ZP.error({content:l,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,a=e.response.status;[502,504].includes(a)?p.history.push("/error"):401===a?"/login"!==p.history.location.pathname&&(s.ZP.error(n.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(u.Z.authKey),p.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var m=d},28756:function(e,t,a){var r=a(22481),o=a(88028),l=a(84875),i=a.n(l),n=a(40804),s=a(54331),u=a(63313),p=a(82259),c=a(23474),g=a(7893),d=a(65189),h=a(76737),m=a(16082),P=a(1020),b=a(91967),Z=a(60934),v=function(e,t){var a={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(a[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(a[r[o]]=e[r[o]])}return a},f="SECRET_COMBOBOX_MODE_DO_NOT_USE",k=function(e,t){var a,l,k=e.prefixCls,y=e.bordered,x=void 0===y||y,w=e.className,C=e.getPopupContainer,q=e.dropdownClassName,_=e.popupClassName,B=e.listHeight,I=void 0===B?256:B,O=e.placement,S=e.listItemHeight,T=void 0===S?24:S,E=e.size,H=e.disabled,M=e.notFoundContent,K=e.status,A=e.showArrow,U=v(e,["prefixCls","bordered","className","getPopupContainer","dropdownClassName","popupClassName","listHeight","placement","listItemHeight","size","disabled","notFoundContent","status","showArrow"]),X=u.useContext(p.E_),j=X.getPopupContainer,N=X.getPrefixCls,Q=X.renderEmpty,R=X.direction,W=X.virtual,D=X.dropdownMatchSelectWidth,F=u.useContext(d.Z),G=N("select",k),L=N(),z=(0,Z.ri)(G,R),$=z.compactSize,V=z.compactItemClassnames,Y=u.useMemo((function(){var e=U.mode;if("combobox"!==e)return e===f?"combobox":e}),[U.mode]),J="multiple"===Y||"tags"===Y,ee=void 0!==A?A:U.loading||!(J||"combobox"===Y),te=(0,u.useContext)(h.aM),ae=te.status,re=te.hasFeedback,oe=te.isFormItemInput,le=te.feedbackIcon,ie=(0,P.F)(ae,K);l=void 0!==M?M:"combobox"===Y?null:(Q||c.Z)("Select");var ne=(0,b.Z)((0,o.Z)((0,o.Z)({},U),{multiple:J,hasFeedback:re,feedbackIcon:le,showArrow:ee,prefixCls:G})),se=ne.suffixIcon,ue=ne.itemIcon,pe=ne.removeIcon,ce=ne.clearIcon,ge=(0,s.Z)(U,["suffixIcon","itemIcon"]),de=i()(_||q,(0,r.Z)({},"".concat(G,"-dropdown-").concat(R),"rtl"===R)),he=$||E||F,me=u.useContext(g.Z),Pe=null!=H?H:me,be=i()((a={},(0,r.Z)(a,"".concat(G,"-lg"),"large"===he),(0,r.Z)(a,"".concat(G,"-sm"),"small"===he),(0,r.Z)(a,"".concat(G,"-rtl"),"rtl"===R),(0,r.Z)(a,"".concat(G,"-borderless"),!x),(0,r.Z)(a,"".concat(G,"-in-form-item"),oe),a),(0,P.Z)(G,ie,re),V,w);return u.createElement(n.ZP,(0,o.Z)({ref:t,virtual:W,dropdownMatchSelectWidth:D},ge,{transitionName:(0,m.mL)(L,(0,m.q0)(O),U.transitionName),listHeight:I,listItemHeight:T,mode:Y,prefixCls:G,placement:void 0!==O?O:"rtl"===R?"bottomRight":"bottomLeft",direction:R,inputIcon:se,menuItemSelectedIcon:ue,removeIcon:pe,clearIcon:ce,notFoundContent:l,className:be,getPopupContainer:C||j,dropdownClassName:de,showArrow:re||A,disabled:Pe}))},y=u.forwardRef(k);y.SECRET_COMBOBOX_MODE_DO_NOT_USE=f,y.Option=n.Wx,y.OptGroup=n.Xo,t.Z=y}}]);
@@ -1 +1 @@
1
- .container{display:flex;justify-content:center;flex-wrap:wrap;max-width:800px;margin:20px auto}.container .right{display:flex;justify-content:center;flex-direction:column}.container .right .title{font-size:25px;margin-bottom:10px}.container .right .desc{margin-bottom:10px}.container .right :global .ant-descriptions-row>th,.container .right :global .ant-descriptions-row>td{padding-bottom:10px}
1
+ .container{display:flex;justify-content:center;flex-wrap:wrap;max-width:800px;margin:20px auto}.container .right{display:flex;justify-content:center;flex-direction:column}.container .right .title{font-size:25px;margin-bottom:10px}.container .right .desc{margin-bottom:10px}.container .right :global .ant-descriptions-row>th,.container .right :global .ant-descriptions-row>td{padding-bottom:10px}.dependence-config-wrapper{display:flex;gap:40px}
@@ -0,0 +1 @@
1
+ (self.webpackChunk_whyour_qinglong=self.webpackChunk_whyour_qinglong||[]).push([[6877],{27609:function(e,t,n){"use strict";n.r(t);var r=n(57213),o=n.n(r),i=n(54306),a=n.n(i),u=n(88265),s=n(63313),l=n(67393),c=n(9835),p=n(22159),h=n(24378),f=n(15207),d=n(57229),g=(n(10761),n(99120)),v=n.n(g),y=n(19334),b=n.n(y),x=n(21758),m=n(11527),P={"dependence-proxy":"dependenceProxy","node-mirror":"nodeMirror","python-mirror":"pythonMirror","linux-mirror":"linuxMirror"};t.default=function(){var e=(0,s.useState)(),t=a()(e,2),n=t[0],r=t[1],i=l.Z.useForm(),g=a()(i,1)[0],y=(0,s.useState)(""),Z=a()(y,2),k=Z[0],_=Z[1],w=(0,s.useState)(!1),q=a()(w,2),C=q[0],j=q[1],S=function(e){j(!0),_("in progress...\n"),d.W.put("".concat(f.Z.apiPrefix,"system/config/").concat(e),b()(n,P[e])).then((function(e){})).catch((function(e){console.log(e)}))},B=function(e){j(!0),_(""),d.W.put("".concat(f.Z.apiPrefix,"system/config/").concat(e),b()(n,P[e])).then((function(e){var t=e.code;e.data;200===t&&c.ZP.success(u.ZP.get("更新成功"))})).catch((function(e){console.log(e)})).finally((function(){return j(!1)}))},M=function(e){var t=e.message;_((function(e){return"".concat(e).concat(t)})),(t.includes("update node mirror end")||t.includes("update linux mirror end"))&&j(!1)};return(0,s.useEffect)((function(){var e=x.Z.getInstance();return e.subscribe("updateNodeMirror",M),e.subscribe("updateLinuxMirror",M),function(){e.subscribe("updateNodeMirror",M),e.unsubscribe("updateLinuxMirror",M)}}),[]),(0,s.useEffect)((function(){d.W.get("".concat(f.Z.apiPrefix,"system/config")).then((function(e){var t=e.code,n=e.data;200===t&&n.info&&r(n.info)})).catch((function(e){console.log(e)}))}),[]),(0,m.jsxs)("div",{className:"dependence-config-wrapper",children:[(0,m.jsxs)(l.Z,{layout:"vertical",form:g,style:{flexShrink:0},children:[(0,m.jsx)(l.Z.Item,{label:u.ZP.get("代理"),name:"proxy",extra:u.ZP.get("代理与镜像源二选一即可"),children:(0,m.jsxs)(p.Z.Group,{compact:!0,children:[(0,m.jsx)(p.Z,{placeholder:u.ZP.get("代理地址, 支持HTTP(S)/SOCK5"),style:{width:360},value:null==n?void 0:n.dependenceProxy,onChange:function(e){r(o()(o()({},n),{},{dependenceProxy:e.target.value}))}}),(0,m.jsx)(h.Z,{type:"primary",loading:C,onClick:function(){B("dependence-proxy")},style:{width:100},children:u.ZP.get("确认")})]})}),(0,m.jsx)(l.Z.Item,{label:u.ZP.get("Node 软件包镜像源"),name:"node",children:(0,m.jsxs)(p.Z.Group,{compact:!0,children:[(0,m.jsx)(p.Z,{style:{width:360},placeholder:u.ZP.get("NPM 镜像源"),value:null==n?void 0:n.nodeMirror,onChange:function(e){r(o()(o()({},n),{},{nodeMirror:e.target.value}))}}),(0,m.jsx)(h.Z,{type:"primary",loading:C,onClick:function(){S("node-mirror")},style:{width:100},children:u.ZP.get("确认")})]})}),(0,m.jsx)(l.Z.Item,{label:u.ZP.get("Python 软件包镜像源"),name:"python",children:(0,m.jsxs)(p.Z.Group,{compact:!0,children:[(0,m.jsx)(p.Z,{style:{width:360},placeholder:u.ZP.get("PyPI 镜像源"),value:null==n?void 0:n.pythonMirror,onChange:function(e){r(o()(o()({},n),{},{pythonMirror:e.target.value}))}}),(0,m.jsx)(h.Z,{type:"primary",loading:C,onClick:function(){B("python-mirror")},style:{width:100},children:u.ZP.get("确认")})]})}),(0,m.jsx)(l.Z.Item,{label:u.ZP.get("Linux 软件包镜像源"),name:"linux",children:(0,m.jsxs)(p.Z.Group,{compact:!0,children:[(0,m.jsx)(p.Z,{style:{width:360},placeholder:u.ZP.get("debian linux 镜像源, 例如 http://deb.debian.org"),value:null==n?void 0:n.linuxMirror,onChange:function(e){r(o()(o()({},n),{},{linuxMirror:e.target.value}))}}),(0,m.jsx)(h.Z,{type:"primary",loading:C,onClick:function(){S("linux-mirror")},style:{width:100},children:u.ZP.get("确认")})]})})]}),(0,m.jsx)("pre",{style:{fontFamily:"Source Code Pro",zoom:.83,maxHeight:"100%",overflowY:"auto"},children:(0,m.jsx)(v(),{children:k})})]})}},15207:function(e,t,n){"use strict";var r=n(88265),o=window.__ENV__QlBaseUrl||"/";t.Z={siteName:r.ZP.get("青龙"),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:r.ZP.get("中文"),flag:"/china.svg"}],defaultLanguage:"en"},scopes:[{name:r.ZP.get("定时任务"),value:"crons"},{name:r.ZP.get("环境变量"),value:"envs"},{name:r.ZP.get("订阅管理"),value:"subscriptions"},{name:r.ZP.get("配置文件"),value:"configs"},{name:r.ZP.get("脚本管理"),value:"scripts"},{name:r.ZP.get("日志管理"),value:"logs"},{name:r.ZP.get("依赖管理"),value:"dependencies"},{name:r.ZP.get("系统信息"),value:"system"}],scopesMap:{crons:r.ZP.get("定时任务"),envs:r.ZP.get("环境变量"),subscriptions:r.ZP.get("订阅管理"),configs:r.ZP.get("配置文件"),scripts:r.ZP.get("脚本管理"),logs:r.ZP.get("日志管理"),dependencies:r.ZP.get("依赖管理"),system:r.ZP.get("系统信息")},notificationModes:[{value:"gotify",label:"Gotify"},{value:"goCqHttpBot",label:"GoCqHttpBot"},{value:"serverChan",label:r.ZP.get("Server酱")},{value:"pushDeer",label:"PushDeer"},{value:"bark",label:"Bark"},{value:"telegramBot",label:r.ZP.get("Telegram机器人")},{value:"dingtalkBot",label:r.ZP.get("钉钉机器人")},{value:"weWorkBot",label:r.ZP.get("企业微信机器人")},{value:"weWorkApp",label:r.ZP.get("企业微信应用")},{value:"aibotk",label:r.ZP.get("智能微秘书")},{value:"iGot",label:"IGot"},{value:"pushPlus",label:"PushPlus"},{value:"chat",label:r.ZP.get("群晖chat")},{value:"email",label:r.ZP.get("邮箱")},{value:"lark",label:r.ZP.get("飞书机器人")},{value:"pushMe",label:"PushMe"},{value:"chronocat",label:"Chronocat"},{value:"webhook",label:r.ZP.get("自定义通知")},{value:"closed",label:r.ZP.get("已关闭")}],notificationModeMap:{gotify:[{label:"gotifyUrl",tip:r.ZP.get("gotify的url地址,例如 https://push.example.de:8080"),required:!0},{label:"gotifyToken",tip:r.ZP.get("gotify的消息应用token码"),required:!0},{label:"gotifyPriority",tip:r.ZP.get("推送消息的优先级")}],chat:[{label:"chatUrl",tip:r.ZP.get("chat的url地址"),required:!0},{label:"chatToken",tip:r.ZP.get("chat的token码"),required:!0}],goCqHttpBot:[{label:"goCqHttpBotUrl",tip:r.ZP.get("推送到个人QQ: http://127.0.0.1/send_private_msg,群:http://127.0.0.1/send_group_msg"),required:!0},{label:"goCqHttpBotToken",tip:r.ZP.get("访问密钥"),required:!0},{label:"goCqHttpBotQq",tip:r.ZP.get("如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群"),required:!0}],serverChan:[{label:"serverChanKey",tip:r.ZP.get("Server酱SENDKEY"),required:!0}],pushDeer:[{label:"pushDeerKey",tip:r.ZP.get("PushDeer的Key,https://github.com/easychen/pushdeer"),required:!0},{label:"pushDeerUrl",tip:r.ZP.get("PushDeer的自架API endpoint,默认是 https://api2.pushdeer.com/message/push")}],bark:[{label:"barkPush",tip:r.ZP.get("Bark的信息IP/设备码,例如:https://api.day.app/XXXXXXXX"),required:!0},{label:"barkIcon",tip:r.ZP.get("BARK推送图标,自定义推送图标 (需iOS15或以上才能显示)")},{label:"barkSound",tip:r.ZP.get("BARK推送铃声,铃声列表去APP查看复制填写")},{label:"barkGroup",tip:r.ZP.get("BARK推送消息的分组,默认为qinglong")},{label:"barkLevel",tip:r.ZP.get("BARK推送消息的时效性,默认为active")},{label:"barkUrl",tip:r.ZP.get("BARK推送消息的跳转URL")}],telegramBot:[{label:"telegramBotToken",tip:r.ZP.get("telegram机器人的token,例如:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw"),required:!0},{label:"telegramBotUserId",tip:r.ZP.get("telegram用户的id,例如:129xxx206"),required:!0},{label:"telegramBotProxyHost",tip:r.ZP.get("代理IP")},{label:"telegramBotProxyPort",tip:r.ZP.get("代理端口")},{label:"telegramBotProxyAuth",tip:r.ZP.get("telegram代理配置认证参数,用户名与密码用英文冒号连接 user:password")},{label:"telegramBotApiHost",tip:r.ZP.get("telegram api自建的反向代理地址,默认tg官方api")}],dingtalkBot:[{label:"dingtalkBotToken",tip:r.ZP.get("钉钉机器人webhook token,例如:5a544165465465645d0f31dca676e7bd07415asdasd"),required:!0},{label:"dingtalkBotSecret",tip:r.ZP.get("密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串")}],weWorkBot:[{label:"weWorkBotKey",tip:r.ZP.get("企业微信机器人的webhook(详见文档 https://work.weixin.qq.com/api/doc/90000/90136/91770),例如:693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],weWorkApp:[{label:"weWorkAppKey",tip:r.ZP.get("corpid、corpsecret、touser(注:多个成员ID使用|隔开)、agentid、消息类型(选填,不填默认文本消息类型) 注意用,号隔开(英文输入法的逗号),例如:wwcfrs,B-76WERQ,qinglong,1000001,2COat"),required:!0},{label:"weWorkOrigin",tip:r.ZP.get("企业微信代理地址")}],aibotk:[{label:"aibotkKey",tip:r.ZP.get("密钥key,智能微秘书个人中心获取apikey,申请地址:https://wechat.aibotk.com/signup?from=ql"),required:!0},{label:"aibotkType",tip:r.ZP.get("发送的目标,群组或者好友"),required:!0,placeholder:r.ZP.get("请输入要发送的目标"),items:[{value:"room",label:r.ZP.get("群聊")},{value:"contact",label:r.ZP.get("好友")}]},{label:"aibotkName",tip:r.ZP.get("要发送的用户昵称或群名,如果目标是群,需要填群名,如果目标是好友,需要填好友昵称"),required:!0}],iGot:[{label:"iGotPushKey",tip:r.ZP.get("iGot的信息推送key,例如:https://push.hellyw.com/XXXXXXXX"),required:!0}],pushPlus:[{label:"pushPlusToken",tip:r.ZP.get("微信扫码登录后一对一推送或一对多推送下面的token(您的Token),不提供PUSH_PLUS_USER则默认为一对一推送,参考 https://www.pushplus.plus/"),required:!0},{label:"pushPlusUser",tip:r.ZP.get("一对多推送的“群组编码”(一对多推送下面->您的群组(如无则创建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送)")}],lark:[{label:"larkKey",tip:r.ZP.get("飞书群组机器人:https://www.feishu.cn/hc/zh-CN/articles/360024984973"),required:!0}],email:[{label:"emailService",tip:r.ZP.get("邮箱服务名称,比如126、163、Gmail、QQ等,支持列表https://github.com/nodemailer/nodemailer/blob/master/lib/well-known/services.json"),required:!0},{label:"emailUser",tip:r.ZP.get("邮箱地址"),required:!0},{label:"emailPass",tip:r.ZP.get("SMTP 登录密码,也可能为特殊口令,视具体邮件服务商说明而定"),required:!0}],pushMe:[{label:"pushMeKey",tip:r.ZP.get("PushMe的Key,https://push.i-i.me/"),required:!0}],chronocat:[{label:"chronocatURL",tip:r.ZP.get("Chronocat Red 服务的连接地址 https://chronocat.vercel.app/install/docker/official/"),required:!0},{label:"chronocatQQ",tip:r.ZP.get("个人:user_id=个人QQ 群则填入group_id=QQ群 多个用英文;隔开同时支持个人和群 如:user_id=xxx;group_id=xxxx;group_id=xxxxx"),required:!0},{label:"chronocatToken",tip:r.ZP.get("docker安装在持久化config目录下的chronocat.yml文件可找到"),required:!0}],webhook:[{label:"webhookMethod",tip:r.ZP.get("请求方法"),required:!0,items:[{value:"GET"},{value:"POST"},{value:"PUT"}]},{label:"webhookContentType",tip:r.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:r.ZP.get("请求链接以http或者https开头。url或者body中必须包含$title,$content可选,对应api内容的位置"),required:!0,placeholder:"https://xxx.cn/api?content=$title\n"},{label:"webhookHeaders",tip:r.ZP.get("请求头格式Custom-Header1: Header1,多个换行分割"),placeholder:"Custom-Header1: Header1\nCustom-Header2: Header2"},{label:"webhookBody",tip:r.ZP.get("请求体格式key1: value1,多个换行分割。url或者body中必须包含$title,$content可选,对应api内容的位置"),placeholder:"key1: $title\nkey2: $content"}]},documentTitleMap:{"/login":r.ZP.get("登录"),"/initialization":r.ZP.get("初始化"),"/crontab":r.ZP.get("定时任务"),"/env":r.ZP.get("环境变量"),"/subscription":r.ZP.get("订阅管理"),"/config":r.ZP.get("配置文件"),"/script":r.ZP.get("脚本管理"),"/diff":r.ZP.get("对比工具"),"/log":r.ZP.get("日志管理"),"/setting":r.ZP.get("系统设置"),"/error":r.ZP.get("错误日志"),"/dependence":r.ZP.get("依赖管理")},dependenceTypes:["nodejs","python3","linux"]}},57229:function(e,t,n){"use strict";n.d(t,{W:function(){return g}});var r=n(25359),o=n.n(r),i=n(49811),a=n.n(i),u=n(88265),s=n(9835),l=n(15207),c=n(14851),p=n(73669);s.ZP.config({duration:2});var h=Date.now(),f=p.Z.create({timeout:6e4,params:{t:h}}),d=["/api/user/login","/open/auth/token","/api/user/two-factor/login","/api/system","/api/user/init","/api/user/notification/init"];f.interceptors.request.use((function(e){var t=localStorage.getItem(l.Z.authKey);return t&&!d.includes(e.url)?(e.headers.Authorization="Bearer ".concat(t),e):e})),f.interceptors.response.use(function(){var e=a()(o()().mark((function e(t){var n,r,i;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.status,![502,504].includes(n)){e.next=5;break}c.history.push("/error"),e.next=18;break;case 5:if(401!==n){e.next=9;break}"/login"!==c.history.location.pathname&&(localStorage.removeItem(l.Z.authKey),c.history.push("/login")),e.next=18;break;case 9:return e.prev=9,200!==(r=t.data).code&&(i=r.message||r.data)&&s.ZP.error({content:i,style:{maxWidth:500,margin:"0 auto"}}),e.abrupt("return",r);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.data:e.response.statusText,n=e.response.status;[502,504].includes(n)?c.history.push("/error"):401===n?"/login"!==c.history.location.pathname&&(s.ZP.error(u.ZP.get("登录已过期,请重新登录")),localStorage.removeItem(l.Z.authKey),c.history.push("/login")):s.ZP.error({content:t,style:{maxWidth:500,margin:"0 auto"}})}else console.log(e.message);return Promise.reject(e)}));var g=f},21758:function(e,t,n){"use strict";var r=n(93525),o=n.n(r),i=n(12342),a=n.n(i),u=n(25359),s=n.n(u),l=n(49811),c=n.n(l),p=n(21140),h=n.n(p),f=n(63466),d=n.n(f),g=n(52510),v=n.n(g),y=n(78078),b=n.n(y),x=["type"],m=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};h()(this,e),v()(this,"url",void 0),v()(this,"socket",null),v()(this,"subscriptions",new Map),v()(this,"options",void 0),v()(this,"reconnectAttempts",0),v()(this,"heartbeatTimeout",null),v()(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 d()(e,[{key:"init",value:(n=c()(s()().mark((function e(){var t=this;return s()().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(b())(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=c()(s()().mark((function e(){var t;return s()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((null===(t=this.socket)||void 0===t?void 0:t.readyState)===b().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 r={action:"subscribe",topic:e};this.send(r)}}},{key:"unsubscribe",value:function(e,t){var n=this.subscriptions.get(e)||new Set;if(n.has(t)){n.delete(t);var r={action:"unsubscribe",topic:e};this.send(r)}}},{key:"send",value:function(e){var t;(null===(t=this.socket)||void 0===t?void 0:t.readyState)===b().OPEN&&this.socket.send(JSON.stringify(e))}},{key:"dispatchMessage",value:function(e){var t=e.type,n=a()(e,x),r=this.subscriptions.get(t)||new Set;o()(r).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)===b().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}();v()(m,"instance",null),t.Z=m},10761:function(){},68098:function(e,t,n){"use strict";n.d(t,{fk:function(){return a},jD:function(){return i}});var r,o=n(46594),i=function(){return(0,o.Z)()&&window.document.documentElement},a=function(){if(!i())return!1;if(void 0!==r)return r;var e=document.createElement("div");return e.style.display="flex",e.style.flexDirection="column",e.style.rowGap="1px",e.appendChild(document.createElement("div")),e.appendChild(document.createElement("div")),document.body.appendChild(e),r=1===e.scrollHeight,document.body.removeChild(e),r}},88987:function(e,t,n){var r=n(71519),o=n(82999),i=n(76111),a=n(50506),u=n(80845);function s(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}s.prototype.clear=r,s.prototype.delete=o,s.prototype.get=i,s.prototype.has=a,s.prototype.set=u,e.exports=s},175:function(e,t,n){var r=n(2173),o=n(33752),i=n(10548),a=n(63410),u=n(3564);function s(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}s.prototype.clear=r,s.prototype.delete=o,s.prototype.get=i,s.prototype.has=a,s.prototype.set=u,e.exports=s},35922:function(e,t,n){var r=n(47758)(n(29165),"Map");e.exports=r},9440:function(e,t,n){var r=n(7140),o=n(56504),i=n(88833),a=n(80953),u=n(70724);function s(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}s.prototype.clear=r,s.prototype.delete=o,s.prototype.get=i,s.prototype.has=a,s.prototype.set=u,e.exports=s},93501:function(e){e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},75697:function(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n<r;)o[n]=t(e[n],n,e);return o}},28486:function(e){e.exports=function(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}},93719:function(e,t,n){var r=n(30404),o=n(42448),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];i.call(e,t)&&o(a,n)&&(void 0!==n||t in e)||r(e,t,n)}},62718:function(e,t,n){var r=n(42448);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},30404:function(e,t,n){var r=n(34082);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},98768:function(e,t,n){var r=n(28486),o=n(89465);e.exports=function e(t,n,i,a,u){var s=-1,l=t.length;for(i||(i=o),u||(u=[]);++s<l;){var c=t[s];n>0&&i(c)?n>1?e(c,n-1,i,a,u):r(u,c):a||(u[u.length]=c)}return u}},97499:function(e,t,n){var r=n(60399),o=n(77817);e.exports=function(e,t){for(var n=0,i=(t=r(t,e)).length;null!=e&&n<i;)e=e[o(t[n++])];return n&&n==i?e:void 0}},71664:function(e){e.exports=function(e,t){return null!=e&&t in Object(e)}},84742:function(e,t,n){var r=n(80732),o=n(55073);e.exports=function(e){return o(e)&&"[object Arguments]"==r(e)}},58939:function(e,t,n){var r=n(92042),o=n(90654),i=n(36838),a=n(51059),u=/^\[object .+?Constructor\]$/,s=Function.prototype,l=Object.prototype,c=s.toString,p=l.hasOwnProperty,h=RegExp("^"+c.call(p).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!i(e)||o(e))&&(r(e)?h:u).test(a(e))}},54822:function(e,t,n){var r=n(32648),o=n(28281);e.exports=function(e,t){return r(e,t,(function(t,n){return o(e,n)}))}},32648:function(e,t,n){var r=n(97499),o=n(85713),i=n(60399);e.exports=function(e,t,n){for(var a=-1,u=t.length,s={};++a<u;){var l=t[a],c=r(e,l);n(c,l)&&o(s,i(l,e),c)}return s}},85713:function(e,t,n){var r=n(93719),o=n(60399),i=n(91010),a=n(36838),u=n(77817);e.exports=function(e,t,n,s){if(!a(e))return e;for(var l=-1,c=(t=o(t,e)).length,p=c-1,h=e;null!=h&&++l<c;){var f=u(t[l]),d=n;if("__proto__"===f||"constructor"===f||"prototype"===f)return e;if(l!=p){var g=h[f];void 0===(d=s?s(g,f,h):void 0)&&(d=a(g)?g:i(t[l+1])?[]:{})}r(h,f,d),h=h[f]}return e}},56447:function(e,t,n){var r=n(64806),o=n(34082),i=n(48148),a=o?function(e,t){return o(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:i;e.exports=a},73150:function(e,t,n){var r=n(74396),o=n(75697),i=n(24669),a=n(16764),u=r?r.prototype:void 0,s=u?u.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(i(t))return o(t,e)+"";if(a(t))return s?s.call(t):"";var n=t+"";return"0"==n&&1/t==-Infinity?"-0":n}},60399:function(e,t,n){var r=n(24669),o=n(2610),i=n(77057),a=n(8389);e.exports=function(e,t){return r(e)?e:o(e,t)?[e]:i(a(e))}},36633:function(e,t,n){var r=n(29165)["__core-js_shared__"];e.exports=r},34082:function(e,t,n){var r=n(47758),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=o},54874:function(e,t,n){var r=n(22612),o=n(20323),i=n(71564);e.exports=function(e){return i(o(e,void 0,r),e+"")}},67707:function(e,t,n){var r=n(3880);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},47758:function(e,t,n){var r=n(58939),o=n(9149);e.exports=function(e,t){var n=o(e,t);return r(n)?n:void 0}},9149:function(e){e.exports=function(e,t){return null==e?void 0:e[t]}},18554:function(e,t,n){var r=n(60399),o=n(30353),i=n(24669),a=n(91010),u=n(17216),s=n(77817);e.exports=function(e,t,n){for(var l=-1,c=(t=r(t,e)).length,p=!1;++l<c;){var h=s(t[l]);if(!(p=null!=e&&n(e,h)))break;e=e[h]}return p||++l!=c?p:!!(c=null==e?0:e.length)&&u(c)&&a(h,c)&&(i(e)||o(e))}},71519:function(e,t,n){var r=n(37722);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},82999:function(e){e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},76111:function(e,t,n){var r=n(37722),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(t,e)?t[e]:void 0}},50506:function(e,t,n){var r=n(37722),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:o.call(t,e)}},80845:function(e,t,n){var r=n(37722);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},89465:function(e,t,n){var r=n(74396),o=n(30353),i=n(24669),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return i(e)||o(e)||!!(a&&e&&e[a])}},91010:function(e){var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},2610:function(e,t,n){var r=n(24669),o=n(16764),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!o(e))||(a.test(e)||!i.test(e)||null!=t&&e in Object(t))}},3880:function(e){e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},90654:function(e,t,n){var r,o=n(36633),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!i&&i in e}},2173:function(e){e.exports=function(){this.__data__=[],this.size=0}},33752:function(e,t,n){var r=n(62718),o=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():o.call(t,n,1),--this.size,!0)}},10548:function(e,t,n){var r=n(62718);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},63410:function(e,t,n){var r=n(62718);e.exports=function(e){return r(this.__data__,e)>-1}},3564:function(e,t,n){var r=n(62718);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},7140:function(e,t,n){var r=n(88987),o=n(175),i=n(35922);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},56504:function(e,t,n){var r=n(67707);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},88833:function(e,t,n){var r=n(67707);e.exports=function(e){return r(this,e).get(e)}},80953:function(e,t,n){var r=n(67707);e.exports=function(e){return r(this,e).has(e)}},70724:function(e,t,n){var r=n(67707);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},45171:function(e,t,n){var r=n(34736);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},37722:function(e,t,n){var r=n(47758)(Object,"create");e.exports=r},20323:function(e,t,n){var r=n(93501),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var i=arguments,a=-1,u=o(i.length-t,0),s=Array(u);++a<u;)s[a]=i[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=i[a];return l[t]=n(s),r(e,this,l)}}},71564:function(e,t,n){var r=n(56447),o=n(15509)(r);e.exports=o},15509:function(e){var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var o=t(),i=16-(o-r);if(r=o,i>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},77057:function(e,t,n){var r=n(45171),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,a=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(o,(function(e,n,r,o){t.push(r?o.replace(i,"$1"):n||e)})),t}));e.exports=a},77817:function(e,t,n){var r=n(16764);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}},51059:function(e){var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},64806:function(e){e.exports=function(e){return function(){return e}}},42448:function(e){e.exports=function(e,t){return e===t||e!=e&&t!=t}},22612:function(e,t,n){var r=n(98768);e.exports=function(e){return(null==e?0:e.length)?r(e,1):[]}},28281:function(e,t,n){var r=n(71664),o=n(18554);e.exports=function(e,t){return null!=e&&o(e,t,r)}},48148:function(e){e.exports=function(e){return e}},30353:function(e,t,n){var r=n(84742),o=n(55073),i=Object.prototype,a=i.hasOwnProperty,u=i.propertyIsEnumerable,s=r(function(){return arguments}())?r:function(e){return o(e)&&a.call(e,"callee")&&!u.call(e,"callee")};e.exports=s},24669:function(e){var t=Array.isArray;e.exports=t},92042:function(e,t,n){var r=n(80732),o=n(36838);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},17216:function(e){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},34736:function(e,t,n){var r=n(9440);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=e.apply(this,r);return n.cache=i.set(o,a)||i,a};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},19334:function(e,t,n){var r=n(54822),o=n(54874)((function(e,t){return null==e?{}:r(e,t)}));e.exports=o},8389:function(e,t,n){var r=n(73150);e.exports=function(e){return null==e?"":r(e)}}}]);