filecat 5.32.2 → 5.33.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.
- package/README.md +4 -0
- package/build/dist/{377.4047ae540e74884d3ff5.js → 377.23d2a705c084c416bf92.js} +2 -2
- package/build/dist/{943.d055d58eee66f1ab0414.js → 943.88236423e67278d66648.js} +2 -2
- package/build/dist/index.html +1 -1
- package/build/dist/{main.494c8bcf15274aeca600.js → main.134bde9aaf8912fe8244.js} +2 -2
- package/build/jieba_rs_wasm_bg.wasm +0 -0
- package/build/main.js +2 -0
- package/build/main.js.LICENSE.txt +445 -0
- package/build/unrar.wasm +0 -0
- package/package.json +1 -1
- package/build/server/common/DataUtil.js +0 -7
- package/build/server/common/DataUtil.js.map +0 -1
- package/build/server/common/FileMenuType.js +0 -48
- package/build/server/common/FileMenuType.js.map +0 -1
- package/build/server/common/ListUtil.js +0 -224
- package/build/server/common/ListUtil.js.map +0 -1
- package/build/server/common/Result.pojo.js +0 -15
- package/build/server/common/Result.pojo.js.map +0 -1
- package/build/server/common/RouterConfig.js +0 -20
- package/build/server/common/RouterConfig.js.map +0 -1
- package/build/server/common/StringUtil.js +0 -223
- package/build/server/common/StringUtil.js.map +0 -1
- package/build/server/common/ValueUtil.js +0 -70
- package/build/server/common/ValueUtil.js.map +0 -1
- package/build/server/common/common.util.js +0 -32
- package/build/server/common/common.util.js.map +0 -1
- package/build/server/common/event.js +0 -48
- package/build/server/common/event.js.map +0 -1
- package/build/server/common/file.pojo.js +0 -65
- package/build/server/common/file.pojo.js.map +0 -1
- package/build/server/common/frame/WsData.js +0 -127
- package/build/server/common/frame/WsData.js.map +0 -1
- package/build/server/common/frame/constant.js +0 -6
- package/build/server/common/frame/constant.js.map +0 -1
- package/build/server/common/frame/data.encode.js +0 -115
- package/build/server/common/frame/data.encode.js.map +0 -1
- package/build/server/common/frame/router.js +0 -25
- package/build/server/common/frame/router.js.map +0 -1
- package/build/server/common/frame/ws.client.js +0 -173
- package/build/server/common/frame/ws.client.js.map +0 -1
- package/build/server/common/frame/ws.server.js +0 -145
- package/build/server/common/frame/ws.server.js.map +0 -1
- package/build/server/common/fun.util.js +0 -65
- package/build/server/common/fun.util.js.map +0 -1
- package/build/server/common/node/Env.js +0 -198
- package/build/server/common/node/Env.js.map +0 -1
- package/build/server/common/node/childProcessUtil.js +0 -209
- package/build/server/common/node/childProcessUtil.js.map +0 -1
- package/build/server/common/node/findPort.js +0 -38
- package/build/server/common/node/findPort.js.map +0 -1
- package/build/server/common/node/http.js +0 -38
- package/build/server/common/node/http.js.map +0 -1
- package/build/server/common/node/install.js +0 -132
- package/build/server/common/node/install.js.map +0 -1
- package/build/server/common/node/value.util.js +0 -8
- package/build/server/common/node/value.util.js.map +0 -1
- package/build/server/common/path_util.js +0 -86
- package/build/server/common/path_util.js.map +0 -1
- package/build/server/common/req/common.pojo.js +0 -42
- package/build/server/common/req/common.pojo.js.map +0 -1
- package/build/server/common/req/customerRouter.pojo.js +0 -9
- package/build/server/common/req/customerRouter.pojo.js.map +0 -1
- package/build/server/common/req/data.pojo.js +0 -3
- package/build/server/common/req/data.pojo.js.map +0 -1
- package/build/server/common/req/ddns.pojo.js +0 -39
- package/build/server/common/req/ddns.pojo.js.map +0 -1
- package/build/server/common/req/file.req.js +0 -49
- package/build/server/common/req/file.req.js.map +0 -1
- package/build/server/common/req/http_controller_router.js +0 -13
- package/build/server/common/req/http_controller_router.js.map +0 -1
- package/build/server/common/req/net.pojo.js +0 -71
- package/build/server/common/req/net.pojo.js.map +0 -1
- package/build/server/common/req/setting.req.js +0 -140
- package/build/server/common/req/setting.req.js.map +0 -1
- package/build/server/common/req/ssh.pojo.js +0 -13
- package/build/server/common/req/ssh.pojo.js.map +0 -1
- package/build/server/common/req/sys.pojo.js +0 -29
- package/build/server/common/req/sys.pojo.js.map +0 -1
- package/build/server/common/req/user.req.js +0 -117
- package/build/server/common/req/user.req.js.map +0 -1
- package/build/server/common/word_detection_js.js +0 -142
- package/build/server/common/word_detection_js.js.map +0 -1
- package/build/server/main/domain/ai_agent/ai_agent.constant.js +0 -142
- package/build/server/main/domain/ai_agent/ai_agent.constant.js.map +0 -1
- package/build/server/main/domain/ai_agent/ai_agent.controller.js +0 -136
- package/build/server/main/domain/ai_agent/ai_agent.controller.js.map +0 -1
- package/build/server/main/domain/ai_agent/ai_agent.service.js +0 -715
- package/build/server/main/domain/ai_agent/ai_agent.service.js.map +0 -1
- package/build/server/main/domain/ai_agent/ai_agent.tools.js +0 -79
- package/build/server/main/domain/ai_agent/ai_agent.tools.js.map +0 -1
- package/build/server/main/domain/ai_agent/ai_agent.worker.js +0 -169
- package/build/server/main/domain/ai_agent/ai_agent.worker.js.map +0 -1
- package/build/server/main/domain/bin/bin.file.util.js +0 -109
- package/build/server/main/domain/bin/bin.file.util.js.map +0 -1
- package/build/server/main/domain/bin/bin.js +0 -147
- package/build/server/main/domain/bin/bin.js.map +0 -1
- package/build/server/main/domain/bin/get_bin_dependency.js +0 -36
- package/build/server/main/domain/bin/get_bin_dependency.js.map +0 -1
- package/build/server/main/domain/crypto/crypto.controller.js +0 -50
- package/build/server/main/domain/crypto/crypto.controller.js.map +0 -1
- package/build/server/main/domain/crypto/crypto.service.js +0 -112
- package/build/server/main/domain/crypto/crypto.service.js.map +0 -1
- package/build/server/main/domain/data/DataUtil.js +0 -127
- package/build/server/main/domain/data/DataUtil.js.map +0 -1
- package/build/server/main/domain/data/basedata/base_data_util.js +0 -214
- package/build/server/main/domain/data/basedata/base_data_util.js.map +0 -1
- package/build/server/main/domain/data/data_type.js +0 -92
- package/build/server/main/domain/data/data_type.js.map +0 -1
- package/build/server/main/domain/ddns/ddns.ali.server.js +0 -77
- package/build/server/main/domain/ddns/ddns.ali.server.js.map +0 -1
- package/build/server/main/domain/ddns/ddns.controller.js +0 -88
- package/build/server/main/domain/ddns/ddns.controller.js.map +0 -1
- package/build/server/main/domain/ddns/ddns.dnspod.service.js +0 -102
- package/build/server/main/domain/ddns/ddns.dnspod.service.js.map +0 -1
- package/build/server/main/domain/ddns/ddns.pre.js +0 -104
- package/build/server/main/domain/ddns/ddns.pre.js.map +0 -1
- package/build/server/main/domain/ddns/ddns.service.js +0 -161
- package/build/server/main/domain/ddns/ddns.service.js.map +0 -1
- package/build/server/main/domain/ddns/ddns.tengxun.service.js +0 -46
- package/build/server/main/domain/ddns/ddns.tengxun.service.js.map +0 -1
- package/build/server/main/domain/ddns/tx/abstract_client.js +0 -247
- package/build/server/main/domain/ddns/tx/abstract_client.js.map +0 -1
- package/build/server/main/domain/ddns/tx/dnspod_client.js +0 -38
- package/build/server/main/domain/ddns/tx/dnspod_client.js.map +0 -1
- package/build/server/main/domain/ddns/tx/dnspod_models.js +0 -3
- package/build/server/main/domain/ddns/tx/dnspod_models.js.map +0 -1
- package/build/server/main/domain/ddns/tx/exception/tencent_cloud_sdk_exception.js +0 -38
- package/build/server/main/domain/ddns/tx/exception/tencent_cloud_sdk_exception.js.map +0 -1
- package/build/server/main/domain/ddns/tx/http/fetch.js +0 -3
- package/build/server/main/domain/ddns/tx/http/fetch.js.map +0 -1
- package/build/server/main/domain/ddns/tx/http/http_connection.js +0 -181
- package/build/server/main/domain/ddns/tx/http/http_connection.js.map +0 -1
- package/build/server/main/domain/ddns/tx/interface.js +0 -5
- package/build/server/main/domain/ddns/tx/interface.js.map +0 -1
- package/build/server/main/domain/ddns/tx/sdk_version.js +0 -5
- package/build/server/main/domain/ddns/tx/sdk_version.js.map +0 -1
- package/build/server/main/domain/ddns/tx/sign.js +0 -142
- package/build/server/main/domain/ddns/tx/sign.js.map +0 -1
- package/build/server/main/domain/ddns/tx/sse_response_model.js +0 -89
- package/build/server/main/domain/ddns/tx/sse_response_model.js.map +0 -1
- package/build/server/main/domain/file/FileUtil.js +0 -230
- package/build/server/main/domain/file/FileUtil.js.map +0 -1
- package/build/server/main/domain/file/file.compress.js +0 -246
- package/build/server/main/domain/file/file.compress.js.map +0 -1
- package/build/server/main/domain/file/file.controller.js +0 -450
- package/build/server/main/domain/file/file.controller.js.map +0 -1
- package/build/server/main/domain/file/file.service.js +0 -1276
- package/build/server/main/domain/file/file.service.js.map +0 -1
- package/build/server/main/domain/file/search/file.search.js +0 -78
- package/build/server/main/domain/file/search/file.search.js.map +0 -1
- package/build/server/main/domain/file/search/file.search.worker.js +0 -107
- package/build/server/main/domain/file/search/file.search.worker.js.map +0 -1
- package/build/server/main/domain/file/search/file.type.js +0 -3
- package/build/server/main/domain/file/search/file.type.js.map +0 -1
- package/build/server/main/domain/file/workflow/workflow.process.js +0 -100
- package/build/server/main/domain/file/workflow/workflow.process.js.map +0 -1
- package/build/server/main/domain/file/workflow/workflow.service.js +0 -659
- package/build/server/main/domain/file/workflow/workflow.service.js.map +0 -1
- package/build/server/main/domain/file/workflow/workflow.util.js +0 -111
- package/build/server/main/domain/file/workflow/workflow.util.js.map +0 -1
- package/build/server/main/domain/navindex/navindex.controller.js +0 -73
- package/build/server/main/domain/navindex/navindex.controller.js.map +0 -1
- package/build/server/main/domain/net/net.controller.js +0 -318
- package/build/server/main/domain/net/net.controller.js.map +0 -1
- package/build/server/main/domain/net/net.datautil.js +0 -8
- package/build/server/main/domain/net/net.datautil.js.map +0 -1
- package/build/server/main/domain/net/net.service.js +0 -627
- package/build/server/main/domain/net/net.service.js.map +0 -1
- package/build/server/main/domain/net/tcp.forward.client.service.js +0 -223
- package/build/server/main/domain/net/tcp.forward.client.service.js.map +0 -1
- package/build/server/main/domain/net/tcp.forward.controller.js +0 -482
- package/build/server/main/domain/net/tcp.forward.controller.js.map +0 -1
- package/build/server/main/domain/net/tcp.forward.server.service.js +0 -407
- package/build/server/main/domain/net/tcp.forward.server.service.js.map +0 -1
- package/build/server/main/domain/net/type.js +0 -3
- package/build/server/main/domain/net/type.js.map +0 -1
- package/build/server/main/domain/net/util/NetClientUtil.js +0 -76
- package/build/server/main/domain/net/util/NetClientUtil.js.map +0 -1
- package/build/server/main/domain/net/util/NetServerUtil.js +0 -128
- package/build/server/main/domain/net/util/NetServerUtil.js.map +0 -1
- package/build/server/main/domain/net/util/NetUtil.js +0 -187
- package/build/server/main/domain/net/util/NetUtil.js.map +0 -1
- package/build/server/main/domain/net/util/tcp.client.js +0 -211
- package/build/server/main/domain/net/util/tcp.client.js.map +0 -1
- package/build/server/main/domain/net/util/tcp_stream_util.js +0 -69
- package/build/server/main/domain/net/util/tcp_stream_util.js.map +0 -1
- package/build/server/main/domain/net/util/type.js +0 -3
- package/build/server/main/domain/net/util/type.js.map +0 -1
- package/build/server/main/domain/net/virtual/tcp_proxy.js +0 -125
- package/build/server/main/domain/net/virtual/tcp_proxy.js.map +0 -1
- package/build/server/main/domain/net/virtual/virtual.client.service.js +0 -402
- package/build/server/main/domain/net/virtual/virtual.client.service.js.map +0 -1
- package/build/server/main/domain/net/virtual/virtual.controller.js +0 -211
- package/build/server/main/domain/net/virtual/virtual.controller.js.map +0 -1
- package/build/server/main/domain/net/virtual/virtual.server.service.js +0 -72
- package/build/server/main/domain/net/virtual/virtual.server.service.js.map +0 -1
- package/build/server/main/domain/pre/lifeRecordService.js +0 -79
- package/build/server/main/domain/pre/lifeRecordService.js.map +0 -1
- package/build/server/main/domain/rdp/lib/asn1/ber.js +0 -66
- package/build/server/main/domain/rdp/lib/asn1/ber.js.map +0 -1
- package/build/server/main/domain/rdp/lib/asn1/index.js +0 -9
- package/build/server/main/domain/rdp/lib/asn1/index.js.map +0 -1
- package/build/server/main/domain/rdp/lib/asn1/spec.js +0 -56
- package/build/server/main/domain/rdp/lib/asn1/spec.js.map +0 -1
- package/build/server/main/domain/rdp/lib/asn1/univ.js +0 -315
- package/build/server/main/domain/rdp/lib/asn1/univ.js.map +0 -1
- package/build/server/main/domain/rdp/lib/core/error.js +0 -25
- package/build/server/main/domain/rdp/lib/core/error.js.map +0 -1
- package/build/server/main/domain/rdp/lib/core/index.js +0 -13
- package/build/server/main/domain/rdp/lib/core/index.js.map +0 -1
- package/build/server/main/domain/rdp/lib/core/layer.js +0 -135
- package/build/server/main/domain/rdp/lib/core/layer.js.map +0 -1
- package/build/server/main/domain/rdp/lib/core/log.js +0 -25
- package/build/server/main/domain/rdp/lib/core/log.js.map +0 -1
- package/build/server/main/domain/rdp/lib/core/rle.js +0 -22699
- package/build/server/main/domain/rdp/lib/core/rle.js.map +0 -1
- package/build/server/main/domain/rdp/lib/core/type.js +0 -245
- package/build/server/main/domain/rdp/lib/core/type.js.map +0 -1
- package/build/server/main/domain/rdp/lib/index.js +0 -6
- package/build/server/main/domain/rdp/lib/index.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/cert.js +0 -115
- package/build/server/main/domain/rdp/lib/protocol/cert.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/index.js +0 -11
- package/build/server/main/domain/rdp/lib/protocol/index.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/nla.js +0 -549
- package/build/server/main/domain/rdp/lib/protocol/nla.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/pdu/caps.js +0 -486
- package/build/server/main/domain/rdp/lib/protocol/pdu/caps.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/pdu/cliprdr.js +0 -167
- package/build/server/main/domain/rdp/lib/protocol/pdu/cliprdr.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/pdu/data.js +0 -876
- package/build/server/main/domain/rdp/lib/protocol/pdu/data.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/pdu/global.js +0 -260
- package/build/server/main/domain/rdp/lib/protocol/pdu/global.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/pdu/index.js +0 -13
- package/build/server/main/domain/rdp/lib/protocol/pdu/index.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/pdu/lic.js +0 -199
- package/build/server/main/domain/rdp/lib/protocol/pdu/lic.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/pdu/sec.js +0 -333
- package/build/server/main/domain/rdp/lib/protocol/pdu/sec.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/rdp.js +0 -255
- package/build/server/main/domain/rdp/lib/protocol/rdp.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/t125/gcc.js +0 -354
- package/build/server/main/domain/rdp/lib/protocol/t125/gcc.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/t125/index.js +0 -7
- package/build/server/main/domain/rdp/lib/protocol/t125/index.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/t125/mcs.js +0 -318
- package/build/server/main/domain/rdp/lib/protocol/t125/mcs.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/t125/per.js +0 -188
- package/build/server/main/domain/rdp/lib/protocol/t125/per.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/tpkt.js +0 -94
- package/build/server/main/domain/rdp/lib/protocol/tpkt.js.map +0 -1
- package/build/server/main/domain/rdp/lib/protocol/x224.js +0 -207
- package/build/server/main/domain/rdp/lib/protocol/x224.js.map +0 -1
- package/build/server/main/domain/rdp/lib/security/index.js +0 -7
- package/build/server/main/domain/rdp/lib/security/index.js.map +0 -1
- package/build/server/main/domain/rdp/lib/security/jsbn.js +0 -1372
- package/build/server/main/domain/rdp/lib/security/jsbn.js.map +0 -1
- package/build/server/main/domain/rdp/lib/security/md4.js +0 -401
- package/build/server/main/domain/rdp/lib/security/md4.js.map +0 -1
- package/build/server/main/domain/rdp/lib/security/rc4.js +0 -45
- package/build/server/main/domain/rdp/lib/security/rc4.js.map +0 -1
- package/build/server/main/domain/rdp/lib/security/rsa.js +0 -15
- package/build/server/main/domain/rdp/lib/security/rsa.js.map +0 -1
- package/build/server/main/domain/rdp/lib/security/x509.js +0 -106
- package/build/server/main/domain/rdp/lib/security/x509.js.map +0 -1
- package/build/server/main/domain/rdp/rdp.controller.js +0 -116
- package/build/server/main/domain/rdp/rdp.controller.js.map +0 -1
- package/build/server/main/domain/rdp/rdp.service.js +0 -117
- package/build/server/main/domain/rdp/rdp.service.js.map +0 -1
- package/build/server/main/domain/setting/setting.controller.js +0 -621
- package/build/server/main/domain/setting/setting.controller.js.map +0 -1
- package/build/server/main/domain/setting/setting.prefile.js +0 -69
- package/build/server/main/domain/setting/setting.prefile.js.map +0 -1
- package/build/server/main/domain/setting/setting.service.js +0 -763
- package/build/server/main/domain/setting/setting.service.js.map +0 -1
- package/build/server/main/domain/shell/shell.controller.js +0 -92
- package/build/server/main/domain/shell/shell.controller.js.map +0 -1
- package/build/server/main/domain/shell/shell.service.js +0 -448
- package/build/server/main/domain/shell/shell.service.js.map +0 -1
- package/build/server/main/domain/shell/util.js +0 -101
- package/build/server/main/domain/shell/util.js.map +0 -1
- package/build/server/main/domain/ssh/ssh.controller.js +0 -203
- package/build/server/main/domain/ssh/ssh.controller.js.map +0 -1
- package/build/server/main/domain/ssh/ssh.service.js +0 -238
- package/build/server/main/domain/ssh/ssh.service.js.map +0 -1
- package/build/server/main/domain/ssh/ssh.ssh2.js +0 -217
- package/build/server/main/domain/ssh/ssh.ssh2.js.map +0 -1
- package/build/server/main/domain/sys/sys.controller.js +0 -374
- package/build/server/main/domain/sys/sys.controller.js.map +0 -1
- package/build/server/main/domain/sys/sys.docker.service.js +0 -339
- package/build/server/main/domain/sys/sys.docker.service.js.map +0 -1
- package/build/server/main/domain/sys/sys.process.service.js +0 -218
- package/build/server/main/domain/sys/sys.process.service.js.map +0 -1
- package/build/server/main/domain/sys/sys.service.js +0 -85
- package/build/server/main/domain/sys/sys.service.js.map +0 -1
- package/build/server/main/domain/sys/sys.sys.service.js +0 -206
- package/build/server/main/domain/sys/sys.sys.service.js.map +0 -1
- package/build/server/main/domain/sys/sys.systemd.service.js +0 -276
- package/build/server/main/domain/sys/sys.systemd.service.js.map +0 -1
- package/build/server/main/domain/sys/sys.utl.js +0 -42
- package/build/server/main/domain/sys/sys.utl.js.map +0 -1
- package/build/server/main/domain/user/user.controller.js +0 -277
- package/build/server/main/domain/user/user.controller.js.map +0 -1
- package/build/server/main/domain/user/user.hash.js +0 -8
- package/build/server/main/domain/user/user.hash.js.map +0 -1
- package/build/server/main/domain/user/user.service.js +0 -584
- package/build/server/main/domain/user/user.service.js.map +0 -1
- package/build/server/main/domain/video/video.controller.js +0 -71
- package/build/server/main/domain/video/video.controller.js.map +0 -1
- package/build/server/main/domain/video/video.service.js +0 -45
- package/build/server/main/domain/video/video.service.js.map +0 -1
- package/build/server/main/main.js +0 -171
- package/build/server/main/main.js.map +0 -1
- package/build/server/main/other/Result.js +0 -25
- package/build/server/main/other/Result.js.map +0 -1
- package/build/server/main/other/cache.js +0 -50
- package/build/server/main/other/cache.js.map +0 -1
- package/build/server/main/other/config.js +0 -6
- package/build/server/main/other/config.js.map +0 -1
- package/build/server/main/other/middleware/AuthMiddleware.js +0 -101
- package/build/server/main/other/middleware/AuthMiddleware.js.map +0 -1
- package/build/server/main/other/middleware/GlobalErrorHandler.js +0 -23
- package/build/server/main/other/middleware/GlobalErrorHandler.js.map +0 -1
- package/build/server/main/other/middleware/decorator.js +0 -15
- package/build/server/main/other/middleware/decorator.js.map +0 -1
- package/build/server/main/other/middleware/redirect.js +0 -20
- package/build/server/main/other/middleware/redirect.js.map +0 -1
- package/build/server/main/server.js +0 -22
- package/build/server/main/server.js.map +0 -1
- package/build/server/main/threads/filecat/threads.filecat.js +0 -16
- package/build/server/main/threads/filecat/threads.filecat.js.map +0 -1
- package/build/server/main/threads/filecat/threads.work.filecat.js +0 -7
- package/build/server/main/threads/filecat/threads.work.filecat.js.map +0 -1
- package/build/server/main/threads/threads.main.js +0 -224
- package/build/server/main/threads/threads.main.js.map +0 -1
- package/build/server/main/threads/threads.type.js +0 -19
- package/build/server/main/threads/threads.type.js.map +0 -1
- package/build/server/main/threads/threads.work.js +0 -52
- package/build/server/main/threads/threads.work.js.map +0 -1
- package/build/server/main/watch.js +0 -187
- package/build/server/main/watch.js.map +0 -1
- package/build/server/tsconfig.tsbuildinfo +0 -1
- package/build/server/web/project/util/noty.js +0 -45
- package/build/server/web/project/util/noty.js.map +0 -1
- /package/build/dist/{377.4047ae540e74884d3ff5.js.LICENSE.txt → 377.23d2a705c084c416bf92.js.LICENSE.txt} +0 -0
- /package/build/dist/{943.d055d58eee66f1ab0414.js.LICENSE.txt → 943.88236423e67278d66648.js.LICENSE.txt} +0 -0
- /package/build/dist/{main.494c8bcf15274aeca600.js.LICENSE.txt → main.134bde9aaf8912fe8244.js.LICENSE.txt} +0 -0
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.WsServer = exports.Wss = void 0;
|
|
4
|
-
const router_1 = require("./router");
|
|
5
|
-
const WsData_1 = require("./WsData");
|
|
6
|
-
const Result_pojo_1 = require("../Result.pojo");
|
|
7
|
-
const StringUtil_1 = require("../StringUtil");
|
|
8
|
-
const constant_1 = require("./constant");
|
|
9
|
-
const url = require('url');
|
|
10
|
-
const allWssSet = new Set;
|
|
11
|
-
class Wss {
|
|
12
|
-
constructor(ws) {
|
|
13
|
-
this.dataMap = new Map();
|
|
14
|
-
this._close = [];
|
|
15
|
-
this.heart_time_stamp = Date.now();
|
|
16
|
-
this._ws = ws;
|
|
17
|
-
this.id = `${Date.now().toString()}_${(0, StringUtil_1.generateRandomHash)(4)}`;
|
|
18
|
-
}
|
|
19
|
-
get ws() {
|
|
20
|
-
return this._ws;
|
|
21
|
-
}
|
|
22
|
-
sendData(data) {
|
|
23
|
-
if (Array.isArray(data)) {
|
|
24
|
-
for (let i = 0; i < data.length; i++) {
|
|
25
|
-
this._ws.send(data[i]);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
this._ws.send(data);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
send(cmdType, data) {
|
|
33
|
-
const result = new WsData_1.WsData(cmdType);
|
|
34
|
-
result.context = data;
|
|
35
|
-
this._ws.send(result.encode());
|
|
36
|
-
}
|
|
37
|
-
static sendToAllClient(cmdType, data, wss_set) {
|
|
38
|
-
const result = new WsData_1.WsData(cmdType);
|
|
39
|
-
result.context = data;
|
|
40
|
-
const encode_data = result.encode();
|
|
41
|
-
for (const wss of (wss_set ?? allWssSet).values()) {
|
|
42
|
-
wss.sendData(encode_data);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
setClose(close) {
|
|
46
|
-
this._close.push(close);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.Wss = Wss;
|
|
50
|
-
class WsServer {
|
|
51
|
-
constructor(wss) {
|
|
52
|
-
this._wss = wss;
|
|
53
|
-
}
|
|
54
|
-
start(check) {
|
|
55
|
-
this._wss.on('connection', async function connection(ws, request) {
|
|
56
|
-
try {
|
|
57
|
-
const parsedUrl = url.parse(request.url, true);
|
|
58
|
-
const { query } = parsedUrl;
|
|
59
|
-
const token = query['token'];
|
|
60
|
-
if (!await check(token)) {
|
|
61
|
-
ws.close();
|
|
62
|
-
console.log('未验证的ws请求');
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
if (query['type'] === `${WsData_1.WsConnectType.data}`) {
|
|
66
|
-
const wss = new Wss(ws);
|
|
67
|
-
allWssSet.add(wss);
|
|
68
|
-
wss.token = token;
|
|
69
|
-
let closed = false;
|
|
70
|
-
const close = () => {
|
|
71
|
-
if (closed)
|
|
72
|
-
return;
|
|
73
|
-
closed = true;
|
|
74
|
-
allWssSet.delete(wss);
|
|
75
|
-
ws.close();
|
|
76
|
-
for (const fn of wss._close ?? []) {
|
|
77
|
-
try {
|
|
78
|
-
fn();
|
|
79
|
-
}
|
|
80
|
-
catch (e) {
|
|
81
|
-
console.error('关闭函数', e);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
clearInterval(wss.heart_interval);
|
|
85
|
-
};
|
|
86
|
-
wss.heart_interval = setInterval(() => {
|
|
87
|
-
if (Date.now() - wss.heart_time_stamp > constant_1.max_heart_interval) {
|
|
88
|
-
console.log('ws心跳断开');
|
|
89
|
-
close();
|
|
90
|
-
}
|
|
91
|
-
}, constant_1.heart_interval);
|
|
92
|
-
ws.on('message', async function incoming(message) {
|
|
93
|
-
const data = WsData_1.WsData.decode(message);
|
|
94
|
-
data.wss = wss;
|
|
95
|
-
wss.heart_time_stamp = Date.now();
|
|
96
|
-
if (data.cmdType === WsData_1.CmdType.heart) {
|
|
97
|
-
wss.sendData(new WsData_1.WsData(data.cmdType, {}, undefined, data.random_id).encode());
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
const handle = router_1.routerHandlerMap.get(data.cmdType);
|
|
101
|
-
if (handle) {
|
|
102
|
-
try {
|
|
103
|
-
const rsq = await handle(data);
|
|
104
|
-
wss.sendData(new WsData_1.WsData(data.cmdType, rsq, undefined, data.random_id).encode());
|
|
105
|
-
}
|
|
106
|
-
catch (e) {
|
|
107
|
-
console.log(e);
|
|
108
|
-
const p = new WsData_1.WsData(data.cmdType);
|
|
109
|
-
p.code = Result_pojo_1.RCode.Fail;
|
|
110
|
-
p.message = JSON.stringify(e);
|
|
111
|
-
p.random_id = data.random_id;
|
|
112
|
-
wss.sendData(p.encode());
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
else {
|
|
116
|
-
console.log("没有匹配到路由");
|
|
117
|
-
}
|
|
118
|
-
});
|
|
119
|
-
wss.ws.on('close', () => {
|
|
120
|
-
close();
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
else if (query['type'] === `${WsData_1.WsConnectType.other}`) {
|
|
124
|
-
const handler = router_1.otherRouterHandlerMap.get(parseInt(query['code']));
|
|
125
|
-
if (handler) {
|
|
126
|
-
handler(ws, query);
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
console.log('没找到对应路径');
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
console.log('ws未找到对应的访问途径');
|
|
134
|
-
ws.close();
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
catch (e) {
|
|
138
|
-
console.log('ws connection', e);
|
|
139
|
-
ws.close();
|
|
140
|
-
}
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
exports.WsServer = WsServer;
|
|
145
|
-
//# sourceMappingURL=ws.server.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ws.server.js","sourceRoot":"","sources":["../../../../src/common/frame/ws.server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.withLock = withLock;
|
|
4
|
-
exports.debounce = debounce;
|
|
5
|
-
exports.throttle = throttle;
|
|
6
|
-
function withLock(fn, timeoutMs, throw_err) {
|
|
7
|
-
if (timeoutMs == null) {
|
|
8
|
-
timeoutMs = 60_000;
|
|
9
|
-
}
|
|
10
|
-
let locked = false;
|
|
11
|
-
let timer = null;
|
|
12
|
-
let token = 0;
|
|
13
|
-
function unlock(myToken) {
|
|
14
|
-
if (!locked || token !== myToken)
|
|
15
|
-
return;
|
|
16
|
-
locked = false;
|
|
17
|
-
token++;
|
|
18
|
-
if (timer) {
|
|
19
|
-
clearTimeout(timer);
|
|
20
|
-
timer = null;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
return async function (...args) {
|
|
24
|
-
if (locked)
|
|
25
|
-
return;
|
|
26
|
-
locked = true;
|
|
27
|
-
const myToken = token;
|
|
28
|
-
if (timeoutMs >= 0) {
|
|
29
|
-
timer = setTimeout(() => {
|
|
30
|
-
unlock(myToken);
|
|
31
|
-
}, timeoutMs);
|
|
32
|
-
}
|
|
33
|
-
try {
|
|
34
|
-
return await fn(...args);
|
|
35
|
-
}
|
|
36
|
-
catch (e) {
|
|
37
|
-
console.log(e?.message || e);
|
|
38
|
-
if (throw_err)
|
|
39
|
-
throw e;
|
|
40
|
-
}
|
|
41
|
-
finally {
|
|
42
|
-
unlock(myToken);
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
function debounce(fn, delay = 200) {
|
|
47
|
-
let timer = null;
|
|
48
|
-
return function (...args) {
|
|
49
|
-
clearTimeout(timer);
|
|
50
|
-
timer = setTimeout(() => {
|
|
51
|
-
fn.apply(this, args);
|
|
52
|
-
}, delay);
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
function throttle(fn, delay = 200) {
|
|
56
|
-
let last = 0;
|
|
57
|
-
return function (...args) {
|
|
58
|
-
const now = Date.now();
|
|
59
|
-
if (now - last >= delay) {
|
|
60
|
-
last = now;
|
|
61
|
-
fn.apply(this, args);
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=fun.util.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fun.util.js","sourceRoot":"","sources":["../../../src/common/fun.util.ts"],"names":[],"mappings":";;AAEA,4BA4CC;AAOD,4BASC;AAGD,4BAWC;AA1ED,SAAgB,QAAQ,CACpB,EAAK,EACL,SAAiB,EACjB,SAAkB;IAElB,IAAG,SAAS,IAAI,IAAI,EAAE,CAAC;QACnB,SAAS,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,IAAI,KAAK,GAA0B,IAAI,CAAA;IACvC,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,SAAS,MAAM,CAAC,OAAe;QAC3B,IAAI,CAAC,MAAM,IAAI,KAAK,KAAK,OAAO;YAAE,OAAM;QACxC,MAAM,GAAG,KAAK,CAAA;QACd,KAAK,EAAE,CAAA;QACP,IAAI,KAAK,EAAE,CAAC;YACR,YAAY,CAAC,KAAK,CAAC,CAAA;YACnB,KAAK,GAAG,IAAI,CAAA;QAChB,CAAC;IACL,CAAC;IACD,OAAO,KAAK,WACR,GAAG,IAAmB;QAGtB,IAAI,MAAM;YAAE,OAAM;QAClB,MAAM,GAAG,IAAI,CAAA;QACb,MAAM,OAAO,GAAG,KAAK,CAAA;QACrB,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACjB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAEpB,MAAM,CAAC,OAAO,CAAC,CAAA;YACnB,CAAC,EAAE,SAAS,CAAC,CAAA;QACjB,CAAC;QACD,IAAI,CAAC;YACD,OAAO,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QAC5B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,CAAA;YAC5B,IAAG,SAAS;gBACR,MAAM,CAAC,CAAC;QAChB,CAAC;gBAAS,CAAC;YACP,MAAM,CAAC,OAAO,CAAC,CAAA;QACnB,CAAC;IACL,CAAC,CAAA;AACL,CAAC;AAOD,SAAgB,QAAQ,CAAC,EAAE,EAAE,KAAK,GAAG,GAAG;IACpC,IAAI,KAAK,GAAG,IAAI,CAAC;IAEjB,OAAO,UAAU,GAAG,IAAI;QACpB,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACpB,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzB,CAAC,EAAE,KAAK,CAAC,CAAC;IACd,CAAC,CAAC;AACN,CAAC;AAGD,SAAgB,QAAQ,CAAC,EAAE,EAAE,KAAK,GAAG,GAAG;IACpC,IAAI,IAAI,GAAG,CAAC,CAAC;IAEb,OAAO,UAAU,GAAG,IAAI;QACpB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,GAAG,GAAG,CAAC;YACX,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzB,CAAC;IACL,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -1,198 +0,0 @@
|
|
|
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.Env = void 0;
|
|
7
|
-
const fs_1 = __importDefault(require("fs"));
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
|
-
const os_1 = __importDefault(require("os"));
|
|
10
|
-
const { execSync } = require('child_process');
|
|
11
|
-
const help = `
|
|
12
|
-
命令参数都需要加 --
|
|
13
|
-
1. update 升级(npm方式升级)
|
|
14
|
-
2. remove 移除(从npm)
|
|
15
|
-
3. version 版本
|
|
16
|
-
4. help 帮助信息
|
|
17
|
-
5. install 安装到systemd(只支持linux)
|
|
18
|
-
6. uninstall 从systemd卸载(只支持linux)
|
|
19
|
-
7 restart 重启systemd服务(只支持linux)
|
|
20
|
-
8. stop 停止运行systemd服务(支持linux)
|
|
21
|
-
// 以下参数都需要额外的参数输入 例如"filecat --port 8080 "端口参数 用于控制程序运行。
|
|
22
|
-
9. port 需要端口参数
|
|
23
|
-
10. env 输入环境配置文件
|
|
24
|
-
11. work_dir 工作目录,软件执行需要生成一些数据,会放到这个目录下,默认是启动软件所在的目录下的data文件夹
|
|
25
|
-
12. base_folder 软件管理的文件夹默认根路径,默认是启动软件所在的目录
|
|
26
|
-
13. username 登录账号 默认是admin (截止到1.0.5目前没有权限功能)
|
|
27
|
-
14. password 登录密码 默认是admin
|
|
28
|
-
15. reset_root_username 重新生成管理员的账号 (启动完请删除这个参数下次要再使用,下面的密码也是)
|
|
29
|
-
16. reset_root_password
|
|
30
|
-
17. base_url 路由前缀
|
|
31
|
-
18. lan 语言,只在第一次创建账号的时候生效 目前支持 zh(简体) en
|
|
32
|
-
19. watch 内置参数
|
|
33
|
-
对于shell支持filecat-restart 重启命令
|
|
34
|
-
`;
|
|
35
|
-
class Env {
|
|
36
|
-
static async parseArgs() {
|
|
37
|
-
return new Promise((resolve, reject) => {
|
|
38
|
-
const args = process.argv.slice(2);
|
|
39
|
-
const result = {};
|
|
40
|
-
for (let i = 0; i < args.length; i++) {
|
|
41
|
-
const arg = args[i];
|
|
42
|
-
if (arg.startsWith('--')) {
|
|
43
|
-
const key = arg.slice(2);
|
|
44
|
-
let value = true;
|
|
45
|
-
if (i + 1 < args.length && !args[i + 1].startsWith('--')) {
|
|
46
|
-
value = args[++i];
|
|
47
|
-
}
|
|
48
|
-
if (value === 'true') {
|
|
49
|
-
value = true;
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
if (value === 'false') {
|
|
53
|
-
value = false;
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
if (!isNaN(value)) {
|
|
57
|
-
value = Number(value);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
result[key] = value;
|
|
62
|
-
if (key === "install") {
|
|
63
|
-
if (os_1.default.platform() !== "linux") {
|
|
64
|
-
console.log("sorry现在只支持linux");
|
|
65
|
-
process.exit();
|
|
66
|
-
}
|
|
67
|
-
require("./install");
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
else if (key === "version") {
|
|
71
|
-
console.log(process.env.version);
|
|
72
|
-
process.exit();
|
|
73
|
-
}
|
|
74
|
-
else if (key === "update") {
|
|
75
|
-
execSync("npm install -g filecat");
|
|
76
|
-
process.exit();
|
|
77
|
-
}
|
|
78
|
-
else if (key === "help") {
|
|
79
|
-
console.log(help);
|
|
80
|
-
process.exit();
|
|
81
|
-
}
|
|
82
|
-
else if (key === "stop") {
|
|
83
|
-
if (os_1.default.platform() !== "linux") {
|
|
84
|
-
console.log("sorry现在只支持linux");
|
|
85
|
-
process.exit();
|
|
86
|
-
}
|
|
87
|
-
execSync("sudo systemctl stop filecat");
|
|
88
|
-
process.exit();
|
|
89
|
-
}
|
|
90
|
-
else if (key === "restart") {
|
|
91
|
-
if (os_1.default.platform() !== "linux") {
|
|
92
|
-
console.log("sorry现在只支持linux");
|
|
93
|
-
process.exit();
|
|
94
|
-
}
|
|
95
|
-
execSync(`sudo systemctl daemon-reload`);
|
|
96
|
-
execSync(`sudo systemctl restart filecat`);
|
|
97
|
-
process.exit();
|
|
98
|
-
}
|
|
99
|
-
else if (key === "uninstall") {
|
|
100
|
-
if (os_1.default.platform() !== "linux") {
|
|
101
|
-
console.log("sorry现在只支持linux");
|
|
102
|
-
process.exit();
|
|
103
|
-
}
|
|
104
|
-
execSync("sudo systemctl stop filecat");
|
|
105
|
-
execSync("sudo systemctl disable filecat");
|
|
106
|
-
execSync(`sudo rm /etc/systemd/system/filecat.service`);
|
|
107
|
-
execSync(`sudo systemctl daemon-reload`);
|
|
108
|
-
console.log("卸载完成");
|
|
109
|
-
process.exit();
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
for (const key of Object.keys(result)) {
|
|
114
|
-
this[key] = result[key];
|
|
115
|
-
}
|
|
116
|
-
if (this.env) {
|
|
117
|
-
const envData = fs_1.default.readFileSync(this.env, 'utf8');
|
|
118
|
-
this.load(envData, this);
|
|
119
|
-
}
|
|
120
|
-
resolve(1);
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
static updateEnv(list) {
|
|
124
|
-
if (!this.env)
|
|
125
|
-
return;
|
|
126
|
-
const envData = fs_1.default.readFileSync(path_1.default.join(this.env), 'utf8');
|
|
127
|
-
const envVariables = envData.split(/\r?\n/);
|
|
128
|
-
for (let index = 0; index < envVariables.length; index++) {
|
|
129
|
-
const line = envVariables[index];
|
|
130
|
-
for (const item of list) {
|
|
131
|
-
if (line.includes(item.key)) {
|
|
132
|
-
envVariables[index] = `${item.key}=${item.value || ""}`;
|
|
133
|
-
this[item.key] = item.value;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
fs_1.default.writeFileSync(path_1.default.join(this.env), envVariables.join('\n'));
|
|
138
|
-
}
|
|
139
|
-
static isNumeric(value) {
|
|
140
|
-
return /^-?\d+(\.\d+)?$/.test(value);
|
|
141
|
-
}
|
|
142
|
-
static parseValue(value) {
|
|
143
|
-
const trimmed = value.trim();
|
|
144
|
-
if ((trimmed.startsWith('"') && trimmed.endsWith('"')) ||
|
|
145
|
-
(trimmed.startsWith("'") && trimmed.endsWith("'"))) {
|
|
146
|
-
const unquoted = trimmed.slice(1, -1);
|
|
147
|
-
return unquoted
|
|
148
|
-
.replace(/\\n/g, '\n')
|
|
149
|
-
.replace(/\\r/g, '\r')
|
|
150
|
-
.replace(/\\t/g, '\t');
|
|
151
|
-
}
|
|
152
|
-
if (!isNaN(Number(trimmed))) {
|
|
153
|
-
return Number(trimmed);
|
|
154
|
-
}
|
|
155
|
-
if (trimmed.toLowerCase() === 'true') {
|
|
156
|
-
return true;
|
|
157
|
-
}
|
|
158
|
-
if (trimmed.toLowerCase() === 'false') {
|
|
159
|
-
return false;
|
|
160
|
-
}
|
|
161
|
-
return trimmed;
|
|
162
|
-
}
|
|
163
|
-
static load(envData, target) {
|
|
164
|
-
if (!envData)
|
|
165
|
-
return;
|
|
166
|
-
const envVariables = envData.split(/\r?\n/);
|
|
167
|
-
for (const rawLine of envVariables) {
|
|
168
|
-
const line = rawLine.trim();
|
|
169
|
-
if (!line || line.startsWith('#'))
|
|
170
|
-
continue;
|
|
171
|
-
const equalIndex = line.indexOf('=');
|
|
172
|
-
if (equalIndex === -1)
|
|
173
|
-
continue;
|
|
174
|
-
const key = line.slice(0, equalIndex).trim();
|
|
175
|
-
const value = line.slice(equalIndex + 1).trim();
|
|
176
|
-
if (!value) {
|
|
177
|
-
target[key] = undefined;
|
|
178
|
-
}
|
|
179
|
-
else {
|
|
180
|
-
try {
|
|
181
|
-
target[key] = JSON.parse(value);
|
|
182
|
-
}
|
|
183
|
-
catch (e) {
|
|
184
|
-
target[key] = this.parseValue(value);
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
exports.Env = Env;
|
|
191
|
-
Env.port = 5567;
|
|
192
|
-
Env.base_folder = process.cwd();
|
|
193
|
-
Env.username = "";
|
|
194
|
-
Env.password = "";
|
|
195
|
-
Env.work_dir = path_1.default.join(process.cwd(), 'data');
|
|
196
|
-
Env.env = "";
|
|
197
|
-
Env.lan = "en";
|
|
198
|
-
//# sourceMappingURL=Env.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Env.js","sourceRoot":"","sources":["../../../../src/common/node/Env.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,209 +0,0 @@
|
|
|
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.ChildProcessUtil = exports.FatherProcessUtil = exports.node_process_cmd = exports.filecat_cmd = void 0;
|
|
7
|
-
const fs_1 = __importDefault(require("fs"));
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
|
-
const child_process_1 = require("child_process");
|
|
10
|
-
const needle_1 = __importDefault(require("needle"));
|
|
11
|
-
const FileUtil_1 = require("../../main/domain/file/FileUtil");
|
|
12
|
-
var filecat_cmd;
|
|
13
|
-
(function (filecat_cmd) {
|
|
14
|
-
filecat_cmd["filecat_restart"] = "filecat-restart";
|
|
15
|
-
filecat_cmd["filecat_upgrade"] = "filecat-upgrade";
|
|
16
|
-
filecat_cmd["filecat_down"] = "filecat-down";
|
|
17
|
-
})(filecat_cmd || (exports.filecat_cmd = filecat_cmd = {}));
|
|
18
|
-
var node_process_cmd;
|
|
19
|
-
(function (node_process_cmd) {
|
|
20
|
-
node_process_cmd["npm_update"] = "npm_update";
|
|
21
|
-
})(node_process_cmd || (exports.node_process_cmd = node_process_cmd = {}));
|
|
22
|
-
class FatherProcessUtil {
|
|
23
|
-
static send(child, params) {
|
|
24
|
-
if (!child)
|
|
25
|
-
return;
|
|
26
|
-
if (child.killed)
|
|
27
|
-
return;
|
|
28
|
-
if (!child.send)
|
|
29
|
-
return;
|
|
30
|
-
try {
|
|
31
|
-
child.send(params);
|
|
32
|
-
}
|
|
33
|
-
catch (e) {
|
|
34
|
-
console.warn('IPC 已关闭,忽略消息');
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
static npmGlobalInstall(pkgName, PATH, registry, onLog) {
|
|
38
|
-
if (!onLog) {
|
|
39
|
-
onLog = console.log;
|
|
40
|
-
}
|
|
41
|
-
return new Promise((resolve, reject) => {
|
|
42
|
-
const args = ["i", "-g", pkgName];
|
|
43
|
-
if (registry) {
|
|
44
|
-
args.push(`--registry=${registry}`);
|
|
45
|
-
}
|
|
46
|
-
const isWin = process.platform === "win32";
|
|
47
|
-
const npm = isWin ? "npm.cmd" : "npm";
|
|
48
|
-
console.log(`全局安装 ${npm} ${JSON.stringify(args)}`);
|
|
49
|
-
const child = (0, child_process_1.spawn)(npm, args, {
|
|
50
|
-
stdio: ["ignore", "pipe", "pipe"],
|
|
51
|
-
shell: process.platform === "win32",
|
|
52
|
-
env: {
|
|
53
|
-
...process.env,
|
|
54
|
-
PATH
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
child.stdout.on("data", (chunk) => {
|
|
58
|
-
const msg = chunk.toString();
|
|
59
|
-
onLog?.(msg, "stdout");
|
|
60
|
-
});
|
|
61
|
-
child.stderr.on("data", (chunk) => {
|
|
62
|
-
const msg = chunk.toString();
|
|
63
|
-
onLog?.(msg, "stderr");
|
|
64
|
-
});
|
|
65
|
-
child.on("close", (code) => {
|
|
66
|
-
if (code === 0) {
|
|
67
|
-
resolve();
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
reject(new Error(`npm install failed with code ${code}`));
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
child.on("error", (err) => {
|
|
74
|
-
reject(err);
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
exports.FatherProcessUtil = FatherProcessUtil;
|
|
80
|
-
const child_resolve = {};
|
|
81
|
-
const on_msg_id_map = {};
|
|
82
|
-
process.on('message', (msg) => {
|
|
83
|
-
console.log('收到父进程消息:', msg);
|
|
84
|
-
if (on_msg_id_map[msg.msg_id]) {
|
|
85
|
-
on_msg_id_map[msg.msg_id](msg.data);
|
|
86
|
-
}
|
|
87
|
-
if (child_resolve[msg.msg_id]) {
|
|
88
|
-
child_resolve[msg.msg_id](msg.data);
|
|
89
|
-
delete child_resolve[msg.msg_id];
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
class ChildProcessUtil {
|
|
93
|
-
static async send_father(msg, data, on_data) {
|
|
94
|
-
this.msg_id++;
|
|
95
|
-
if (this.msg_id > 100000) {
|
|
96
|
-
this.msg_id = 1;
|
|
97
|
-
}
|
|
98
|
-
const msg_id = this.msg_id;
|
|
99
|
-
this.msg_id++;
|
|
100
|
-
const on_data_msg_id = this.msg_id;
|
|
101
|
-
if (on_data) {
|
|
102
|
-
on_msg_id_map[on_data_msg_id] = on_data;
|
|
103
|
-
}
|
|
104
|
-
const a = await new Promise(resolve => {
|
|
105
|
-
child_resolve[msg_id] = resolve;
|
|
106
|
-
process.send?.({
|
|
107
|
-
msg,
|
|
108
|
-
msg_id,
|
|
109
|
-
on_data_msg_id,
|
|
110
|
-
data: data
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
delete on_msg_id_map[on_data_msg_id];
|
|
114
|
-
return a;
|
|
115
|
-
}
|
|
116
|
-
static down_load_file(url, dirPath, on_progress) {
|
|
117
|
-
return new Promise(async (resolve, reject) => {
|
|
118
|
-
try {
|
|
119
|
-
await FileUtil_1.FileUtil.mkdirSync(dirPath, { recursive: true });
|
|
120
|
-
const urlObj = new URL(url);
|
|
121
|
-
const stream = needle_1.default.get(url, {
|
|
122
|
-
follow_max: 5,
|
|
123
|
-
headers: {
|
|
124
|
-
"User-Agent": "node",
|
|
125
|
-
"Accept": "*/*"
|
|
126
|
-
}
|
|
127
|
-
});
|
|
128
|
-
let fileName = "";
|
|
129
|
-
let total = 0;
|
|
130
|
-
let downloaded = 0;
|
|
131
|
-
let lastPercent = -1;
|
|
132
|
-
let filePath = "";
|
|
133
|
-
let fileStream = null;
|
|
134
|
-
const cleanup = (err) => {
|
|
135
|
-
if (fileStream)
|
|
136
|
-
fileStream.destroy();
|
|
137
|
-
if (filePath && fs_1.default.existsSync(filePath)) {
|
|
138
|
-
try {
|
|
139
|
-
fs_1.default.unlinkSync(filePath);
|
|
140
|
-
}
|
|
141
|
-
catch { }
|
|
142
|
-
}
|
|
143
|
-
reject(err);
|
|
144
|
-
};
|
|
145
|
-
stream.on("response", (res) => {
|
|
146
|
-
if (res.statusCode && res.statusCode >= 400) {
|
|
147
|
-
cleanup(new Error(`下载失败: ${res.statusCode}`));
|
|
148
|
-
stream.destroy();
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
|
-
const disposition = res.headers["content-disposition"];
|
|
152
|
-
if (disposition) {
|
|
153
|
-
const match = disposition.match(/filename\*?=(?:UTF-8''|")?([^\";]+)/i);
|
|
154
|
-
if (match?.[1]) {
|
|
155
|
-
fileName = decodeURIComponent(match[1]);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
if (!fileName) {
|
|
159
|
-
fileName = path_1.default.basename(urlObj.pathname);
|
|
160
|
-
}
|
|
161
|
-
if (!fileName || fileName === "/") {
|
|
162
|
-
fileName = `download_${Date.now()}`;
|
|
163
|
-
}
|
|
164
|
-
filePath = path_1.default.resolve(dirPath, fileName);
|
|
165
|
-
fileStream = fs_1.default.createWriteStream(filePath);
|
|
166
|
-
fileStream.on("error", cleanup);
|
|
167
|
-
stream.pipe(fileStream);
|
|
168
|
-
total = Number(res.headers["content-length"] || 0);
|
|
169
|
-
});
|
|
170
|
-
stream.on("data", (chunk) => {
|
|
171
|
-
downloaded += chunk.length;
|
|
172
|
-
if (total > 0) {
|
|
173
|
-
const percent = Math.floor((downloaded / total) * 100);
|
|
174
|
-
if (percent !== lastPercent) {
|
|
175
|
-
lastPercent = percent;
|
|
176
|
-
on_progress(percent);
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
});
|
|
180
|
-
stream.on("end", () => {
|
|
181
|
-
if (fileStream) {
|
|
182
|
-
fileStream.end();
|
|
183
|
-
}
|
|
184
|
-
});
|
|
185
|
-
if (fileStream) {
|
|
186
|
-
fileStream.on("finish", () => {
|
|
187
|
-
on_progress(100);
|
|
188
|
-
resolve(filePath);
|
|
189
|
-
});
|
|
190
|
-
}
|
|
191
|
-
else {
|
|
192
|
-
stream.on("close", () => {
|
|
193
|
-
if (filePath) {
|
|
194
|
-
on_progress(100);
|
|
195
|
-
resolve(filePath);
|
|
196
|
-
}
|
|
197
|
-
});
|
|
198
|
-
}
|
|
199
|
-
stream.on("error", cleanup);
|
|
200
|
-
}
|
|
201
|
-
catch (e) {
|
|
202
|
-
reject(e);
|
|
203
|
-
}
|
|
204
|
-
});
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
exports.ChildProcessUtil = ChildProcessUtil;
|
|
208
|
-
ChildProcessUtil.msg_id = 1;
|
|
209
|
-
//# sourceMappingURL=childProcessUtil.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"childProcessUtil.js","sourceRoot":"","sources":["../../../../src/common/node/childProcessUtil.ts"],"names":[],"mappings":"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"}
|