@lsby/net-core 0.11.2 → 0.13.3
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/dist/bin/gen-api-list/bin.cjs +14 -2
- package/dist/bin/gen-api-list/index.cjs +14 -2
- package/dist/bin/gen-api-type/bin.cjs +60 -43
- package/dist/bin/gen-api-type/index.cjs +60 -43
- package/dist/bin/gen-test/bin.cjs +16 -4
- package/dist/bin/gen-test/index.cjs +16 -4
- package/dist/cjs/bin/gen-api-list/bin.cjs +14 -2
- package/dist/cjs/bin/gen-api-list/index.cjs +14 -2
- package/dist/cjs/bin/gen-api-type/bin.cjs +60 -43
- package/dist/cjs/bin/gen-api-type/index.cjs +60 -43
- package/dist/cjs/bin/gen-test/bin.cjs +16 -4
- package/dist/cjs/bin/gen-test/index.cjs +16 -4
- package/dist/cjs/global/log.cjs +31 -0
- package/dist/cjs/global/log.d.cts +5 -0
- package/dist/cjs/global/model/hub.cjs +84 -0
- package/dist/cjs/global/model/hub.d.cts +26 -0
- package/dist/cjs/global/model/web-socket.cjs +166 -0
- package/dist/cjs/global/model/web-socket.d.cts +21 -0
- package/dist/cjs/global/web-socket.cjs +169 -0
- package/dist/cjs/global/web-socket.d.cts +7 -0
- package/dist/cjs/help/help.cjs +151 -2
- package/dist/cjs/help/help.d.cts +12 -5
- package/dist/cjs/help/interior.cjs +12 -1
- package/dist/cjs/help/interior.d.cts +6 -3
- package/dist/cjs/index.cjs +672 -454
- package/dist/cjs/index.d.cts +27 -18
- package/dist/cjs/interface/interface-base.cjs +15 -17
- package/dist/cjs/interface/interface-base.d.cts +43 -5
- package/dist/cjs/interface/interface-logic.cjs +148 -12
- package/dist/cjs/interface/interface-logic.d.cts +131 -7
- package/dist/cjs/interface/interface-plugin.cjs +45 -0
- package/dist/cjs/interface/interface-plugin.d.cts +37 -0
- package/dist/cjs/{plugin/plug.cjs → interface/interface-returner.cjs} +7 -17
- package/dist/cjs/interface/interface-returner.d.cts +32 -0
- package/dist/cjs/interface/interface-test.cjs +41 -9
- package/dist/cjs/interface/interface-test.d.cts +29 -6
- package/dist/cjs/plugin/{extend/custom-data.cjs → custom-data.cjs} +18 -11
- package/dist/cjs/plugin/custom-data.d.cts +16 -0
- package/dist/cjs/plugin/custom.cjs +54 -0
- package/dist/cjs/plugin/custom.d.cts +18 -0
- package/dist/cjs/plugin/form.cjs +109 -0
- package/dist/cjs/plugin/form.d.cts +37 -0
- package/dist/cjs/plugin/{extend/json.cjs → json.cjs} +24 -20
- package/dist/cjs/plugin/json.d.cts +36 -0
- package/dist/cjs/plugin/{extend/log-headers.cjs → log-headers.cjs} +18 -12
- package/dist/cjs/plugin/log-headers.d.cts +17 -0
- package/dist/cjs/plugin/parse-path.cjs +100 -0
- package/dist/cjs/plugin/parse-path.d.cts +73 -0
- package/dist/cjs/plugin/{extend/query.cjs → query.cjs} +24 -20
- package/dist/cjs/plugin/query.d.cts +36 -0
- package/dist/cjs/plugin/urlencoded.cjs +103 -0
- package/dist/cjs/plugin/urlencoded.d.cts +36 -0
- package/dist/cjs/plugin/web-socket.cjs +183 -0
- package/dist/cjs/plugin/web-socket.d.cts +31 -0
- package/dist/cjs/returner/common.cjs +107 -0
- package/dist/cjs/returner/common.d.cts +36 -0
- package/dist/cjs/returner/custom.cjs +55 -0
- package/dist/cjs/returner/custom.d.cts +26 -0
- package/dist/cjs/returner/file-stream-download.cjs +111 -0
- package/dist/cjs/returner/file-stream-download.d.cts +33 -0
- package/dist/cjs/returner/static-file.cjs +95 -0
- package/dist/cjs/returner/static-file.d.cts +30 -0
- package/dist/cjs/returner/virtual-file.cjs +66 -0
- package/dist/cjs/returner/virtual-file.d.cts +30 -0
- package/dist/cjs/server/server.cjs +187 -139
- package/dist/cjs/server/server.d.cts +37 -4
- package/dist/cjs/symbol/export-type.cjs +1 -1
- package/dist/cjs/types/types.cjs +18 -0
- package/dist/cjs/types/types.d.cts +22 -0
- package/dist/esm/bin/gen-api-list/bin.js +2 -1
- package/dist/esm/bin/gen-api-list/index.js +2 -1
- package/dist/esm/bin/gen-api-type/bin.js +1 -1
- package/dist/esm/bin/gen-api-type/index.js +1 -1
- package/dist/esm/bin/gen-test/bin.js +2 -1
- package/dist/esm/bin/gen-test/index.js +2 -1
- package/dist/esm/{chunk-ZIVQ3WZA.js → chunk-2CGBESLT.js} +12 -2
- package/dist/esm/{chunk-B5DKJ5AV.js → chunk-6OPO4OWK.js} +60 -43
- package/dist/esm/{chunk-C5FED6EO.js → chunk-7GT72IUT.js} +34 -16
- package/dist/esm/chunk-7OU27OBO.js +14 -0
- package/dist/esm/chunk-7S6SPW32.js +35 -0
- package/dist/esm/{chunk-NRUNCIP7.js → chunk-AB35ZHL3.js} +48 -59
- package/dist/esm/chunk-AG36MLAF.js +65 -0
- package/dist/esm/chunk-EGIJQJFI.js +21 -0
- package/dist/esm/chunk-F5IAX56T.js +7 -0
- package/dist/esm/chunk-FP6Q65NN.js +7 -0
- package/dist/esm/chunk-GGNRLQAM.js +48 -0
- package/dist/esm/chunk-HINGVOU6.js +21 -0
- package/dist/esm/{chunk-ZF7EC2OM.js → chunk-HT7VG4BT.js} +1 -1
- package/dist/esm/{chunk-AFWSZAXR.js → chunk-HWIV3BTW.js} +7 -4
- package/dist/esm/chunk-J5BX4WJJ.js +69 -0
- package/dist/esm/chunk-JLNRCPJD.js +34 -0
- package/dist/esm/chunk-JSMTJQ3K.js +69 -0
- package/dist/esm/chunk-MRTIZDKN.js +88 -0
- package/dist/esm/{chunk-7LQRWJ3X.js → chunk-MVMDWJTB.js} +14 -1
- package/dist/esm/chunk-NTDDPUP7.js +59 -0
- package/dist/esm/chunk-OEABQXPT.js +29 -0
- package/dist/esm/chunk-P23ZAK4I.js +10 -0
- package/dist/esm/chunk-PAP3X3RJ.js +37 -0
- package/dist/esm/chunk-QQFE27NG.js +37 -0
- package/dist/esm/chunk-RVEKW2PT.js +31 -0
- package/dist/esm/chunk-RWSXMQQI.js +22 -0
- package/dist/esm/{chunk-E23EZWBE.js → chunk-TE6CG2FF.js} +9 -13
- package/dist/esm/{chunk-UKAZDGUR.js → chunk-W7HT4TA6.js} +5 -2
- package/dist/esm/chunk-WXTNTK3M.js +40 -0
- package/dist/esm/global/log.d.ts +5 -0
- package/dist/esm/global/log.js +6 -0
- package/dist/esm/global/model/hub.d.ts +26 -0
- package/dist/esm/global/model/hub.js +8 -0
- package/dist/esm/global/model/web-socket.d.ts +21 -0
- package/dist/esm/global/model/web-socket.js +8 -0
- package/dist/esm/global/web-socket.d.ts +7 -0
- package/dist/esm/global/web-socket.js +9 -0
- package/dist/esm/help/help.d.ts +12 -5
- package/dist/esm/help/help.js +9 -3
- package/dist/esm/help/interior.d.ts +6 -3
- package/dist/esm/help/interior.js +3 -1
- package/dist/esm/index.d.ts +27 -18
- package/dist/esm/index.js +63 -59
- package/dist/esm/interface/interface-base.d.ts +43 -5
- package/dist/esm/interface/interface-base.js +1 -1
- package/dist/esm/interface/interface-logic.d.ts +131 -7
- package/dist/esm/interface/interface-logic.js +6 -2
- package/dist/esm/interface/interface-plugin.d.ts +37 -0
- package/dist/esm/{plugin/plug.js → interface/interface-plugin.js} +1 -1
- package/dist/esm/interface/interface-returner.d.ts +32 -0
- package/dist/esm/interface/interface-returner.js +6 -0
- package/dist/esm/interface/interface-test.d.ts +29 -6
- package/dist/esm/interface/interface-test.js +5 -3
- package/dist/esm/plugin/custom-data.d.ts +16 -0
- package/dist/esm/plugin/{extend/custom-data.js → custom-data.js} +2 -2
- package/dist/esm/plugin/custom.d.ts +18 -0
- package/dist/esm/plugin/custom.js +7 -0
- package/dist/esm/plugin/form.d.ts +37 -0
- package/dist/esm/plugin/form.js +42 -0
- package/dist/esm/plugin/json.d.ts +36 -0
- package/dist/esm/plugin/json.js +8 -0
- package/dist/esm/plugin/log-headers.d.ts +17 -0
- package/dist/esm/plugin/{extend/log-headers.js → log-headers.js} +2 -2
- package/dist/esm/plugin/parse-path.d.ts +73 -0
- package/dist/esm/plugin/parse-path.js +8 -0
- package/dist/esm/plugin/query.d.ts +36 -0
- package/dist/esm/plugin/query.js +8 -0
- package/dist/esm/plugin/urlencoded.d.ts +36 -0
- package/dist/esm/plugin/urlencoded.js +8 -0
- package/dist/esm/plugin/web-socket.d.ts +31 -0
- package/dist/esm/plugin/web-socket.js +8 -0
- package/dist/esm/returner/common.d.ts +36 -0
- package/dist/esm/returner/common.js +8 -0
- package/dist/esm/returner/custom.d.ts +26 -0
- package/dist/esm/returner/custom.js +7 -0
- package/dist/esm/returner/file-stream-download.d.ts +33 -0
- package/dist/esm/returner/file-stream-download.js +8 -0
- package/dist/esm/returner/static-file.d.ts +30 -0
- package/dist/esm/returner/static-file.js +7 -0
- package/dist/esm/returner/virtual-file.d.ts +30 -0
- package/dist/esm/returner/virtual-file.js +7 -0
- package/dist/esm/server/server.d.ts +37 -4
- package/dist/esm/server/server.js +5 -3
- package/dist/esm/symbol/export-type.js +1 -1
- package/dist/esm/types/types.d.ts +22 -0
- package/dist/esm/types/types.js +1 -0
- package/package.json +35 -40
- package/dist/bin/gen-api-list/test.cjs +0 -1
- package/dist/bin/gen-api-list/test.d.cts +0 -2
- package/dist/bin/gen-api-type/test.cjs +0 -1
- package/dist/bin/gen-api-type/test.d.cts +0 -2
- package/dist/cjs/action/action.bak.cjs +0 -158
- package/dist/cjs/action/action.bak.d.cts +0 -99
- package/dist/cjs/bin/gen-api-list/test.cjs +0 -1
- package/dist/cjs/bin/gen-api-list/test.d.cts +0 -2
- package/dist/cjs/bin/gen-api-type/test.cjs +0 -1
- package/dist/cjs/bin/gen-api-type/test.d.cts +0 -2
- package/dist/cjs/global/global.cjs +0 -91
- package/dist/cjs/global/global.d.cts +0 -21
- package/dist/cjs/interface/interface-result.cjs +0 -65
- package/dist/cjs/interface/interface-result.d.cts +0 -8
- package/dist/cjs/interface/interface-retuen.cjs +0 -49
- package/dist/cjs/interface/interface-retuen.d.cts +0 -30
- package/dist/cjs/interface-base-gRngpxki.d.cts +0 -235
- package/dist/cjs/plugin/extend/custom-data.d.cts +0 -17
- package/dist/cjs/plugin/extend/json.d.cts +0 -25
- package/dist/cjs/plugin/extend/log-headers.d.cts +0 -15
- package/dist/cjs/plugin/extend/query.d.cts +0 -25
- package/dist/cjs/plugin/extend/urlencoded.cjs +0 -76
- package/dist/cjs/plugin/extend/urlencoded.d.cts +0 -16
- package/dist/cjs/plugin/extend/web-socket.cjs +0 -168
- package/dist/cjs/plugin/extend/web-socket.d.cts +0 -27
- package/dist/cjs/plugin/plug.d.cts +0 -8
- package/dist/cjs/wrapper/common-wrapper-return.cjs +0 -106
- package/dist/cjs/wrapper/common-wrapper-return.d.cts +0 -29
- package/dist/cjs/wrapper/common-wrapper.cjs +0 -102
- package/dist/cjs/wrapper/common-wrapper.d.cts +0 -27
- package/dist/cjs/wrapper/deferred-result-wrapper.cjs +0 -102
- package/dist/cjs/wrapper/deferred-result-wrapper.d.cts +0 -26
- package/dist/cjs/wrapper/express-compatible-wrapper.cjs +0 -228
- package/dist/cjs/wrapper/express-compatible-wrapper.d.cts +0 -55
- package/dist/cjs/wrapper/file-download-wrapper.cjs +0 -134
- package/dist/cjs/wrapper/file-download-wrapper.d.cts +0 -80
- package/dist/esm/action/action.bak.d.ts +0 -99
- package/dist/esm/action/action.bak.js +0 -133
- package/dist/esm/bin/gen-api-list/test.d.ts +0 -2
- package/dist/esm/bin/gen-api-type/test.d.ts +0 -2
- package/dist/esm/bin/gen-api-type/test.js +0 -0
- package/dist/esm/chunk-3XRAG6DM.js +0 -30
- package/dist/esm/chunk-43GZE5YL.js +0 -17
- package/dist/esm/chunk-7MHKNSNT.js +0 -20
- package/dist/esm/chunk-DNJQGD5M.js +0 -39
- package/dist/esm/chunk-H7LZCHCE.js +0 -24
- package/dist/esm/chunk-HDPEZW7H.js +0 -24
- package/dist/esm/chunk-MDUWXEQ7.js +0 -37
- package/dist/esm/chunk-N7TPWCQ5.js +0 -17
- package/dist/esm/chunk-NB2QNDI2.js +0 -24
- package/dist/esm/chunk-NCYHKHIH.js +0 -54
- package/dist/esm/chunk-NJKBRPN7.js +0 -66
- package/dist/esm/chunk-TSDOOGHG.js +0 -37
- package/dist/esm/chunk-UUXGAK5S.js +0 -31
- package/dist/esm/chunk-VMCAX3QH.js +0 -18
- package/dist/esm/chunk-XBAKTT6S.js +0 -23
- package/dist/esm/chunk-XSYZ5A6R.js +0 -61
- package/dist/esm/global/global.d.ts +0 -21
- package/dist/esm/global/global.js +0 -8
- package/dist/esm/interface/interface-result.d.ts +0 -8
- package/dist/esm/interface/interface-result.js +0 -10
- package/dist/esm/interface/interface-retuen.d.ts +0 -30
- package/dist/esm/interface/interface-retuen.js +0 -10
- package/dist/esm/interface-base-DDfmN_Dg.d.ts +0 -235
- package/dist/esm/plugin/extend/custom-data.d.ts +0 -17
- package/dist/esm/plugin/extend/json.d.ts +0 -25
- package/dist/esm/plugin/extend/json.js +0 -8
- package/dist/esm/plugin/extend/log-headers.d.ts +0 -15
- package/dist/esm/plugin/extend/query.d.ts +0 -25
- package/dist/esm/plugin/extend/query.js +0 -8
- package/dist/esm/plugin/extend/urlencoded.d.ts +0 -16
- package/dist/esm/plugin/extend/urlencoded.js +0 -7
- package/dist/esm/plugin/extend/web-socket.d.ts +0 -27
- package/dist/esm/plugin/extend/web-socket.js +0 -8
- package/dist/esm/plugin/plug.d.ts +0 -8
- package/dist/esm/wrapper/common-wrapper-return.d.ts +0 -29
- package/dist/esm/wrapper/common-wrapper-return.js +0 -9
- package/dist/esm/wrapper/common-wrapper.d.ts +0 -27
- package/dist/esm/wrapper/common-wrapper.js +0 -9
- package/dist/esm/wrapper/deferred-result-wrapper.d.ts +0 -26
- package/dist/esm/wrapper/deferred-result-wrapper.js +0 -9
- package/dist/esm/wrapper/express-compatible-wrapper.d.ts +0 -55
- package/dist/esm/wrapper/express-compatible-wrapper.js +0 -11
- package/dist/esm/wrapper/file-download-wrapper.d.ts +0 -80
- package/dist/esm/wrapper/file-download-wrapper.js +0 -9
- /package/dist/esm/{bin/gen-api-list/test.js → chunk-BWFSM5FK.js} +0 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/returner/common.ts
|
|
21
|
+
var common_exports = {};
|
|
22
|
+
__export(common_exports, {
|
|
23
|
+
\u5E38\u7528\u63A5\u53E3\u8FD4\u56DE\u5668: () => \u5E38\u7528\u63A5\u53E3\u8FD4\u56DE\u5668
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(common_exports);
|
|
26
|
+
var import_zod = require("zod");
|
|
27
|
+
|
|
28
|
+
// src/help/interior.ts
|
|
29
|
+
function \u622A\u65AD\u5B57\u7B26\u4E32(\u5185\u5BB9) {
|
|
30
|
+
let \u6700\u5927\u65E5\u5FD7\u957F\u5EA6 = 1e3;
|
|
31
|
+
if (\u5185\u5BB9.length > \u6700\u5927\u65E5\u5FD7\u957F\u5EA6) return \u5185\u5BB9.slice(0, \u6700\u5927\u65E5\u5FD7\u957F\u5EA6) + "...";
|
|
32
|
+
return \u5185\u5BB9;
|
|
33
|
+
}
|
|
34
|
+
function \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E) {
|
|
35
|
+
if (typeof \u6570\u636E === "string") return \u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E);
|
|
36
|
+
if (Array.isArray(\u6570\u636E)) return \u6570\u636E.map((\u9879) => \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u9879));
|
|
37
|
+
if (typeof \u6570\u636E === "object" && \u6570\u636E !== null) {
|
|
38
|
+
let \u65B0\u6570\u636E = {};
|
|
39
|
+
for (let key in \u6570\u636E) {
|
|
40
|
+
if (Object.prototype.hasOwnProperty.call(\u6570\u636E, key)) \u65B0\u6570\u636E[key] = \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E[key]);
|
|
41
|
+
}
|
|
42
|
+
return \u65B0\u6570\u636E;
|
|
43
|
+
}
|
|
44
|
+
return \u6570\u636E;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// src/interface/interface-returner.ts
|
|
48
|
+
var \u63A5\u53E3\u8FD4\u56DE\u5668 = class {
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
// src/returner/common.ts
|
|
52
|
+
var \u5E38\u7528\u63A5\u53E3\u8FD4\u56DE\u5668 = class _\u5E38\u7528\u63A5\u53E3\u8FD4\u56DE\u5668 extends \u63A5\u53E3\u8FD4\u56DE\u5668 {
|
|
53
|
+
constructor(\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod, \u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod, \u81EA\u5B9A\u4E49\u8FD4\u56DE\u5934) {
|
|
54
|
+
super();
|
|
55
|
+
this.\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod = \u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod;
|
|
56
|
+
this.\u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod = \u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod;
|
|
57
|
+
this.\u81EA\u5B9A\u4E49\u8FD4\u56DE\u5934 = \u81EA\u5B9A\u4E49\u8FD4\u56DE\u5934;
|
|
58
|
+
}
|
|
59
|
+
\u83B7\u5F97\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod() {
|
|
60
|
+
return import_zod.z.object({ status: import_zod.z.literal("fail"), data: this.\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod });
|
|
61
|
+
}
|
|
62
|
+
\u83B7\u5F97\u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod() {
|
|
63
|
+
return import_zod.z.object({ status: import_zod.z.literal("success"), data: this.\u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod });
|
|
64
|
+
}
|
|
65
|
+
\u5B9E\u73B0(req, res, \u6570\u636E, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
66
|
+
let log = \u8BF7\u6C42\u9644\u52A0\u53C2\u6570.log.extend(_\u5E38\u7528\u63A5\u53E3\u8FD4\u56DE\u5668.name);
|
|
67
|
+
if (this.\u81EA\u5B9A\u4E49\u8FD4\u56DE\u5934 !== void 0) {
|
|
68
|
+
for (let [key, value] of Object.entries(this.\u81EA\u5B9A\u4E49\u8FD4\u56DE\u5934)) {
|
|
69
|
+
res.setHeader(key, value);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
switch (\u6570\u636E.getTag()) {
|
|
73
|
+
case "Left": {
|
|
74
|
+
let \u5B9E\u9645\u6570\u636E = \u6570\u636E.assertLeft().getLeft();
|
|
75
|
+
let \u6821\u9A8C\u7ED3\u679C = this.\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod.safeParse(\u5B9E\u9645\u6570\u636E);
|
|
76
|
+
if (\u6821\u9A8C\u7ED3\u679C.success === false) {
|
|
77
|
+
let \u7ED3\u679C\u5B57\u7B26\u4E32 = JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u5B9E\u9645\u6570\u636E));
|
|
78
|
+
void log.error(`\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C: ${\u7ED3\u679C\u5B57\u7B26\u4E32}`);
|
|
79
|
+
void log.error("\u9519\u8BEF: %o", JSON.stringify(\u6821\u9A8C\u7ED3\u679C.error));
|
|
80
|
+
throw new Error(`\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C`);
|
|
81
|
+
}
|
|
82
|
+
let \u8FD4\u56DE\u6570\u636E = { status: "fail", data: \u5B9E\u9645\u6570\u636E };
|
|
83
|
+
void log.debug("\u6700\u7EC8\u7ED3\u679C: %o", JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u8FD4\u56DE\u6570\u636E)));
|
|
84
|
+
res.send(\u8FD4\u56DE\u6570\u636E);
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
case "Right": {
|
|
88
|
+
let \u5B9E\u9645\u6570\u636E = \u6570\u636E.assertRight().getRight();
|
|
89
|
+
let \u6821\u9A8C\u7ED3\u679C = this.\u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod.safeParse(\u5B9E\u9645\u6570\u636E);
|
|
90
|
+
if (\u6821\u9A8C\u7ED3\u679C.success === false) {
|
|
91
|
+
let \u7ED3\u679C\u5B57\u7B26\u4E32 = JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u5B9E\u9645\u6570\u636E));
|
|
92
|
+
void log.error(`\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C: ${\u7ED3\u679C\u5B57\u7B26\u4E32}`);
|
|
93
|
+
void log.error("\u9519\u8BEF: %o", JSON.stringify(\u6821\u9A8C\u7ED3\u679C.error));
|
|
94
|
+
throw new Error(`\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C`);
|
|
95
|
+
}
|
|
96
|
+
let \u8FD4\u56DE\u6570\u636E = { status: "success", data: \u5B9E\u9645\u6570\u636E };
|
|
97
|
+
void log.debug("\u6700\u7EC8\u7ED3\u679C: %o", JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u8FD4\u56DE\u6570\u636E)));
|
|
98
|
+
res.send(\u8FD4\u56DE\u6570\u636E);
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
105
|
+
0 && (module.exports = {
|
|
106
|
+
\u5E38\u7528\u63A5\u53E3\u8FD4\u56DE\u5668
|
|
107
|
+
});
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Either } from '@lsby/ts-fp-data';
|
|
2
|
+
import { Request, Response } from 'express';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { 接口返回器 as _____ } from '../interface/interface-returner.cjs';
|
|
5
|
+
import { 请求附加参数类型 as ________ } from '../types/types.cjs';
|
|
6
|
+
import '../interface/interface-logic.cjs';
|
|
7
|
+
import '../help/interior.cjs';
|
|
8
|
+
import '../interface/interface-plugin.cjs';
|
|
9
|
+
import '@lsby/ts-log';
|
|
10
|
+
import '../global/model/web-socket.cjs';
|
|
11
|
+
import 'ws';
|
|
12
|
+
import '../global/model/hub.cjs';
|
|
13
|
+
|
|
14
|
+
declare class 常用接口返回器<实现错误类型Zod extends z.ZodTypeAny, 实现正确类型Zod extends z.ZodTypeAny> extends _____<z.infer<实现错误类型Zod>, z.infer<实现正确类型Zod>, z.ZodObject<{
|
|
15
|
+
status: z.ZodLiteral<'fail'>;
|
|
16
|
+
data: 实现错误类型Zod;
|
|
17
|
+
}>, z.ZodObject<{
|
|
18
|
+
status: z.ZodLiteral<'success'>;
|
|
19
|
+
data: 实现正确类型Zod;
|
|
20
|
+
}>> {
|
|
21
|
+
private 实现错误类型Zod;
|
|
22
|
+
private 实现正确类型Zod;
|
|
23
|
+
private 自定义返回头?;
|
|
24
|
+
constructor(实现错误类型Zod: 实现错误类型Zod, 实现正确类型Zod: 实现正确类型Zod, 自定义返回头?: Record<string, string> | undefined);
|
|
25
|
+
获得接口错误形式Zod(): z.ZodObject<{
|
|
26
|
+
status: z.ZodLiteral<'fail'>;
|
|
27
|
+
data: 实现错误类型Zod;
|
|
28
|
+
}>;
|
|
29
|
+
获得接口正确形式Zod(): z.ZodObject<{
|
|
30
|
+
status: z.ZodLiteral<'success'>;
|
|
31
|
+
data: 实现正确类型Zod;
|
|
32
|
+
}>;
|
|
33
|
+
实现(req: Request, res: Response, 数据: Either<z.infer<实现错误类型Zod>, z.infer<实现正确类型Zod>>, 请求附加参数: ________): void;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export { 常用接口返回器 };
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/returner/custom.ts
|
|
21
|
+
var custom_exports = {};
|
|
22
|
+
__export(custom_exports, {
|
|
23
|
+
\u81EA\u5B9A\u4E49\u63A5\u53E3\u8FD4\u56DE\u5668: () => \u81EA\u5B9A\u4E49\u63A5\u53E3\u8FD4\u56DE\u5668
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(custom_exports);
|
|
26
|
+
|
|
27
|
+
// src/interface/interface-returner.ts
|
|
28
|
+
var \u63A5\u53E3\u8FD4\u56DE\u5668 = class {
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
// src/returner/custom.ts
|
|
32
|
+
var \u81EA\u5B9A\u4E49\u63A5\u53E3\u8FD4\u56DE\u5668 = class _\u81EA\u5B9A\u4E49\u63A5\u53E3\u8FD4\u56DE\u5668 extends \u63A5\u53E3\u8FD4\u56DE\u5668 {
|
|
33
|
+
constructor(\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod, \u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod, \u63A5\u53E3\u9519\u8BEF\u7C7B\u578BZod, \u63A5\u53E3\u6B63\u786E\u7C7B\u578BZod, \u5B9E\u73B0\u51FD\u6570) {
|
|
34
|
+
super();
|
|
35
|
+
this.\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod = \u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod;
|
|
36
|
+
this.\u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod = \u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod;
|
|
37
|
+
this.\u63A5\u53E3\u9519\u8BEF\u7C7B\u578BZod = \u63A5\u53E3\u9519\u8BEF\u7C7B\u578BZod;
|
|
38
|
+
this.\u63A5\u53E3\u6B63\u786E\u7C7B\u578BZod = \u63A5\u53E3\u6B63\u786E\u7C7B\u578BZod;
|
|
39
|
+
this.\u5B9E\u73B0\u51FD\u6570 = \u5B9E\u73B0\u51FD\u6570;
|
|
40
|
+
}
|
|
41
|
+
\u83B7\u5F97\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod() {
|
|
42
|
+
return this.\u63A5\u53E3\u9519\u8BEF\u7C7B\u578BZod;
|
|
43
|
+
}
|
|
44
|
+
\u83B7\u5F97\u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod() {
|
|
45
|
+
return this.\u63A5\u53E3\u6B63\u786E\u7C7B\u578BZod;
|
|
46
|
+
}
|
|
47
|
+
\u5B9E\u73B0(req, res, \u6570\u636E, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
48
|
+
let _log = \u8BF7\u6C42\u9644\u52A0\u53C2\u6570.log.extend(_\u81EA\u5B9A\u4E49\u63A5\u53E3\u8FD4\u56DE\u5668.name);
|
|
49
|
+
this.\u5B9E\u73B0\u51FD\u6570(req, res, \u6570\u636E, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
53
|
+
0 && (module.exports = {
|
|
54
|
+
\u81EA\u5B9A\u4E49\u63A5\u53E3\u8FD4\u56DE\u5668
|
|
55
|
+
});
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Either } from '@lsby/ts-fp-data';
|
|
2
|
+
import { Request, Response } from 'express';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { 接口返回器 as _____ } from '../interface/interface-returner.cjs';
|
|
5
|
+
import { 请求附加参数类型 as ________ } from '../types/types.cjs';
|
|
6
|
+
import '../interface/interface-logic.cjs';
|
|
7
|
+
import '../help/interior.cjs';
|
|
8
|
+
import '../interface/interface-plugin.cjs';
|
|
9
|
+
import '@lsby/ts-log';
|
|
10
|
+
import '../global/model/web-socket.cjs';
|
|
11
|
+
import 'ws';
|
|
12
|
+
import '../global/model/hub.cjs';
|
|
13
|
+
|
|
14
|
+
declare class 自定义接口返回器<实现错误类型Zod extends z.ZodTypeAny, 实现正确类型Zod extends z.ZodTypeAny, 接口错误类型Zod extends z.ZodTypeAny, 接口正确类型Zod extends z.ZodTypeAny> extends _____<z.infer<实现错误类型Zod>, z.infer<实现正确类型Zod>, 接口错误类型Zod, 接口正确类型Zod> {
|
|
15
|
+
private 实现错误类型Zod;
|
|
16
|
+
private 实现正确类型Zod;
|
|
17
|
+
private 接口错误类型Zod;
|
|
18
|
+
private 接口正确类型Zod;
|
|
19
|
+
private 实现函数;
|
|
20
|
+
constructor(实现错误类型Zod: 实现错误类型Zod, 实现正确类型Zod: 实现正确类型Zod, 接口错误类型Zod: 接口错误类型Zod, 接口正确类型Zod: 接口正确类型Zod, 实现函数: (req: Request, res: Response, 数据: Either<z.infer<实现错误类型Zod>, z.infer<实现正确类型Zod>>, 请求附加参数: ________) => void);
|
|
21
|
+
获得接口错误形式Zod(): 接口错误类型Zod;
|
|
22
|
+
获得接口正确形式Zod(): 接口正确类型Zod;
|
|
23
|
+
实现(req: Request, res: Response, 数据: Either<z.infer<实现错误类型Zod>, z.infer<实现正确类型Zod>>, 请求附加参数: ________): void;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export { 自定义接口返回器 };
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/returner/file-stream-download.ts
|
|
21
|
+
var file_stream_download_exports = {};
|
|
22
|
+
__export(file_stream_download_exports, {
|
|
23
|
+
\u6587\u4EF6\u6D41\u5F0F\u4E0B\u8F7D\u8FD4\u56DE\u5668: () => \u6587\u4EF6\u6D41\u5F0F\u4E0B\u8F7D\u8FD4\u56DE\u5668
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(file_stream_download_exports);
|
|
26
|
+
var import_node_stream = require("stream");
|
|
27
|
+
var import_zod = require("zod");
|
|
28
|
+
|
|
29
|
+
// src/help/interior.ts
|
|
30
|
+
function \u622A\u65AD\u5B57\u7B26\u4E32(\u5185\u5BB9) {
|
|
31
|
+
let \u6700\u5927\u65E5\u5FD7\u957F\u5EA6 = 1e3;
|
|
32
|
+
if (\u5185\u5BB9.length > \u6700\u5927\u65E5\u5FD7\u957F\u5EA6) return \u5185\u5BB9.slice(0, \u6700\u5927\u65E5\u5FD7\u957F\u5EA6) + "...";
|
|
33
|
+
return \u5185\u5BB9;
|
|
34
|
+
}
|
|
35
|
+
function \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E) {
|
|
36
|
+
if (typeof \u6570\u636E === "string") return \u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E);
|
|
37
|
+
if (Array.isArray(\u6570\u636E)) return \u6570\u636E.map((\u9879) => \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u9879));
|
|
38
|
+
if (typeof \u6570\u636E === "object" && \u6570\u636E !== null) {
|
|
39
|
+
let \u65B0\u6570\u636E = {};
|
|
40
|
+
for (let key in \u6570\u636E) {
|
|
41
|
+
if (Object.prototype.hasOwnProperty.call(\u6570\u636E, key)) \u65B0\u6570\u636E[key] = \u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u6570\u636E[key]);
|
|
42
|
+
}
|
|
43
|
+
return \u65B0\u6570\u636E;
|
|
44
|
+
}
|
|
45
|
+
return \u6570\u636E;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// src/interface/interface-returner.ts
|
|
49
|
+
var \u63A5\u53E3\u8FD4\u56DE\u5668 = class {
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
// src/returner/file-stream-download.ts
|
|
53
|
+
var \u6587\u4EF6\u6D41\u5F0F\u4E0B\u8F7D\u8FD4\u56DE\u5668 = class _\u6587\u4EF6\u6D41\u5F0F\u4E0B\u8F7D\u8FD4\u56DE\u5668 extends \u63A5\u53E3\u8FD4\u56DE\u5668 {
|
|
54
|
+
constructor(\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod) {
|
|
55
|
+
super();
|
|
56
|
+
this.\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod = \u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod;
|
|
57
|
+
}
|
|
58
|
+
\u83B7\u5F97\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod() {
|
|
59
|
+
return import_zod.z.object({ status: import_zod.z.literal("fail"), data: this.\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod });
|
|
60
|
+
}
|
|
61
|
+
\u83B7\u5F97\u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod() {
|
|
62
|
+
return import_zod.z.any();
|
|
63
|
+
}
|
|
64
|
+
\u5B9E\u73B0(req, res, \u6570\u636E, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
65
|
+
let log = \u8BF7\u6C42\u9644\u52A0\u53C2\u6570.log.extend(_\u6587\u4EF6\u6D41\u5F0F\u4E0B\u8F7D\u8FD4\u56DE\u5668.name);
|
|
66
|
+
switch (\u6570\u636E.getTag()) {
|
|
67
|
+
case "Left": {
|
|
68
|
+
let \u5B9E\u9645\u6570\u636E = \u6570\u636E.assertLeft().getLeft();
|
|
69
|
+
let \u6821\u9A8C\u7ED3\u679C = this.\u5B9E\u73B0\u9519\u8BEF\u7C7B\u578BZod.safeParse(\u5B9E\u9645\u6570\u636E);
|
|
70
|
+
if (\u6821\u9A8C\u7ED3\u679C.success === false) {
|
|
71
|
+
let \u7ED3\u679C\u5B57\u7B26\u4E32 = JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u5B9E\u9645\u6570\u636E));
|
|
72
|
+
void log.error(`\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C: ${\u7ED3\u679C\u5B57\u7B26\u4E32}`);
|
|
73
|
+
void log.error("\u9519\u8BEF: %o", JSON.stringify(\u6821\u9A8C\u7ED3\u679C.error));
|
|
74
|
+
throw new Error(`\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C`);
|
|
75
|
+
}
|
|
76
|
+
let \u8FD4\u56DE\u6570\u636E = { status: "fail", data: \u5B9E\u9645\u6570\u636E };
|
|
77
|
+
void log.debug("\u6700\u7EC8\u7ED3\u679C: %o", JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u8FD4\u56DE\u6570\u636E)));
|
|
78
|
+
res.send(\u8FD4\u56DE\u6570\u636E);
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
case "Right": {
|
|
82
|
+
let \u5B9E\u9645\u6570\u636E = \u6570\u636E.assertRight().getRight();
|
|
83
|
+
let \u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod = import_zod.z.object({
|
|
84
|
+
data: import_zod.z.instanceof(import_node_stream.Readable),
|
|
85
|
+
filename: import_zod.z.string().optional(),
|
|
86
|
+
mimeType: import_zod.z.string().optional()
|
|
87
|
+
});
|
|
88
|
+
let \u6821\u9A8C\u7ED3\u679C = \u5B9E\u73B0\u6B63\u786E\u7C7B\u578BZod.safeParse(\u5B9E\u9645\u6570\u636E);
|
|
89
|
+
if (\u6821\u9A8C\u7ED3\u679C.success === false) {
|
|
90
|
+
let \u7ED3\u679C\u5B57\u7B26\u4E32 = JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u5B9E\u9645\u6570\u636E));
|
|
91
|
+
void log.error(`\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C: ${\u7ED3\u679C\u5B57\u7B26\u4E32}`);
|
|
92
|
+
void log.error("\u9519\u8BEF: %o", JSON.stringify(\u6821\u9A8C\u7ED3\u679C.error));
|
|
93
|
+
throw new Error(`\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C`);
|
|
94
|
+
}
|
|
95
|
+
if (\u5B9E\u9645\u6570\u636E.mimeType !== void 0) {
|
|
96
|
+
res.setHeader("Content-Type", \u5B9E\u9645\u6570\u636E.mimeType);
|
|
97
|
+
}
|
|
98
|
+
if (\u5B9E\u9645\u6570\u636E.filename !== void 0) {
|
|
99
|
+
let encodedFilename = encodeURIComponent(\u5B9E\u9645\u6570\u636E.filename);
|
|
100
|
+
res.setHeader("Content-Disposition", `attachment; filename*=UTF-8''${encodedFilename}`);
|
|
101
|
+
}
|
|
102
|
+
\u5B9E\u9645\u6570\u636E.data.pipe(res);
|
|
103
|
+
break;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
109
|
+
0 && (module.exports = {
|
|
110
|
+
\u6587\u4EF6\u6D41\u5F0F\u4E0B\u8F7D\u8FD4\u56DE\u5668
|
|
111
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Either } from '@lsby/ts-fp-data';
|
|
2
|
+
import { Request, Response } from 'express';
|
|
3
|
+
import { Readable } from 'node:stream';
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
import { 接口返回器 as _____ } from '../interface/interface-returner.cjs';
|
|
6
|
+
import { 请求附加参数类型 as ________ } from '../types/types.cjs';
|
|
7
|
+
import '../interface/interface-logic.cjs';
|
|
8
|
+
import '../help/interior.cjs';
|
|
9
|
+
import '../interface/interface-plugin.cjs';
|
|
10
|
+
import '@lsby/ts-log';
|
|
11
|
+
import '../global/model/web-socket.cjs';
|
|
12
|
+
import 'ws';
|
|
13
|
+
import '../global/model/hub.cjs';
|
|
14
|
+
|
|
15
|
+
declare class 文件流式下载返回器<实现错误类型Zod extends z.ZodTypeAny, 实现正确类型Zod extends z.ZodObject<{
|
|
16
|
+
data: z.ZodType<Readable>;
|
|
17
|
+
filename: z.ZodOptional<z.ZodString>;
|
|
18
|
+
mimeType: z.ZodOptional<z.ZodString>;
|
|
19
|
+
}>> extends _____<z.infer<实现错误类型Zod>, z.infer<实现正确类型Zod>, z.ZodObject<{
|
|
20
|
+
status: z.ZodLiteral<'fail'>;
|
|
21
|
+
data: 实现错误类型Zod;
|
|
22
|
+
}>, z.ZodAny> {
|
|
23
|
+
private 实现错误类型Zod;
|
|
24
|
+
constructor(实现错误类型Zod: 实现错误类型Zod);
|
|
25
|
+
获得接口错误形式Zod(): z.ZodObject<{
|
|
26
|
+
status: z.ZodLiteral<'fail'>;
|
|
27
|
+
data: 实现错误类型Zod;
|
|
28
|
+
}>;
|
|
29
|
+
获得接口正确形式Zod(): z.ZodAny;
|
|
30
|
+
实现(req: Request, res: Response, 数据: Either<z.infer<实现错误类型Zod>, z.infer<实现正确类型Zod>>, 请求附加参数: ________): void;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export { 文件流式下载返回器 };
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/returner/static-file.ts
|
|
21
|
+
var static_file_exports = {};
|
|
22
|
+
__export(static_file_exports, {
|
|
23
|
+
\u9759\u6001\u6587\u4EF6\u8FD4\u56DE\u5668: () => \u9759\u6001\u6587\u4EF6\u8FD4\u56DE\u5668
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(static_file_exports);
|
|
26
|
+
var import_promises = require("fs/promises");
|
|
27
|
+
var import_zod = require("zod");
|
|
28
|
+
|
|
29
|
+
// src/interface/interface-returner.ts
|
|
30
|
+
var \u63A5\u53E3\u8FD4\u56DE\u5668 = class {
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
// src/returner/static-file.ts
|
|
34
|
+
var \u9759\u6001\u6587\u4EF6\u8FD4\u56DE\u5668 = class _\u9759\u6001\u6587\u4EF6\u8FD4\u56DE\u5668 extends \u63A5\u53E3\u8FD4\u56DE\u5668 {
|
|
35
|
+
MIME\u7C7B\u578B\u6620\u5C04;
|
|
36
|
+
\u7F13\u5B58\u63A7\u5236;
|
|
37
|
+
constructor(options) {
|
|
38
|
+
super();
|
|
39
|
+
this.\u7F13\u5B58\u63A7\u5236 = options.\u7F13\u5B58\u63A7\u5236;
|
|
40
|
+
this.MIME\u7C7B\u578B\u6620\u5C04 = new Map([
|
|
41
|
+
[".html", "text/html; charset=utf-8"],
|
|
42
|
+
[".js", "application/javascript"],
|
|
43
|
+
[".css", "text/css"],
|
|
44
|
+
[".json", "application/json"],
|
|
45
|
+
[".png", "image/png"],
|
|
46
|
+
[".jpg", "image/jpeg"],
|
|
47
|
+
[".jpeg", "image/jpeg"],
|
|
48
|
+
[".gif", "image/gif"],
|
|
49
|
+
[".svg", "image/svg+xml"],
|
|
50
|
+
[".txt", "text/plain"],
|
|
51
|
+
[".woff", "font/woff"],
|
|
52
|
+
[".woff2", "font/woff2"],
|
|
53
|
+
[".ttf", "font/ttf"],
|
|
54
|
+
[".eot", "application/vnd.ms-fontobject"],
|
|
55
|
+
[".md", "text/markdown; charset=utf-8"],
|
|
56
|
+
[".xml", "application/xml"],
|
|
57
|
+
...Object.entries(options.MIME\u7C7B\u578B\u6620\u5C04 ?? {})
|
|
58
|
+
]);
|
|
59
|
+
}
|
|
60
|
+
\u83B7\u5F97\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod() {
|
|
61
|
+
return import_zod.z.any();
|
|
62
|
+
}
|
|
63
|
+
\u83B7\u5F97\u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod() {
|
|
64
|
+
return import_zod.z.any();
|
|
65
|
+
}
|
|
66
|
+
async \u5B9E\u73B0(req, res, \u6570\u636E, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
67
|
+
let log = \u8BF7\u6C42\u9644\u52A0\u53C2\u6570.log.extend(_\u9759\u6001\u6587\u4EF6\u8FD4\u56DE\u5668.name);
|
|
68
|
+
if (\u6570\u636E.getTag() === "Left") {
|
|
69
|
+
let \u9519\u8BEF\u6D88\u606F = \u6570\u636E.assertLeft().getLeft();
|
|
70
|
+
void log.error("\u6587\u4EF6\u83B7\u53D6\u5931\u8D25: %s", \u9519\u8BEF\u6D88\u606F);
|
|
71
|
+
res.status(404).send({ error: \u9519\u8BEF\u6D88\u606F });
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
let \u6587\u4EF6\u8DEF\u5F84 = \u6570\u636E.assertRight().getRight().filePath;
|
|
75
|
+
try {
|
|
76
|
+
let \u6587\u4EF6\u5185\u5BB9 = await (0, import_promises.readFile)(\u6587\u4EF6\u8DEF\u5F84, "utf-8");
|
|
77
|
+
let \u6269\u5C55\u540D = \u6587\u4EF6\u8DEF\u5F84.substring(\u6587\u4EF6\u8DEF\u5F84.lastIndexOf(".")).toLowerCase();
|
|
78
|
+
let MIME\u7C7B\u578B = this.MIME\u7C7B\u578B\u6620\u5C04.get(\u6269\u5C55\u540D) ?? "application/octet-stream";
|
|
79
|
+
res.setHeader("Content-Type", MIME\u7C7B\u578B);
|
|
80
|
+
let \u7F13\u5B58\u63A7\u5236 = this.\u7F13\u5B58\u63A7\u5236;
|
|
81
|
+
if (\u7F13\u5B58\u63A7\u5236 !== void 0) {
|
|
82
|
+
res.setHeader("Cache-Control", \u7F13\u5B58\u63A7\u5236);
|
|
83
|
+
}
|
|
84
|
+
void log.debug("\u8FD4\u56DE\u6587\u4EF6: %s, MIME\u7C7B\u578B: %s", \u6587\u4EF6\u8DEF\u5F84, MIME\u7C7B\u578B);
|
|
85
|
+
res.send(\u6587\u4EF6\u5185\u5BB9);
|
|
86
|
+
} catch (error) {
|
|
87
|
+
void log.error("\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25: %s, \u9519\u8BEF: %o", \u6587\u4EF6\u8DEF\u5F84, error);
|
|
88
|
+
res.status(500).send({ error: "\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25" });
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
93
|
+
0 && (module.exports = {
|
|
94
|
+
\u9759\u6001\u6587\u4EF6\u8FD4\u56DE\u5668
|
|
95
|
+
});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Either } from '@lsby/ts-fp-data';
|
|
2
|
+
import { Request, Response } from 'express';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { 接口返回器 as _____ } from '../interface/interface-returner.cjs';
|
|
5
|
+
import { 请求附加参数类型 as ________ } from '../types/types.cjs';
|
|
6
|
+
import '../interface/interface-logic.cjs';
|
|
7
|
+
import '../help/interior.cjs';
|
|
8
|
+
import '../interface/interface-plugin.cjs';
|
|
9
|
+
import '@lsby/ts-log';
|
|
10
|
+
import '../global/model/web-socket.cjs';
|
|
11
|
+
import 'ws';
|
|
12
|
+
import '../global/model/hub.cjs';
|
|
13
|
+
|
|
14
|
+
declare class 静态文件返回器 extends _____<string, {
|
|
15
|
+
filePath: string;
|
|
16
|
+
}, z.ZodAny, z.ZodAny> {
|
|
17
|
+
private MIME类型映射;
|
|
18
|
+
private 缓存控制;
|
|
19
|
+
constructor(options: {
|
|
20
|
+
MIME类型映射?: Record<string, string>;
|
|
21
|
+
缓存控制?: string;
|
|
22
|
+
});
|
|
23
|
+
获得接口错误形式Zod(): z.ZodAny;
|
|
24
|
+
获得接口正确形式Zod(): z.ZodAny;
|
|
25
|
+
实现(req: Request, res: Response, 数据: Either<string, {
|
|
26
|
+
filePath: string;
|
|
27
|
+
}>, 请求附加参数: ________): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export { 静态文件返回器 };
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/returner/virtual-file.ts
|
|
21
|
+
var virtual_file_exports = {};
|
|
22
|
+
__export(virtual_file_exports, {
|
|
23
|
+
\u865A\u62DF\u6587\u4EF6\u8FD4\u56DE\u5668: () => \u865A\u62DF\u6587\u4EF6\u8FD4\u56DE\u5668
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(virtual_file_exports);
|
|
26
|
+
var import_zod = require("zod");
|
|
27
|
+
|
|
28
|
+
// src/interface/interface-returner.ts
|
|
29
|
+
var \u63A5\u53E3\u8FD4\u56DE\u5668 = class {
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
// src/returner/virtual-file.ts
|
|
33
|
+
var \u865A\u62DF\u6587\u4EF6\u8FD4\u56DE\u5668 = class _\u865A\u62DF\u6587\u4EF6\u8FD4\u56DE\u5668 extends \u63A5\u53E3\u8FD4\u56DE\u5668 {
|
|
34
|
+
\u7F13\u5B58\u63A7\u5236;
|
|
35
|
+
constructor(options) {
|
|
36
|
+
super();
|
|
37
|
+
this.\u7F13\u5B58\u63A7\u5236 = options.\u7F13\u5B58\u63A7\u5236;
|
|
38
|
+
}
|
|
39
|
+
\u83B7\u5F97\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod() {
|
|
40
|
+
return import_zod.z.any();
|
|
41
|
+
}
|
|
42
|
+
\u83B7\u5F97\u63A5\u53E3\u6B63\u786E\u5F62\u5F0FZod() {
|
|
43
|
+
return import_zod.z.any();
|
|
44
|
+
}
|
|
45
|
+
\u5B9E\u73B0(req, res, \u6570\u636E, \u8BF7\u6C42\u9644\u52A0\u53C2\u6570) {
|
|
46
|
+
let log = \u8BF7\u6C42\u9644\u52A0\u53C2\u6570.log.extend(_\u865A\u62DF\u6587\u4EF6\u8FD4\u56DE\u5668.name);
|
|
47
|
+
if (\u6570\u636E.getTag() === "Left") {
|
|
48
|
+
let \u9519\u8BEF\u6D88\u606F = \u6570\u636E.assertLeft().getLeft();
|
|
49
|
+
void log.error("\u6587\u4EF6\u751F\u6210\u5931\u8D25: %s", \u9519\u8BEF\u6D88\u606F);
|
|
50
|
+
res.status(404).send({ error: \u9519\u8BEF\u6D88\u606F });
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
let { fileContent, MIMEType } = \u6570\u636E.assertRight().getRight();
|
|
54
|
+
res.setHeader("Content-Type", MIMEType);
|
|
55
|
+
let \u7F13\u5B58\u63A7\u5236 = this.\u7F13\u5B58\u63A7\u5236;
|
|
56
|
+
if (\u7F13\u5B58\u63A7\u5236 !== void 0) {
|
|
57
|
+
res.setHeader("Cache-Control", \u7F13\u5B58\u63A7\u5236);
|
|
58
|
+
}
|
|
59
|
+
void log.debug("\u8FD4\u56DE\u865A\u62DF\u6587\u4EF6, MIME\u7C7B\u578B: %s", MIMEType);
|
|
60
|
+
res.send(fileContent);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
64
|
+
0 && (module.exports = {
|
|
65
|
+
\u865A\u62DF\u6587\u4EF6\u8FD4\u56DE\u5668
|
|
66
|
+
});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Either } from '@lsby/ts-fp-data';
|
|
2
|
+
import { Request, Response } from 'express';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { 接口返回器 as _____ } from '../interface/interface-returner.cjs';
|
|
5
|
+
import { 请求附加参数类型 as ________ } from '../types/types.cjs';
|
|
6
|
+
import '../interface/interface-logic.cjs';
|
|
7
|
+
import '../help/interior.cjs';
|
|
8
|
+
import '../interface/interface-plugin.cjs';
|
|
9
|
+
import '@lsby/ts-log';
|
|
10
|
+
import '../global/model/web-socket.cjs';
|
|
11
|
+
import 'ws';
|
|
12
|
+
import '../global/model/hub.cjs';
|
|
13
|
+
|
|
14
|
+
declare class 虚拟文件返回器 extends _____<string, {
|
|
15
|
+
fileContent: string | Buffer;
|
|
16
|
+
MIMEType: string;
|
|
17
|
+
}, z.ZodAny, z.ZodAny> {
|
|
18
|
+
private 缓存控制;
|
|
19
|
+
constructor(options: {
|
|
20
|
+
缓存控制?: string;
|
|
21
|
+
});
|
|
22
|
+
获得接口错误形式Zod(): z.ZodAny;
|
|
23
|
+
获得接口正确形式Zod(): z.ZodAny;
|
|
24
|
+
实现(req: Request, res: Response, 数据: Either<string, {
|
|
25
|
+
fileContent: string | Buffer;
|
|
26
|
+
MIMEType: string;
|
|
27
|
+
}>, 请求附加参数: ________): void;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export { 虚拟文件返回器 };
|