filecat 5.32.0 → 5.32.2

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 (352) hide show
  1. package/build/dist/{377.f1e5a0d0f7800c8306ee.js → 377.4047ae540e74884d3ff5.js} +2 -2
  2. package/build/dist/543.ac5d314a52e99934103c.js +2 -0
  3. package/build/dist/{943.7c72fe51510266a06ea6.js → 943.d055d58eee66f1ab0414.js} +2 -2
  4. package/build/dist/index.html +1 -1
  5. package/build/dist/{main.b593eb159b18a7b4eefa.js → main.494c8bcf15274aeca600.js} +2 -2
  6. package/build/server/common/DataUtil.js +7 -0
  7. package/build/server/common/DataUtil.js.map +1 -0
  8. package/build/server/common/FileMenuType.js +48 -0
  9. package/build/server/common/FileMenuType.js.map +1 -0
  10. package/build/server/common/ListUtil.js +224 -0
  11. package/build/server/common/ListUtil.js.map +1 -0
  12. package/build/server/common/Result.pojo.js +15 -0
  13. package/build/server/common/Result.pojo.js.map +1 -0
  14. package/build/server/common/RouterConfig.js +20 -0
  15. package/build/server/common/RouterConfig.js.map +1 -0
  16. package/build/server/common/StringUtil.js +223 -0
  17. package/build/server/common/StringUtil.js.map +1 -0
  18. package/build/server/common/ValueUtil.js +70 -0
  19. package/build/server/common/ValueUtil.js.map +1 -0
  20. package/build/server/common/common.util.js +32 -0
  21. package/build/server/common/common.util.js.map +1 -0
  22. package/build/server/common/event.js +48 -0
  23. package/build/server/common/event.js.map +1 -0
  24. package/build/server/common/file.pojo.js +65 -0
  25. package/build/server/common/file.pojo.js.map +1 -0
  26. package/build/server/common/frame/WsData.js +127 -0
  27. package/build/server/common/frame/WsData.js.map +1 -0
  28. package/build/server/common/frame/constant.js +6 -0
  29. package/build/server/common/frame/constant.js.map +1 -0
  30. package/build/server/common/frame/data.encode.js +115 -0
  31. package/build/server/common/frame/data.encode.js.map +1 -0
  32. package/build/server/common/frame/router.js +25 -0
  33. package/build/server/common/frame/router.js.map +1 -0
  34. package/build/server/common/frame/ws.client.js +173 -0
  35. package/build/server/common/frame/ws.client.js.map +1 -0
  36. package/build/server/common/frame/ws.server.js +145 -0
  37. package/build/server/common/frame/ws.server.js.map +1 -0
  38. package/build/server/common/fun.util.js +65 -0
  39. package/build/server/common/fun.util.js.map +1 -0
  40. package/build/server/common/node/Env.js +198 -0
  41. package/build/server/common/node/Env.js.map +1 -0
  42. package/build/server/common/node/childProcessUtil.js +209 -0
  43. package/build/server/common/node/childProcessUtil.js.map +1 -0
  44. package/build/server/common/node/findPort.js +38 -0
  45. package/build/server/common/node/findPort.js.map +1 -0
  46. package/build/server/common/node/http.js +38 -0
  47. package/build/server/common/node/http.js.map +1 -0
  48. package/build/server/common/node/install.js +132 -0
  49. package/build/server/common/node/install.js.map +1 -0
  50. package/build/server/common/node/value.util.js +8 -0
  51. package/build/server/common/node/value.util.js.map +1 -0
  52. package/build/server/common/path_util.js +86 -0
  53. package/build/server/common/path_util.js.map +1 -0
  54. package/build/server/common/req/common.pojo.js +42 -0
  55. package/build/server/common/req/common.pojo.js.map +1 -0
  56. package/build/server/common/req/customerRouter.pojo.js +9 -0
  57. package/build/server/common/req/customerRouter.pojo.js.map +1 -0
  58. package/build/server/common/req/data.pojo.js +3 -0
  59. package/build/server/common/req/data.pojo.js.map +1 -0
  60. package/build/server/common/req/ddns.pojo.js +39 -0
  61. package/build/server/common/req/ddns.pojo.js.map +1 -0
  62. package/build/server/common/req/file.req.js +49 -0
  63. package/build/server/common/req/file.req.js.map +1 -0
  64. package/build/server/common/req/http_controller_router.js +13 -0
  65. package/build/server/common/req/http_controller_router.js.map +1 -0
  66. package/build/server/common/req/net.pojo.js +71 -0
  67. package/build/server/common/req/net.pojo.js.map +1 -0
  68. package/build/server/common/req/setting.req.js +140 -0
  69. package/build/server/common/req/setting.req.js.map +1 -0
  70. package/build/server/common/req/ssh.pojo.js +13 -0
  71. package/build/server/common/req/ssh.pojo.js.map +1 -0
  72. package/build/server/common/req/sys.pojo.js +29 -0
  73. package/build/server/common/req/sys.pojo.js.map +1 -0
  74. package/build/server/common/req/user.req.js +117 -0
  75. package/build/server/common/req/user.req.js.map +1 -0
  76. package/build/server/common/word_detection_js.js +142 -0
  77. package/build/server/common/word_detection_js.js.map +1 -0
  78. package/build/server/main/domain/ai_agent/ai_agent.constant.js +142 -0
  79. package/build/server/main/domain/ai_agent/ai_agent.constant.js.map +1 -0
  80. package/build/server/main/domain/ai_agent/ai_agent.controller.js +136 -0
  81. package/build/server/main/domain/ai_agent/ai_agent.controller.js.map +1 -0
  82. package/build/server/main/domain/ai_agent/ai_agent.service.js +715 -0
  83. package/build/server/main/domain/ai_agent/ai_agent.service.js.map +1 -0
  84. package/build/server/main/domain/ai_agent/ai_agent.tools.js +79 -0
  85. package/build/server/main/domain/ai_agent/ai_agent.tools.js.map +1 -0
  86. package/build/server/main/domain/ai_agent/ai_agent.worker.js +169 -0
  87. package/build/server/main/domain/ai_agent/ai_agent.worker.js.map +1 -0
  88. package/build/server/main/domain/bin/bin.file.util.js +109 -0
  89. package/build/server/main/domain/bin/bin.file.util.js.map +1 -0
  90. package/build/server/main/domain/bin/bin.js +147 -0
  91. package/build/server/main/domain/bin/bin.js.map +1 -0
  92. package/build/server/main/domain/bin/get_bin_dependency.js +36 -0
  93. package/build/server/main/domain/bin/get_bin_dependency.js.map +1 -0
  94. package/build/server/main/domain/crypto/crypto.controller.js +50 -0
  95. package/build/server/main/domain/crypto/crypto.controller.js.map +1 -0
  96. package/build/server/main/domain/crypto/crypto.service.js +112 -0
  97. package/build/server/main/domain/crypto/crypto.service.js.map +1 -0
  98. package/build/server/main/domain/data/DataUtil.js +127 -0
  99. package/build/server/main/domain/data/DataUtil.js.map +1 -0
  100. package/build/server/main/domain/data/basedata/base_data_util.js +214 -0
  101. package/build/server/main/domain/data/basedata/base_data_util.js.map +1 -0
  102. package/build/server/main/domain/data/data_type.js +92 -0
  103. package/build/server/main/domain/data/data_type.js.map +1 -0
  104. package/build/server/main/domain/ddns/ddns.ali.server.js +77 -0
  105. package/build/server/main/domain/ddns/ddns.ali.server.js.map +1 -0
  106. package/build/server/main/domain/ddns/ddns.controller.js +88 -0
  107. package/build/server/main/domain/ddns/ddns.controller.js.map +1 -0
  108. package/build/server/main/domain/ddns/ddns.dnspod.service.js +102 -0
  109. package/build/server/main/domain/ddns/ddns.dnspod.service.js.map +1 -0
  110. package/build/server/main/domain/ddns/ddns.pre.js +104 -0
  111. package/build/server/main/domain/ddns/ddns.pre.js.map +1 -0
  112. package/build/server/main/domain/ddns/ddns.service.js +161 -0
  113. package/build/server/main/domain/ddns/ddns.service.js.map +1 -0
  114. package/build/server/main/domain/ddns/ddns.tengxun.service.js +46 -0
  115. package/build/server/main/domain/ddns/ddns.tengxun.service.js.map +1 -0
  116. package/build/server/main/domain/ddns/tx/abstract_client.js +247 -0
  117. package/build/server/main/domain/ddns/tx/abstract_client.js.map +1 -0
  118. package/build/server/main/domain/ddns/tx/dnspod_client.js +38 -0
  119. package/build/server/main/domain/ddns/tx/dnspod_client.js.map +1 -0
  120. package/build/server/main/domain/ddns/tx/dnspod_models.js +3 -0
  121. package/build/server/main/domain/ddns/tx/dnspod_models.js.map +1 -0
  122. package/build/server/main/domain/ddns/tx/exception/tencent_cloud_sdk_exception.js +38 -0
  123. package/build/server/main/domain/ddns/tx/exception/tencent_cloud_sdk_exception.js.map +1 -0
  124. package/build/server/main/domain/ddns/tx/http/fetch.js +3 -0
  125. package/build/server/main/domain/ddns/tx/http/fetch.js.map +1 -0
  126. package/build/server/main/domain/ddns/tx/http/http_connection.js +181 -0
  127. package/build/server/main/domain/ddns/tx/http/http_connection.js.map +1 -0
  128. package/build/server/main/domain/ddns/tx/interface.js +5 -0
  129. package/build/server/main/domain/ddns/tx/interface.js.map +1 -0
  130. package/build/server/main/domain/ddns/tx/sdk_version.js +5 -0
  131. package/build/server/main/domain/ddns/tx/sdk_version.js.map +1 -0
  132. package/build/server/main/domain/ddns/tx/sign.js +142 -0
  133. package/build/server/main/domain/ddns/tx/sign.js.map +1 -0
  134. package/build/server/main/domain/ddns/tx/sse_response_model.js +89 -0
  135. package/build/server/main/domain/ddns/tx/sse_response_model.js.map +1 -0
  136. package/build/server/main/domain/file/FileUtil.js +230 -0
  137. package/build/server/main/domain/file/FileUtil.js.map +1 -0
  138. package/build/server/main/domain/file/file.compress.js +246 -0
  139. package/build/server/main/domain/file/file.compress.js.map +1 -0
  140. package/build/server/main/domain/file/file.controller.js +450 -0
  141. package/build/server/main/domain/file/file.controller.js.map +1 -0
  142. package/build/server/main/domain/file/file.service.js +1276 -0
  143. package/build/server/main/domain/file/file.service.js.map +1 -0
  144. package/build/server/main/domain/file/search/file.search.js +78 -0
  145. package/build/server/main/domain/file/search/file.search.js.map +1 -0
  146. package/build/server/main/domain/file/search/file.search.worker.js +107 -0
  147. package/build/server/main/domain/file/search/file.search.worker.js.map +1 -0
  148. package/build/server/main/domain/file/search/file.type.js +3 -0
  149. package/build/server/main/domain/file/search/file.type.js.map +1 -0
  150. package/build/server/main/domain/file/workflow/workflow.process.js +100 -0
  151. package/build/server/main/domain/file/workflow/workflow.process.js.map +1 -0
  152. package/build/server/main/domain/file/workflow/workflow.service.js +659 -0
  153. package/build/server/main/domain/file/workflow/workflow.service.js.map +1 -0
  154. package/build/server/main/domain/file/workflow/workflow.util.js +111 -0
  155. package/build/server/main/domain/file/workflow/workflow.util.js.map +1 -0
  156. package/build/server/main/domain/navindex/navindex.controller.js +73 -0
  157. package/build/server/main/domain/navindex/navindex.controller.js.map +1 -0
  158. package/build/server/main/domain/net/net.controller.js +318 -0
  159. package/build/server/main/domain/net/net.controller.js.map +1 -0
  160. package/build/server/main/domain/net/net.datautil.js +8 -0
  161. package/build/server/main/domain/net/net.datautil.js.map +1 -0
  162. package/build/server/main/domain/net/net.service.js +627 -0
  163. package/build/server/main/domain/net/net.service.js.map +1 -0
  164. package/build/server/main/domain/net/tcp.forward.client.service.js +223 -0
  165. package/build/server/main/domain/net/tcp.forward.client.service.js.map +1 -0
  166. package/build/server/main/domain/net/tcp.forward.controller.js +482 -0
  167. package/build/server/main/domain/net/tcp.forward.controller.js.map +1 -0
  168. package/build/server/main/domain/net/tcp.forward.server.service.js +407 -0
  169. package/build/server/main/domain/net/tcp.forward.server.service.js.map +1 -0
  170. package/build/server/main/domain/net/type.js +3 -0
  171. package/build/server/main/domain/net/type.js.map +1 -0
  172. package/build/server/main/domain/net/util/NetClientUtil.js +76 -0
  173. package/build/server/main/domain/net/util/NetClientUtil.js.map +1 -0
  174. package/build/server/main/domain/net/util/NetServerUtil.js +128 -0
  175. package/build/server/main/domain/net/util/NetServerUtil.js.map +1 -0
  176. package/build/server/main/domain/net/util/NetUtil.js +187 -0
  177. package/build/server/main/domain/net/util/NetUtil.js.map +1 -0
  178. package/build/server/main/domain/net/util/tcp.client.js +211 -0
  179. package/build/server/main/domain/net/util/tcp.client.js.map +1 -0
  180. package/build/server/main/domain/net/util/tcp_stream_util.js +69 -0
  181. package/build/server/main/domain/net/util/tcp_stream_util.js.map +1 -0
  182. package/build/server/main/domain/net/util/type.js +3 -0
  183. package/build/server/main/domain/net/util/type.js.map +1 -0
  184. package/build/server/main/domain/net/virtual/tcp_proxy.js +125 -0
  185. package/build/server/main/domain/net/virtual/tcp_proxy.js.map +1 -0
  186. package/build/server/main/domain/net/virtual/virtual.client.service.js +402 -0
  187. package/build/server/main/domain/net/virtual/virtual.client.service.js.map +1 -0
  188. package/build/server/main/domain/net/virtual/virtual.controller.js +211 -0
  189. package/build/server/main/domain/net/virtual/virtual.controller.js.map +1 -0
  190. package/build/server/main/domain/net/virtual/virtual.server.service.js +72 -0
  191. package/build/server/main/domain/net/virtual/virtual.server.service.js.map +1 -0
  192. package/build/server/main/domain/pre/lifeRecordService.js +79 -0
  193. package/build/server/main/domain/pre/lifeRecordService.js.map +1 -0
  194. package/build/server/main/domain/rdp/lib/asn1/ber.js +66 -0
  195. package/build/server/main/domain/rdp/lib/asn1/ber.js.map +1 -0
  196. package/build/server/main/domain/rdp/lib/asn1/index.js +9 -0
  197. package/build/server/main/domain/rdp/lib/asn1/index.js.map +1 -0
  198. package/build/server/main/domain/rdp/lib/asn1/spec.js +56 -0
  199. package/build/server/main/domain/rdp/lib/asn1/spec.js.map +1 -0
  200. package/build/server/main/domain/rdp/lib/asn1/univ.js +315 -0
  201. package/build/server/main/domain/rdp/lib/asn1/univ.js.map +1 -0
  202. package/build/server/main/domain/rdp/lib/core/error.js +25 -0
  203. package/build/server/main/domain/rdp/lib/core/error.js.map +1 -0
  204. package/build/server/main/domain/rdp/lib/core/index.js +13 -0
  205. package/build/server/main/domain/rdp/lib/core/index.js.map +1 -0
  206. package/build/server/main/domain/rdp/lib/core/layer.js +135 -0
  207. package/build/server/main/domain/rdp/lib/core/layer.js.map +1 -0
  208. package/build/server/main/domain/rdp/lib/core/log.js +25 -0
  209. package/build/server/main/domain/rdp/lib/core/log.js.map +1 -0
  210. package/build/server/main/domain/rdp/lib/core/rle.js +22699 -0
  211. package/build/server/main/domain/rdp/lib/core/rle.js.map +1 -0
  212. package/build/server/main/domain/rdp/lib/core/type.js +245 -0
  213. package/build/server/main/domain/rdp/lib/core/type.js.map +1 -0
  214. package/build/server/main/domain/rdp/lib/index.js +6 -0
  215. package/build/server/main/domain/rdp/lib/index.js.map +1 -0
  216. package/build/server/main/domain/rdp/lib/protocol/cert.js +115 -0
  217. package/build/server/main/domain/rdp/lib/protocol/cert.js.map +1 -0
  218. package/build/server/main/domain/rdp/lib/protocol/index.js +11 -0
  219. package/build/server/main/domain/rdp/lib/protocol/index.js.map +1 -0
  220. package/build/server/main/domain/rdp/lib/protocol/nla.js +549 -0
  221. package/build/server/main/domain/rdp/lib/protocol/nla.js.map +1 -0
  222. package/build/server/main/domain/rdp/lib/protocol/pdu/caps.js +486 -0
  223. package/build/server/main/domain/rdp/lib/protocol/pdu/caps.js.map +1 -0
  224. package/build/server/main/domain/rdp/lib/protocol/pdu/cliprdr.js +167 -0
  225. package/build/server/main/domain/rdp/lib/protocol/pdu/cliprdr.js.map +1 -0
  226. package/build/server/main/domain/rdp/lib/protocol/pdu/data.js +876 -0
  227. package/build/server/main/domain/rdp/lib/protocol/pdu/data.js.map +1 -0
  228. package/build/server/main/domain/rdp/lib/protocol/pdu/global.js +260 -0
  229. package/build/server/main/domain/rdp/lib/protocol/pdu/global.js.map +1 -0
  230. package/build/server/main/domain/rdp/lib/protocol/pdu/index.js +13 -0
  231. package/build/server/main/domain/rdp/lib/protocol/pdu/index.js.map +1 -0
  232. package/build/server/main/domain/rdp/lib/protocol/pdu/lic.js +199 -0
  233. package/build/server/main/domain/rdp/lib/protocol/pdu/lic.js.map +1 -0
  234. package/build/server/main/domain/rdp/lib/protocol/pdu/sec.js +333 -0
  235. package/build/server/main/domain/rdp/lib/protocol/pdu/sec.js.map +1 -0
  236. package/build/server/main/domain/rdp/lib/protocol/rdp.js +255 -0
  237. package/build/server/main/domain/rdp/lib/protocol/rdp.js.map +1 -0
  238. package/build/server/main/domain/rdp/lib/protocol/t125/gcc.js +354 -0
  239. package/build/server/main/domain/rdp/lib/protocol/t125/gcc.js.map +1 -0
  240. package/build/server/main/domain/rdp/lib/protocol/t125/index.js +7 -0
  241. package/build/server/main/domain/rdp/lib/protocol/t125/index.js.map +1 -0
  242. package/build/server/main/domain/rdp/lib/protocol/t125/mcs.js +318 -0
  243. package/build/server/main/domain/rdp/lib/protocol/t125/mcs.js.map +1 -0
  244. package/build/server/main/domain/rdp/lib/protocol/t125/per.js +188 -0
  245. package/build/server/main/domain/rdp/lib/protocol/t125/per.js.map +1 -0
  246. package/build/server/main/domain/rdp/lib/protocol/tpkt.js +94 -0
  247. package/build/server/main/domain/rdp/lib/protocol/tpkt.js.map +1 -0
  248. package/build/server/main/domain/rdp/lib/protocol/x224.js +207 -0
  249. package/build/server/main/domain/rdp/lib/protocol/x224.js.map +1 -0
  250. package/build/server/main/domain/rdp/lib/security/index.js +7 -0
  251. package/build/server/main/domain/rdp/lib/security/index.js.map +1 -0
  252. package/build/server/main/domain/rdp/lib/security/jsbn.js +1372 -0
  253. package/build/server/main/domain/rdp/lib/security/jsbn.js.map +1 -0
  254. package/build/server/main/domain/rdp/lib/security/md4.js +401 -0
  255. package/build/server/main/domain/rdp/lib/security/md4.js.map +1 -0
  256. package/build/server/main/domain/rdp/lib/security/rc4.js +45 -0
  257. package/build/server/main/domain/rdp/lib/security/rc4.js.map +1 -0
  258. package/build/server/main/domain/rdp/lib/security/rsa.js +15 -0
  259. package/build/server/main/domain/rdp/lib/security/rsa.js.map +1 -0
  260. package/build/server/main/domain/rdp/lib/security/x509.js +106 -0
  261. package/build/server/main/domain/rdp/lib/security/x509.js.map +1 -0
  262. package/build/server/main/domain/rdp/rdp.controller.js +116 -0
  263. package/build/server/main/domain/rdp/rdp.controller.js.map +1 -0
  264. package/build/server/main/domain/rdp/rdp.service.js +117 -0
  265. package/build/server/main/domain/rdp/rdp.service.js.map +1 -0
  266. package/build/server/main/domain/setting/setting.controller.js +621 -0
  267. package/build/server/main/domain/setting/setting.controller.js.map +1 -0
  268. package/build/server/main/domain/setting/setting.prefile.js +69 -0
  269. package/build/server/main/domain/setting/setting.prefile.js.map +1 -0
  270. package/build/server/main/domain/setting/setting.service.js +763 -0
  271. package/build/server/main/domain/setting/setting.service.js.map +1 -0
  272. package/build/server/main/domain/shell/shell.controller.js +92 -0
  273. package/build/server/main/domain/shell/shell.controller.js.map +1 -0
  274. package/build/server/main/domain/shell/shell.service.js +448 -0
  275. package/build/server/main/domain/shell/shell.service.js.map +1 -0
  276. package/build/server/main/domain/shell/util.js +101 -0
  277. package/build/server/main/domain/shell/util.js.map +1 -0
  278. package/build/server/main/domain/ssh/ssh.controller.js +203 -0
  279. package/build/server/main/domain/ssh/ssh.controller.js.map +1 -0
  280. package/build/server/main/domain/ssh/ssh.service.js +238 -0
  281. package/build/server/main/domain/ssh/ssh.service.js.map +1 -0
  282. package/build/server/main/domain/ssh/ssh.ssh2.js +217 -0
  283. package/build/server/main/domain/ssh/ssh.ssh2.js.map +1 -0
  284. package/build/server/main/domain/sys/sys.controller.js +374 -0
  285. package/build/server/main/domain/sys/sys.controller.js.map +1 -0
  286. package/build/server/main/domain/sys/sys.docker.service.js +339 -0
  287. package/build/server/main/domain/sys/sys.docker.service.js.map +1 -0
  288. package/build/server/main/domain/sys/sys.process.service.js +218 -0
  289. package/build/server/main/domain/sys/sys.process.service.js.map +1 -0
  290. package/build/server/main/domain/sys/sys.service.js +85 -0
  291. package/build/server/main/domain/sys/sys.service.js.map +1 -0
  292. package/build/server/main/domain/sys/sys.sys.service.js +206 -0
  293. package/build/server/main/domain/sys/sys.sys.service.js.map +1 -0
  294. package/build/server/main/domain/sys/sys.systemd.service.js +276 -0
  295. package/build/server/main/domain/sys/sys.systemd.service.js.map +1 -0
  296. package/build/server/main/domain/sys/sys.utl.js +42 -0
  297. package/build/server/main/domain/sys/sys.utl.js.map +1 -0
  298. package/build/server/main/domain/user/user.controller.js +277 -0
  299. package/build/server/main/domain/user/user.controller.js.map +1 -0
  300. package/build/server/main/domain/user/user.hash.js +8 -0
  301. package/build/server/main/domain/user/user.hash.js.map +1 -0
  302. package/build/server/main/domain/user/user.service.js +584 -0
  303. package/build/server/main/domain/user/user.service.js.map +1 -0
  304. package/build/server/main/domain/video/video.controller.js +71 -0
  305. package/build/server/main/domain/video/video.controller.js.map +1 -0
  306. package/build/server/main/domain/video/video.service.js +45 -0
  307. package/build/server/main/domain/video/video.service.js.map +1 -0
  308. package/build/server/main/main.js +171 -0
  309. package/build/server/main/main.js.map +1 -0
  310. package/build/server/main/other/Result.js +25 -0
  311. package/build/server/main/other/Result.js.map +1 -0
  312. package/build/server/main/other/cache.js +50 -0
  313. package/build/server/main/other/cache.js.map +1 -0
  314. package/build/server/main/other/config.js +6 -0
  315. package/build/server/main/other/config.js.map +1 -0
  316. package/build/server/main/other/middleware/AuthMiddleware.js +101 -0
  317. package/build/server/main/other/middleware/AuthMiddleware.js.map +1 -0
  318. package/build/server/main/other/middleware/GlobalErrorHandler.js +23 -0
  319. package/build/server/main/other/middleware/GlobalErrorHandler.js.map +1 -0
  320. package/build/server/main/other/middleware/decorator.js +15 -0
  321. package/build/server/main/other/middleware/decorator.js.map +1 -0
  322. package/build/server/main/other/middleware/redirect.js +20 -0
  323. package/build/server/main/other/middleware/redirect.js.map +1 -0
  324. package/build/server/main/server.js +22 -0
  325. package/build/server/main/server.js.map +1 -0
  326. package/build/server/main/threads/filecat/threads.filecat.js +16 -0
  327. package/build/server/main/threads/filecat/threads.filecat.js.map +1 -0
  328. package/build/server/main/threads/filecat/threads.work.filecat.js +7 -0
  329. package/build/server/main/threads/filecat/threads.work.filecat.js.map +1 -0
  330. package/build/server/main/threads/threads.main.js +224 -0
  331. package/build/server/main/threads/threads.main.js.map +1 -0
  332. package/build/server/main/threads/threads.type.js +19 -0
  333. package/build/server/main/threads/threads.type.js.map +1 -0
  334. package/build/server/main/threads/threads.work.js +52 -0
  335. package/build/server/main/threads/threads.work.js.map +1 -0
  336. package/build/server/main/watch.js +187 -0
  337. package/build/server/main/watch.js.map +1 -0
  338. package/build/server/tsconfig.tsbuildinfo +1 -0
  339. package/build/server/web/project/util/noty.js +45 -0
  340. package/build/server/web/project/util/noty.js.map +1 -0
  341. package/build/threads.work.filecat.js +1 -1
  342. package/package.json +5 -4
  343. package/shell/build.js +8 -0
  344. package/build/dist/543.9305b93ceeffabfa9862.js +0 -2
  345. package/build/jieba_rs_wasm_bg.wasm +0 -0
  346. package/build/main.js +0 -2
  347. package/build/main.js.LICENSE.txt +0 -445
  348. package/build/unrar.wasm +0 -0
  349. /package/build/dist/{377.f1e5a0d0f7800c8306ee.js.LICENSE.txt → 377.4047ae540e74884d3ff5.js.LICENSE.txt} +0 -0
  350. /package/build/dist/{543.9305b93ceeffabfa9862.js.LICENSE.txt → 543.ac5d314a52e99934103c.js.LICENSE.txt} +0 -0
  351. /package/build/dist/{943.7c72fe51510266a06ea6.js.LICENSE.txt → 943.d055d58eee66f1ab0414.js.LICENSE.txt} +0 -0
  352. /package/build/dist/{main.b593eb159b18a7b4eefa.js.LICENSE.txt → main.494c8bcf15274aeca600.js.LICENSE.txt} +0 -0
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.filecat_upgrade_class = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ const childProcessUtil_1 = require("../../../common/node/childProcessUtil");
9
+ const DataUtil_1 = require("../data/DataUtil");
10
+ const data_type_1 = require("../data/data_type");
11
+ const setting_service_1 = require("../setting/setting.service");
12
+ const shell_service_1 = require("./shell.service");
13
+ const user_req_1 = require("../../../common/req/user.req");
14
+ const sys_utl_1 = require("../sys/sys.utl");
15
+ class filecat_upgrade_class {
16
+ kill() {
17
+ }
18
+ constructor(exit, print, params) {
19
+ this.exit = () => {
20
+ print("\r\n");
21
+ exit();
22
+ };
23
+ this.print = print;
24
+ print("\r\n");
25
+ this.handle(params).catch((e) => {
26
+ print(e?.message ?? e);
27
+ this.exit();
28
+ });
29
+ }
30
+ renderProgress(percent) {
31
+ const width = 30;
32
+ const filled = Math.round((percent / 100) * width);
33
+ const empty = width - filled;
34
+ const bar = "█".repeat(filled) + "░".repeat(empty);
35
+ return `\r\x1b[K[${bar}] ${percent}%`;
36
+ }
37
+ async handle(params) {
38
+ process.env.run_env = "exe";
39
+ if (process.env.run_env === "exe") {
40
+ let download_url = params[0];
41
+ if (!download_url) {
42
+ const sys = (0, shell_service_1.getSys)();
43
+ if (sys === user_req_1.SysEnum.win) {
44
+ if (!sys_utl_1.SystemUtil.is_x86()) {
45
+ this.print(" windows下暂时只执行x86芯片! ");
46
+ this.exit();
47
+ return;
48
+ }
49
+ download_url = 'https://github.com/xiaobaidadada/filecat/releases/latest/download/filecat-win-x64.tar.gz';
50
+ }
51
+ else if (sys === user_req_1.SysEnum.linux) {
52
+ if (!sys_utl_1.SystemUtil.is_x86()) {
53
+ this.print(" linux下暂时只执行x86芯片! ");
54
+ this.exit();
55
+ return;
56
+ }
57
+ download_url = 'https://github.com/xiaobaidadada/filecat/releases/latest/download/filecat-linux-x64.tar.gz';
58
+ }
59
+ else if (sys === user_req_1.SysEnum.mac) {
60
+ if (!sys_utl_1.SystemUtil.is_arm()) {
61
+ this.print(" mac下暂时只执行M芯片! ");
62
+ this.exit();
63
+ return;
64
+ }
65
+ download_url = 'https://github.com/xiaobaidadada/filecat/releases/latest/download/filecat-mac-arm.tar.gz';
66
+ }
67
+ else {
68
+ this.print(" 该系统暂时无法自动升级! ");
69
+ this.exit();
70
+ return;
71
+ }
72
+ }
73
+ if (!path_1.default.isAbsolute(download_url)) {
74
+ this.print("开始下载文件\r\n");
75
+ download_url = await childProcessUtil_1.ChildProcessUtil.down_load_file(download_url, DataUtil_1.DataUtil.get_tem_path(data_type_1.data_dir_tem_name.filecat_upgrade_dir), (num) => {
76
+ this.print(this.renderProgress(num));
77
+ });
78
+ }
79
+ this.print("\n\r下载完成,开始解压...");
80
+ childProcessUtil_1.ChildProcessUtil.send_father(childProcessUtil_1.filecat_cmd.filecat_upgrade, {
81
+ file_path: download_url,
82
+ run_env: process.env.run_env
83
+ });
84
+ }
85
+ else if (process.env.run_env === "npm") {
86
+ this.print("开始全局安装 filecat ");
87
+ await childProcessUtil_1.ChildProcessUtil.send_father(childProcessUtil_1.filecat_cmd.filecat_upgrade, {
88
+ run_env: process.env.run_env,
89
+ paths: setting_service_1.settingService.get_env_path(),
90
+ registry: params?.[0]
91
+ });
92
+ }
93
+ else {
94
+ throw '未知的安装方式 或者本地dev启动 找不到升级方式';
95
+ }
96
+ }
97
+ write(str) {
98
+ }
99
+ }
100
+ exports.filecat_upgrade_class = filecat_upgrade_class;
101
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../src/main/domain/shell/util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.SSHController = void 0;
16
+ const router_1 = require("../../../common/frame/router");
17
+ const WsData_1 = require("../../../common/frame/WsData");
18
+ const ssh_service_1 = require("./ssh.service");
19
+ const ssh_pojo_1 = require("../../../common/req/ssh.pojo");
20
+ const routing_controllers_1 = require("routing-controllers");
21
+ const Result_1 = require("../../other/Result");
22
+ const DataUtil_1 = require("../data/DataUtil");
23
+ const data_type_1 = require("../data/data_type");
24
+ const user_service_1 = require("../user/user.service");
25
+ const user_req_1 = require("../../../common/req/user.req");
26
+ let SSHController = class SSHController {
27
+ async start(body, r) {
28
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
29
+ return (0, Result_1.Sucess)(await ssh_service_1.sshService.start(body));
30
+ }
31
+ async close(body, r) {
32
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
33
+ return (0, Result_1.Sucess)(await ssh_service_1.sshService.close(body));
34
+ }
35
+ async getDir(body, r) {
36
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
37
+ return (0, Result_1.Sucess)(await ssh_service_1.sshService.getDir(body));
38
+ }
39
+ async getFileText(body, r) {
40
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
41
+ return ssh_service_1.sshService.getFileText(body);
42
+ }
43
+ async updateFileText(body, r) {
44
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
45
+ return (0, Result_1.Sucess)(await ssh_service_1.sshService.updateFileText(body));
46
+ }
47
+ async create(body, r) {
48
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
49
+ return (0, Result_1.Sucess)(await ssh_service_1.sshService.create(body));
50
+ }
51
+ async deletes(body, r) {
52
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
53
+ await ssh_service_1.sshService.deletes(body);
54
+ return (0, Result_1.Sucess)("");
55
+ }
56
+ async move(body, r) {
57
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
58
+ await ssh_service_1.sshService.move(body);
59
+ return (0, Result_1.Sucess)("");
60
+ }
61
+ async copy(body, r) {
62
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
63
+ await ssh_service_1.sshService.copy(body);
64
+ return (0, Result_1.Sucess)("");
65
+ }
66
+ async uploadFile(r, res) {
67
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
68
+ await ssh_service_1.sshService.uploadFile(r, res);
69
+ return (0, Result_1.Sucess)("1");
70
+ }
71
+ async open(data) {
72
+ user_service_1.userService.check_user_auth(data.wss.token, user_req_1.UserAuth.ssh_proxy_tag_update);
73
+ ssh_service_1.sshService.open(data);
74
+ return "";
75
+ }
76
+ async send(data) {
77
+ user_service_1.userService.check_user_auth(data.wss.token, user_req_1.UserAuth.ssh_proxy_tag_update);
78
+ ssh_service_1.sshService.send(data);
79
+ return "";
80
+ }
81
+ save(items, r) {
82
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy_tag_update);
83
+ DataUtil_1.DataUtil.set(data_type_1.data_common_key.navindex_remote_ssh_key, items);
84
+ return (0, Result_1.Sucess)('ok');
85
+ }
86
+ get(r) {
87
+ user_service_1.userService.check_user_auth(r.headers.authorization, user_req_1.UserAuth.ssh_proxy);
88
+ let list = DataUtil_1.DataUtil.get(data_type_1.data_common_key.navindex_remote_ssh_key);
89
+ return (0, Result_1.Sucess)(list || []);
90
+ }
91
+ };
92
+ exports.SSHController = SSHController;
93
+ __decorate([
94
+ (0, routing_controllers_1.Post)("/start"),
95
+ __param(0, (0, routing_controllers_1.Body)()),
96
+ __param(1, (0, routing_controllers_1.Req)()),
97
+ __metadata("design:type", Function),
98
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
99
+ __metadata("design:returntype", Promise)
100
+ ], SSHController.prototype, "start", null);
101
+ __decorate([
102
+ (0, routing_controllers_1.Post)("/close"),
103
+ __param(0, (0, routing_controllers_1.Body)()),
104
+ __param(1, (0, routing_controllers_1.Req)()),
105
+ __metadata("design:type", Function),
106
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
107
+ __metadata("design:returntype", Promise)
108
+ ], SSHController.prototype, "close", null);
109
+ __decorate([
110
+ (0, routing_controllers_1.Post)("/get/dir"),
111
+ __param(0, (0, routing_controllers_1.Body)()),
112
+ __param(1, (0, routing_controllers_1.Req)()),
113
+ __metadata("design:type", Function),
114
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
115
+ __metadata("design:returntype", Promise)
116
+ ], SSHController.prototype, "getDir", null);
117
+ __decorate([
118
+ (0, routing_controllers_1.Post)("/get/file/text"),
119
+ __param(0, (0, routing_controllers_1.Body)()),
120
+ __param(1, (0, routing_controllers_1.Req)()),
121
+ __metadata("design:type", Function),
122
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
123
+ __metadata("design:returntype", Promise)
124
+ ], SSHController.prototype, "getFileText", null);
125
+ __decorate([
126
+ (0, routing_controllers_1.Post)("/update/file/text"),
127
+ __param(0, (0, routing_controllers_1.Body)()),
128
+ __param(1, (0, routing_controllers_1.Req)()),
129
+ __metadata("design:type", Function),
130
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
131
+ __metadata("design:returntype", Promise)
132
+ ], SSHController.prototype, "updateFileText", null);
133
+ __decorate([
134
+ (0, routing_controllers_1.Post)("/create"),
135
+ __param(0, (0, routing_controllers_1.Body)()),
136
+ __param(1, (0, routing_controllers_1.Req)()),
137
+ __metadata("design:type", Function),
138
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
139
+ __metadata("design:returntype", Promise)
140
+ ], SSHController.prototype, "create", null);
141
+ __decorate([
142
+ (0, routing_controllers_1.Post)("/delete"),
143
+ __param(0, (0, routing_controllers_1.Body)()),
144
+ __param(1, (0, routing_controllers_1.Req)()),
145
+ __metadata("design:type", Function),
146
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
147
+ __metadata("design:returntype", Promise)
148
+ ], SSHController.prototype, "deletes", null);
149
+ __decorate([
150
+ (0, routing_controllers_1.Post)("/move"),
151
+ __param(0, (0, routing_controllers_1.Body)()),
152
+ __param(1, (0, routing_controllers_1.Req)()),
153
+ __metadata("design:type", Function),
154
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
155
+ __metadata("design:returntype", Promise)
156
+ ], SSHController.prototype, "move", null);
157
+ __decorate([
158
+ (0, routing_controllers_1.Post)("/copy"),
159
+ __param(0, (0, routing_controllers_1.Body)()),
160
+ __param(1, (0, routing_controllers_1.Req)()),
161
+ __metadata("design:type", Function),
162
+ __metadata("design:paramtypes", [ssh_pojo_1.SshPojo, Object]),
163
+ __metadata("design:returntype", Promise)
164
+ ], SSHController.prototype, "copy", null);
165
+ __decorate([
166
+ (0, routing_controllers_1.Put)("/"),
167
+ __param(0, (0, routing_controllers_1.Req)()),
168
+ __param(1, (0, routing_controllers_1.Res)()),
169
+ __metadata("design:type", Function),
170
+ __metadata("design:paramtypes", [Object, Object]),
171
+ __metadata("design:returntype", Promise)
172
+ ], SSHController.prototype, "uploadFile", null);
173
+ __decorate([
174
+ (0, router_1.msg)(WsData_1.CmdType.remote_shell_open),
175
+ __metadata("design:type", Function),
176
+ __metadata("design:paramtypes", [WsData_1.WsData]),
177
+ __metadata("design:returntype", Promise)
178
+ ], SSHController.prototype, "open", null);
179
+ __decorate([
180
+ (0, router_1.msg)(WsData_1.CmdType.remote_shell_send),
181
+ __metadata("design:type", Function),
182
+ __metadata("design:paramtypes", [WsData_1.WsData]),
183
+ __metadata("design:returntype", Promise)
184
+ ], SSHController.prototype, "send", null);
185
+ __decorate([
186
+ (0, routing_controllers_1.Post)('/tag/save'),
187
+ __param(0, (0, routing_controllers_1.Body)()),
188
+ __param(1, (0, routing_controllers_1.Req)()),
189
+ __metadata("design:type", Function),
190
+ __metadata("design:paramtypes", [Array, Object]),
191
+ __metadata("design:returntype", void 0)
192
+ ], SSHController.prototype, "save", null);
193
+ __decorate([
194
+ (0, routing_controllers_1.Get)("/tag"),
195
+ __param(0, (0, routing_controllers_1.Req)()),
196
+ __metadata("design:type", Function),
197
+ __metadata("design:paramtypes", [Object]),
198
+ __metadata("design:returntype", void 0)
199
+ ], SSHController.prototype, "get", null);
200
+ exports.SSHController = SSHController = __decorate([
201
+ (0, routing_controllers_1.JsonController)("/ssh")
202
+ ], SSHController);
203
+ //# sourceMappingURL=ssh.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssh.controller.js","sourceRoot":"","sources":["../../../../../src/main/domain/ssh/ssh.controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.sshService = exports.SshService = void 0;
7
+ const ssh_pojo_1 = require("../../../common/req/ssh.pojo");
8
+ const WsData_1 = require("../../../common/frame/WsData");
9
+ const { Readable } = require('stream');
10
+ const EventEmitter = require('events');
11
+ const ssh_ssh2_1 = require("./ssh.ssh2");
12
+ const path_1 = __importDefault(require("path"));
13
+ const DataUtil_1 = require("../data/DataUtil");
14
+ const Result_1 = require("../../other/Result");
15
+ const multer_1 = __importDefault(require("multer"));
16
+ const FileUtil_1 = require("../file/FileUtil");
17
+ class SshService extends ssh_ssh2_1.SshSsh2 {
18
+ constructor() {
19
+ super(...arguments);
20
+ this.fileUploadOptions = {
21
+ storage: multer_1.default.diskStorage({
22
+ destination: (req, file, cb) => {
23
+ cb(null, req.fileDir);
24
+ },
25
+ filename: (req, file, cb) => {
26
+ cb(null, req.fileName);
27
+ }
28
+ })
29
+ };
30
+ this.upload = (0, multer_1.default)({
31
+ storage: this.fileUploadOptions.storage,
32
+ }).single('file');
33
+ }
34
+ async start(req) {
35
+ let key = ssh_pojo_1.SshPojo.getKey(req);
36
+ const data = this.lifeGetData(key);
37
+ if (data) {
38
+ return { key };
39
+ }
40
+ const client = await this.connect(req);
41
+ if (!client) {
42
+ throw "连接失败";
43
+ }
44
+ this.lifeStart(key, client, async (c) => {
45
+ try {
46
+ client[ssh_ssh2_1.sftp_client].end();
47
+ client.end();
48
+ }
49
+ catch (e) {
50
+ console.log('触发', e);
51
+ }
52
+ });
53
+ return { key };
54
+ }
55
+ async close(req) {
56
+ const client = this.lifeGetData(req.key);
57
+ if (client) {
58
+ this.lifeClose(req.key);
59
+ }
60
+ return true;
61
+ }
62
+ async getDir(req) {
63
+ const client = this.lifeGetData(req.key);
64
+ if (!client) {
65
+ return [];
66
+ }
67
+ this.lifeHeart(req.key);
68
+ return this.sftGetDir(decodeURIComponent(req.dir), client);
69
+ }
70
+ async getFileText(req) {
71
+ const client = this.lifeGetData(req.key);
72
+ if (!client) {
73
+ return "";
74
+ }
75
+ this.lifeHeart(req.key);
76
+ const stats = await this.sftGetFileStats(req.file, client);
77
+ return (0, Result_1.Sucess)(await this.sftGetFileText(decodeURIComponent(req.file), client));
78
+ }
79
+ async updateFileText(req) {
80
+ const client = this.lifeGetData(req.key);
81
+ if (!client) {
82
+ return "";
83
+ }
84
+ this.lifeHeart(req.key);
85
+ return this.sftUpdateFileText(req, client);
86
+ }
87
+ async create(req) {
88
+ const client = this.lifeGetData(req.key);
89
+ if (!client) {
90
+ return "";
91
+ }
92
+ if (req.dir) {
93
+ await this.sftCreateDir(req, client);
94
+ }
95
+ else if (req.file) {
96
+ req.context = "";
97
+ await this.sftUpdateFileText(req, client);
98
+ }
99
+ this.lifeHeart(req.key);
100
+ return;
101
+ }
102
+ async deletes(req) {
103
+ const client = this.lifeGetData(req.key);
104
+ if (!client) {
105
+ return "";
106
+ }
107
+ if (req.dir) {
108
+ await this.sftDelteFolder(decodeURIComponent(req.dir), client);
109
+ }
110
+ else if (req.file) {
111
+ await this.sftDelteFile(decodeURIComponent(req.file), client);
112
+ }
113
+ this.lifeHeart(req.key);
114
+ return;
115
+ }
116
+ async move(req) {
117
+ const client = this.lifeGetData(req.key);
118
+ if (!client) {
119
+ return "";
120
+ }
121
+ await this.sftMoveFile(decodeURIComponent(req.source), decodeURIComponent(req.target), client);
122
+ this.lifeHeart(req.key);
123
+ return;
124
+ }
125
+ async copy(req) {
126
+ const client = this.lifeGetData(req.key);
127
+ if (!client) {
128
+ return "";
129
+ }
130
+ await this.sftCopyFile(decodeURIComponent(req.source), decodeURIComponent(req.target), client);
131
+ this.lifeHeart(req.key);
132
+ return;
133
+ }
134
+ async open(data) {
135
+ try {
136
+ const pojo = data.context;
137
+ const client = this.lifeGetData(pojo.key);
138
+ if (!client) {
139
+ return "";
140
+ }
141
+ this.forEveryLifeHeart(pojo.key);
142
+ const wss = data.wss;
143
+ let emitter = new EventEmitter();
144
+ wss.dataMap.set(`emitter_${pojo.key}`, emitter);
145
+ client.shell((err, stream) => {
146
+ stream.setWindow(pojo.rows, pojo.cols);
147
+ stream.write(`cd '${decodeURIComponent(pojo.init_path)}' \r`);
148
+ stream.on('data', (cmdData) => {
149
+ const result = new WsData_1.WsData(WsData_1.CmdType.remote_shell_getting);
150
+ result.context = cmdData.toString();
151
+ data.wss.sendData(result.encode());
152
+ });
153
+ emitter.on('data', (data) => {
154
+ stream.write(data);
155
+ });
156
+ wss.setClose(() => {
157
+ this.endForEveryLifeHeart(pojo.key);
158
+ stream.end('exit\r');
159
+ });
160
+ });
161
+ }
162
+ catch (e) {
163
+ console.log(e);
164
+ }
165
+ }
166
+ async send(data) {
167
+ try {
168
+ const pojo = data.context;
169
+ const wss = data.wss;
170
+ let emitter = wss.dataMap.get(`emitter_${pojo.key}`);
171
+ if (emitter) {
172
+ if (pojo.cmd !== null && pojo.cmd !== "null") {
173
+ emitter.emit("data", pojo.cmd);
174
+ }
175
+ }
176
+ }
177
+ catch (e) {
178
+ console.log(e);
179
+ }
180
+ }
181
+ download(ctx) {
182
+ const file = ctx.query.file;
183
+ if (!file || !file.length) {
184
+ ctx.res.status(404).send('File not found');
185
+ return;
186
+ }
187
+ ctx.res.attachment(file);
188
+ ctx.res.set('Content-Type', 'application/octet-stream');
189
+ const client = this.lifeGetData(decodeURIComponent(ctx.query.key));
190
+ if (!client) {
191
+ ctx.status(200).send('not connect ssh');
192
+ return;
193
+ }
194
+ const sftp = this.sftGet(client);
195
+ const readStream = sftp.createReadStream(file);
196
+ readStream.pipe(ctx.res);
197
+ }
198
+ uploadFileAsync(req, res) {
199
+ return new Promise((resolve, reject) => {
200
+ this.upload(req, res, (err) => {
201
+ if (err) {
202
+ return reject(err);
203
+ }
204
+ resolve();
205
+ });
206
+ });
207
+ }
208
+ async uploadFile(req, res) {
209
+ const client = this.lifeGetData(decodeURIComponent(req.query.key));
210
+ const sftp = this.sftGet(client);
211
+ const remoteFilePath = decodeURIComponent(req.query.target);
212
+ if (req.query.dir === "1") {
213
+ req.dir = remoteFilePath;
214
+ await this.sftCreateDir(req, client);
215
+ return;
216
+ }
217
+ const temp = "tempfile";
218
+ const localFilePath = DataUtil_1.DataUtil.writeFileSyncTemp(path_1.default.basename(remoteFilePath), temp);
219
+ req['fileDir'] = path_1.default.dirname(localFilePath);
220
+ req['fileName'] = path_1.default.basename(localFilePath);
221
+ await this.uploadFileAsync(req, res);
222
+ return new Promise((resolve, reject) => {
223
+ this.lifeHeart(req.query.key);
224
+ sftp.fastPut(localFilePath, remoteFilePath, async (err) => {
225
+ if (err) {
226
+ reject(err);
227
+ }
228
+ else {
229
+ resolve(1);
230
+ }
231
+ await FileUtil_1.FileUtil.unlinkSync(localFilePath);
232
+ });
233
+ });
234
+ }
235
+ }
236
+ exports.SshService = SshService;
237
+ exports.sshService = new SshService();
238
+ //# sourceMappingURL=ssh.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssh.service.js","sourceRoot":"","sources":["../../../../../src/main/domain/ssh/ssh.service.ts"],"names":[],"mappings":"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"}