@lsby/net-core 0.10.2 → 0.11.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.
- package/dist/cjs/index.cjs +138 -45
- package/dist/cjs/index.d.cts +4 -1
- package/dist/cjs/interface/interface-base.d.cts +1 -1
- package/dist/cjs/interface/interface-logic.d.cts +1 -1
- package/dist/cjs/interface/interface-result.d.cts +1 -1
- package/dist/cjs/{interface-base-CyfrfgWu.d.cts → interface-base-gRngpxki.d.cts} +6 -5
- package/dist/cjs/plugin/extend/custom-data.d.cts +1 -1
- package/dist/cjs/plugin/extend/json.d.cts +1 -1
- package/dist/cjs/plugin/extend/log-headers.d.cts +1 -1
- package/dist/cjs/plugin/extend/query.d.cts +1 -1
- package/dist/cjs/plugin/extend/urlencoded.d.cts +1 -1
- package/dist/cjs/plugin/extend/web-socket.d.cts +1 -1
- package/dist/cjs/plugin/plug.d.cts +1 -1
- package/dist/cjs/server/server.cjs +48 -45
- package/dist/cjs/server/server.d.cts +1 -1
- package/dist/cjs/wrapper/common-wrapper-return.d.cts +1 -1
- package/dist/cjs/wrapper/common-wrapper.d.cts +1 -1
- package/dist/cjs/wrapper/deferred-result-wrapper.d.cts +1 -1
- package/dist/cjs/wrapper/express-compatible-wrapper.d.cts +1 -1
- package/dist/cjs/wrapper/file-download-wrapper.d.cts +1 -1
- package/dist/esm/chunk-NCYHKHIH.js +54 -0
- package/dist/esm/{chunk-3ZQFVYIR.js → chunk-NRUNCIP7.js} +48 -45
- package/dist/esm/chunk-XSYZ5A6R.js +61 -0
- package/dist/esm/index.d.ts +4 -1
- package/dist/esm/index.js +9 -1
- package/dist/esm/interface/interface-base.d.ts +1 -1
- package/dist/esm/interface/interface-logic.d.ts +1 -1
- package/dist/esm/interface/interface-result.d.ts +1 -1
- package/dist/esm/{interface-base-C1ZNSMJz.d.ts → interface-base-DDfmN_Dg.d.ts} +6 -5
- package/dist/esm/plugin/extend/custom-data.d.ts +1 -1
- package/dist/esm/plugin/extend/json.d.ts +1 -1
- package/dist/esm/plugin/extend/log-headers.d.ts +1 -1
- package/dist/esm/plugin/extend/query.d.ts +1 -1
- package/dist/esm/plugin/extend/urlencoded.d.ts +1 -1
- package/dist/esm/plugin/extend/web-socket.d.ts +1 -1
- package/dist/esm/plugin/plug.d.ts +1 -1
- package/dist/esm/server/server.d.ts +1 -1
- package/dist/esm/server/server.js +1 -1
- package/dist/esm/wrapper/common-wrapper-return.d.ts +1 -1
- package/dist/esm/wrapper/common-wrapper.d.ts +1 -1
- package/dist/esm/wrapper/deferred-result-wrapper.d.ts +1 -1
- package/dist/esm/wrapper/express-compatible-wrapper.d.ts +1 -1
- package/dist/esm/wrapper/express-compatible-wrapper.js +6 -49
- package/dist/esm/wrapper/file-download-wrapper.d.ts +1 -1
- package/dist/esm/wrapper/file-download-wrapper.js +5 -56
- package/package.json +1 -1
package/dist/cjs/index.cjs
CHANGED
|
@@ -31,6 +31,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
31
31
|
var index_exports = {};
|
|
32
32
|
__export(index_exports, {
|
|
33
33
|
EXPORT_TYPE: () => EXPORT_TYPE,
|
|
34
|
+
Express\u517C\u5BB9\u63A5\u53E3\u5C01\u88C5: () => Express\u517C\u5BB9\u63A5\u53E3\u5C01\u88C5,
|
|
34
35
|
GET\u53C2\u6570\u89E3\u6790\u63D2\u4EF6: () => GET\u53C2\u6570\u89E3\u6790\u63D2\u4EF6,
|
|
35
36
|
JSON\u89E3\u6790\u63D2\u4EF6: () => JSON\u89E3\u6790\u63D2\u4EF6,
|
|
36
37
|
WebSocket\u63D2\u4EF6: () => WebSocket\u63D2\u4EF6,
|
|
@@ -46,6 +47,7 @@ __export(index_exports, {
|
|
|
46
47
|
\u63A5\u53E3\u903B\u8F91: () => \u63A5\u53E3\u903B\u8F91,
|
|
47
48
|
\u63A5\u53E3\u903B\u8F91Base: () => \u63A5\u53E3\u903B\u8F91Base,
|
|
48
49
|
\u63D2\u4EF6: () => \u63D2\u4EF6,
|
|
50
|
+
\u6587\u4EF6\u4E0B\u8F7D\u63A5\u53E3\u5C01\u88C5: () => \u6587\u4EF6\u4E0B\u8F7D\u63A5\u53E3\u5C01\u88C5,
|
|
49
51
|
\u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76: () => \u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76,
|
|
50
52
|
\u670D\u52A1\u5668: () => \u670D\u52A1\u5668,
|
|
51
53
|
\u6784\u9020\u5143\u7EC4: () => \u6784\u9020\u5143\u7EC4,
|
|
@@ -550,8 +552,8 @@ var import_node_os = require("os");
|
|
|
550
552
|
var import_short_uuid = __toESM(require("short-uuid"), 1);
|
|
551
553
|
var import_ws3 = require("ws");
|
|
552
554
|
var \u670D\u52A1\u5668 = class {
|
|
553
|
-
|
|
554
|
-
\
|
|
555
|
+
log;
|
|
556
|
+
\u65E5\u5FD7\u56DE\u8C03;
|
|
555
557
|
\u63A5\u53E3\u4EEC;
|
|
556
558
|
\u7AEF\u53E3;
|
|
557
559
|
\u9759\u6001\u8D44\u6E90\u8DEF\u5F84;
|
|
@@ -561,14 +563,17 @@ var \u670D\u52A1\u5668 = class {
|
|
|
561
563
|
this.\u7AEF\u53E3 = options.\u7AEF\u53E3;
|
|
562
564
|
this.\u9759\u6001\u8D44\u6E90\u8DEF\u5F84 = options.\u9759\u6001\u8D44\u6E90\u8DEF\u5F84;
|
|
563
565
|
this.\u9ED8\u8BA4get\u6587\u4EF6\u8DEF\u5F84 = options.\u9ED8\u8BA4get\u6587\u4EF6\u8DEF\u5F84;
|
|
564
|
-
this.\
|
|
565
|
-
this
|
|
566
|
+
this.\u65E5\u5FD7\u56DE\u8C03 = options.\u65E5\u5FD7\u56DE\u8C03;
|
|
567
|
+
this.log = Global.getItem("log").then((a) => {
|
|
568
|
+
if (this.\u65E5\u5FD7\u56DE\u8C03 !== void 0) a.pipe(this.\u65E5\u5FD7\u56DE\u8C03);
|
|
569
|
+
return a;
|
|
570
|
+
});
|
|
566
571
|
}
|
|
567
572
|
async run() {
|
|
573
|
+
let log2 = await this.log;
|
|
568
574
|
let app = (0, import_express3.default)();
|
|
569
|
-
let \u7CFB\u7EDFlog = await this.\u7CFB\u7EDFlog;
|
|
570
575
|
if (this.\u9759\u6001\u8D44\u6E90\u8DEF\u5F84 !== void 0) {
|
|
571
|
-
await
|
|
576
|
+
await log2.debug(`\u8BBE\u7F6E\u9759\u6001\u8D44\u6E90\u8DEF\u5F84: ${this.\u9759\u6001\u8D44\u6E90\u8DEF\u5F84}`);
|
|
572
577
|
app.use(import_express3.default.static(this.\u9759\u6001\u8D44\u6E90\u8DEF\u5F84));
|
|
573
578
|
}
|
|
574
579
|
app.use(this.\u5904\u7406\u8BF7\u6C42.bind(this));
|
|
@@ -578,17 +583,16 @@ var \u670D\u52A1\u5668 = class {
|
|
|
578
583
|
}
|
|
579
584
|
async \u5904\u7406\u8BF7\u6C42(req, res) {
|
|
580
585
|
let \u8BF7\u6C42id = (0, import_short_uuid.default)().new();
|
|
581
|
-
let
|
|
582
|
-
let \u63A5\u53E3log = (await this.\u63A5\u53E3log).extend(\u8BF7\u6C42id);
|
|
586
|
+
let log2 = (await this.log).extend(\u8BF7\u6C42id);
|
|
583
587
|
let \u5F00\u59CB\u65F6\u95F4 = Date.now();
|
|
584
588
|
try {
|
|
585
589
|
let { path: \u8BF7\u6C42\u8DEF\u5F84, method } = req;
|
|
586
590
|
\u8BF7\u6C42\u8DEF\u5F84 = decodeURIComponent(\u8BF7\u6C42\u8DEF\u5F84);
|
|
587
591
|
let \u8BF7\u6C42\u65B9\u6CD5 = method.toLowerCase();
|
|
588
|
-
await
|
|
592
|
+
await log2.debug("\u6536\u5230\u8BF7\u6C42, \u8DEF\u5F84: %o, \u65B9\u6CD5: %o", \u8BF7\u6C42\u8DEF\u5F84, \u8BF7\u6C42\u65B9\u6CD5);
|
|
589
593
|
let \u76EE\u6807\u63A5\u53E3 = this.\u63A5\u53E3\u4EEC.find((\u63A5\u53E32) => \u8BF7\u6C42\u65B9\u6CD5 === \u63A5\u53E32.\u83B7\u5F97\u65B9\u6CD5() && \u8BF7\u6C42\u8DEF\u5F84 === \u63A5\u53E32.\u83B7\u5F97\u8DEF\u5F84()) ?? null;
|
|
590
594
|
if (\u76EE\u6807\u63A5\u53E3 !== null) {
|
|
591
|
-
await this.\u5904\u7406\u63A5\u53E3\u903B\u8F91(req, res, \u76EE\u6807\u63A5\u53E3,
|
|
595
|
+
await this.\u5904\u7406\u63A5\u53E3\u903B\u8F91({ req, res, \u76EE\u6807\u63A5\u53E3, log: log2, \u8BF7\u6C42id });
|
|
592
596
|
return;
|
|
593
597
|
}
|
|
594
598
|
if (this.\u9ED8\u8BA4get\u6587\u4EF6\u8DEF\u5F84 !== void 0 && \u8BF7\u6C42\u65B9\u6CD5 === "get") {
|
|
@@ -597,35 +601,36 @@ var \u670D\u52A1\u5668 = class {
|
|
|
597
601
|
res.send(\u9ED8\u8BA4\u6587\u4EF6\u5185\u5BB9);
|
|
598
602
|
return;
|
|
599
603
|
} catch (e) {
|
|
600
|
-
await
|
|
604
|
+
await log2.error("\u8FD4\u56DE\u9ED8\u8BA4get\u6587\u4EF6\u5185\u5BB9\u5931\u8D25: %o", String(e));
|
|
601
605
|
}
|
|
602
606
|
}
|
|
603
|
-
await
|
|
607
|
+
await log2.debug("\u6CA1\u6709\u547D\u4E2D\u4EFB\u4F55\u8D44\u6E90");
|
|
604
608
|
res.status(404).end();
|
|
605
609
|
} catch (error) {
|
|
606
|
-
await
|
|
610
|
+
await log2.error(error);
|
|
607
611
|
res.status(500).send("\u670D\u52A1\u5668\u5185\u90E8\u9519\u8BEF");
|
|
608
612
|
} finally {
|
|
609
613
|
let \u8017\u65F6ms = Date.now() - \u5F00\u59CB\u65F6\u95F4;
|
|
610
|
-
await
|
|
614
|
+
await log2.info("\u8BF7\u6C42\u5B8C\u6210, \u8017\u65F6: %o ms", \u8017\u65F6ms);
|
|
611
615
|
}
|
|
612
616
|
}
|
|
613
|
-
async \u5904\u7406\u63A5\u53E3\u903B\u8F91(
|
|
617
|
+
async \u5904\u7406\u63A5\u53E3\u903B\u8F91(opt) {
|
|
618
|
+
let { req, res, \u76EE\u6807\u63A5\u53E3, log: log2, \u8BF7\u6C42id } = opt;
|
|
614
619
|
let \u63A5\u53E3\u903B\u8F912 = \u76EE\u6807\u63A5\u53E3.\u83B7\u5F97\u903B\u8F91();
|
|
615
620
|
let \u7ED3\u679C\u8F6C\u6362\u5668 = \u76EE\u6807\u63A5\u53E3.\u83B7\u5F97\u7ED3\u679C\u8F6C\u6362\u5668();
|
|
616
621
|
let \u7ED3\u679C\u8FD4\u56DE\u5668 = \u76EE\u6807\u63A5\u53E3.\u83B7\u5F97\u7ED3\u679C\u8FD4\u56DE\u5668();
|
|
617
622
|
let \u603B\u5F00\u59CB = Date.now();
|
|
618
623
|
let \u5F00\u59CB = Date.now();
|
|
619
|
-
await
|
|
624
|
+
await log2.debug("\u8C03\u7528\u63A5\u53E3\u903B\u8F91...");
|
|
620
625
|
let \u63D2\u4EF6\u4EEC = \u63A5\u53E3\u903B\u8F912.\u83B7\u5F97\u63D2\u4EF6\u4EEC();
|
|
621
|
-
await
|
|
622
|
-
let \u63D2\u4EF6\u7ED3\u679C = await \u63A5\u53E3\u903B\u8F912.\u8BA1\u7B97\u63D2\u4EF6\u7ED3\u679C(req, res, { log: \
|
|
623
|
-
await
|
|
624
|
-
await
|
|
625
|
-
let \u63A5\u53E3\u7ED3\u679C = await \u63A5\u53E3\u903B\u8F912.\u901A\u8FC7\u63D2\u4EF6\u7ED3\u679C\u8FD0\u884C(\u63D2\u4EF6\u7ED3\u679C, {}, { log: \
|
|
626
|
-
await
|
|
626
|
+
await log2.debug("\u627E\u5230 %o \u4E2A \u63D2\u4EF6, \u51C6\u5907\u6267\u884C...", \u63D2\u4EF6\u4EEC.length);
|
|
627
|
+
let \u63D2\u4EF6\u7ED3\u679C = await \u63A5\u53E3\u903B\u8F912.\u8BA1\u7B97\u63D2\u4EF6\u7ED3\u679C(req, res, { log: log2, \u8BF7\u6C42id });
|
|
628
|
+
await log2.debug("\u63D2\u4EF6 \u6267\u884C\u5B8C\u6BD5");
|
|
629
|
+
await log2.debug("\u51C6\u5907\u6267\u884C\u63A5\u53E3\u5B9E\u73B0...");
|
|
630
|
+
let \u63A5\u53E3\u7ED3\u679C = await \u63A5\u53E3\u903B\u8F912.\u901A\u8FC7\u63D2\u4EF6\u7ED3\u679C\u8FD0\u884C(\u63D2\u4EF6\u7ED3\u679C, {}, { log: log2, \u8BF7\u6C42id });
|
|
631
|
+
await log2.debug("\u63A5\u53E3\u5B9E\u73B0\u6267\u884C\u5B8C\u6BD5");
|
|
627
632
|
let \u63A5\u53E3\u8017\u65F6 = Date.now() - \u5F00\u59CB;
|
|
628
|
-
await
|
|
633
|
+
await log2.info("\u63A5\u53E3\u903B\u8F91\u6267\u884C\u5B8C\u6BD5, \u8017\u65F6: %o ms", \u63A5\u53E3\u8017\u65F6);
|
|
629
634
|
\u5F00\u59CB = Date.now();
|
|
630
635
|
let \u8F6C\u6362\u7ED3\u679C = \u7ED3\u679C\u8F6C\u6362\u5668.\u5B9E\u73B0(\u63A5\u53E3\u7ED3\u679C);
|
|
631
636
|
let \u9519\u8BEF\u7ED3\u679C = \u76EE\u6807\u63A5\u53E3.\u83B7\u5F97\u63A5\u53E3\u9519\u8BEF\u5F62\u5F0FZod().safeParse(\u8F6C\u6362\u7ED3\u679C);
|
|
@@ -637,59 +642,59 @@ var \u670D\u52A1\u5668 = class {
|
|
|
637
642
|
\u6700\u7EC8\u7ED3\u679C = \u6B63\u786E\u7ED3\u679C.data;
|
|
638
643
|
} else {
|
|
639
644
|
let \u7ED3\u679C\u5B57\u7B26\u4E32 = JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u8F6C\u6362\u7ED3\u679C));
|
|
640
|
-
await
|
|
641
|
-
await
|
|
642
|
-
await
|
|
645
|
+
await log2.error(`\u8F6C\u6362\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C: ${\u7ED3\u679C\u5B57\u7B26\u4E32}`);
|
|
646
|
+
await log2.error("\u5BF9\u4E8E\u9519\u8BEF\u7ED3\u679C: %o", \u9519\u8BEF\u7ED3\u679C.error);
|
|
647
|
+
await log2.error("\u5BF9\u4E8E\u6B63\u786E\u7ED3\u679C: %o", \u6B63\u786E\u7ED3\u679C.error);
|
|
643
648
|
throw new Error(`\u8F6C\u6362\u7ED3\u679C\u65E0\u6CD5\u901A\u8FC7\u6821\u9A8C`);
|
|
644
649
|
}
|
|
645
650
|
let \u8F6C\u6362\u8017\u65F6 = Date.now() - \u5F00\u59CB;
|
|
646
|
-
await
|
|
647
|
-
await
|
|
651
|
+
await log2.info("\u7ED3\u679C\u8F6C\u6362\u4E0E\u6821\u9A8C\u5B8C\u6210, \u8017\u65F6: %o ms", \u8F6C\u6362\u8017\u65F6);
|
|
652
|
+
await log2.debug("\u6700\u7EC8\u7ED3\u679C: %o", JSON.stringify(\u9012\u5F52\u622A\u65AD\u5B57\u7B26\u4E32(\u6700\u7EC8\u7ED3\u679C)));
|
|
648
653
|
\u5F00\u59CB = Date.now();
|
|
649
654
|
await \u7ED3\u679C\u8FD4\u56DE\u5668.\u8FD4\u56DE(req, res, \u6700\u7EC8\u7ED3\u679C);
|
|
650
655
|
let \u8FD4\u56DE\u8017\u65F6 = Date.now() - \u5F00\u59CB;
|
|
651
|
-
await
|
|
656
|
+
await log2.info("\u8FD4\u56DE\u903B\u8F91\u6267\u884C\u5B8C\u6BD5, \u8017\u65F6: %o ms", \u8FD4\u56DE\u8017\u65F6);
|
|
652
657
|
let \u603B\u8017\u65F6 = Date.now() - \u603B\u5F00\u59CB;
|
|
653
|
-
await
|
|
658
|
+
await log2.info("\u63A5\u53E3\u5B8C\u6574\u6267\u884C\u8017\u65F6: %o ms", \u603B\u8017\u65F6);
|
|
654
659
|
}
|
|
655
660
|
async \u521D\u59CB\u5316WebSocket(server) {
|
|
661
|
+
let log2 = await this.log;
|
|
656
662
|
let wss = new import_ws3.WebSocketServer({ server });
|
|
657
|
-
let \u7CFB\u7EDFlog = await this.\u7CFB\u7EDFlog;
|
|
658
663
|
wss.on("listening", async () => {
|
|
659
|
-
await
|
|
664
|
+
await log2.info("WebSocket \u670D\u52A1\u5668\u5DF2\u542F\u52A8\u5E76\u76D1\u542C");
|
|
660
665
|
});
|
|
661
666
|
wss.on("error", async (err) => {
|
|
662
|
-
await
|
|
667
|
+
await log2.error("WebSocket \u670D\u52A1\u5668\u53D1\u751F\u9519\u8BEF: %o", err);
|
|
663
668
|
});
|
|
664
669
|
wss.on("connection", async (ws, req) => {
|
|
665
|
-
let \
|
|
666
|
-
await \
|
|
670
|
+
let \u8FDE\u63A5log = log2.extend((0, import_short_uuid.default)().new());
|
|
671
|
+
await \u8FDE\u63A5log.debug("\u6536\u5230 WebSocket \u8FDE\u63A5\u8BF7\u6C42: %o", req.url);
|
|
667
672
|
let \u5BA2\u6237\u7AEFid = req.url?.split("?id=")[1] ?? null;
|
|
668
673
|
if (\u5BA2\u6237\u7AEFid === null) {
|
|
669
|
-
await \
|
|
670
|
-
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, \
|
|
674
|
+
await \u8FDE\u63A5log.error("\u8FDE\u63A5\u8BF7\u6C42\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
|
|
675
|
+
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, \u8FDE\u63A5log, 4001, "\u7F3A\u5C11\u5BA2\u6237\u7AEF ID");
|
|
671
676
|
}
|
|
672
|
-
await \
|
|
677
|
+
await \u8FDE\u63A5log.debug("\u89E3\u6790\u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
673
678
|
let WebSocket\u7BA1\u7406\u56682 = Global.getItemSync("WebSocket\u7BA1\u7406\u5668");
|
|
674
679
|
let \u8FDE\u63A5\u5DF2\u5B58\u5728 = WebSocket\u7BA1\u7406\u56682.\u67E5\u8BE2\u8FDE\u63A5\u5B58\u5728(\u5BA2\u6237\u7AEFid);
|
|
675
680
|
if (\u8FDE\u63A5\u5DF2\u5B58\u5728) {
|
|
676
|
-
await \
|
|
677
|
-
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, \
|
|
681
|
+
await \u8FDE\u63A5log.error("\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728: %s", \u5BA2\u6237\u7AEFid);
|
|
682
|
+
return this.\u5173\u95EDWebSocket\u8FDE\u63A5(ws, \u8FDE\u63A5log, 4002, "\u5BA2\u6237\u7AEF ID \u5DF2\u5B58\u5728");
|
|
678
683
|
}
|
|
679
684
|
WebSocket\u7BA1\u7406\u56682.\u589E\u52A0\u8FDE\u63A5(\u5BA2\u6237\u7AEFid, ws);
|
|
680
|
-
await \
|
|
685
|
+
await \u8FDE\u63A5log.info("WebSocket \u8FDE\u63A5\u5DF2\u5EFA\u7ACB, \u5BA2\u6237\u7AEF ID: %s", \u5BA2\u6237\u7AEFid);
|
|
681
686
|
ws.on("close", async () => {
|
|
682
|
-
await \
|
|
687
|
+
await \u8FDE\u63A5log.info("WebSocket \u8FDE\u63A5\u5173\u95ED: %s", \u5BA2\u6237\u7AEFid);
|
|
683
688
|
WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
|
|
684
689
|
});
|
|
685
690
|
ws.on("error", async (err) => {
|
|
686
|
-
await \
|
|
691
|
+
await \u8FDE\u63A5log.error("WebSocket \u51FA\u73B0\u9519\u8BEF, \u5BA2\u6237\u7AEF ID: %s, \u9519\u8BEF: %o", \u5BA2\u6237\u7AEFid, err);
|
|
687
692
|
WebSocket\u7BA1\u7406\u56682.\u5220\u9664\u8FDE\u63A5(\u5BA2\u6237\u7AEFid);
|
|
688
693
|
});
|
|
689
694
|
});
|
|
690
695
|
}
|
|
691
|
-
async \u5173\u95EDWebSocket\u8FDE\u63A5(ws,
|
|
692
|
-
await
|
|
696
|
+
async \u5173\u95EDWebSocket\u8FDE\u63A5(ws, log2, code, reason) {
|
|
697
|
+
await log2.debug(`\u5173\u95ED WebSocket \u8FDE\u63A5, \u4EE3\u7801: ${code}, \u539F\u56E0: ${reason}`);
|
|
693
698
|
ws.close(code, reason);
|
|
694
699
|
}
|
|
695
700
|
\u83B7\u53D6\u672C\u5730\u5730\u5740() {
|
|
@@ -732,9 +737,96 @@ var \u5E38\u7528\u76F4\u63A5\u5F62\u5F0F\u63A5\u53E3\u5C01\u88C5 = class extends
|
|
|
732
737
|
super(\u8BF7\u6C42\u8DEF\u5F84, \u8BF7\u6C42\u65B9\u6CD5, \u63A5\u53E3\u903B\u8F912, \u63A5\u53E3\u9519\u8BEF\u8F93\u51FA\u5F62\u5F0F, \u63A5\u53E3\u6B63\u786E\u8F93\u51FA\u5F62\u5F0F, \u63A5\u53E3\u8F6C\u6362\u5668, new \u5E38\u7528\u8FD4\u56DE\u5668());
|
|
733
738
|
}
|
|
734
739
|
};
|
|
740
|
+
|
|
741
|
+
// src/wrapper/express-compatible-wrapper.ts
|
|
742
|
+
var import_ts_fp_data2 = require("@lsby/ts-fp-data");
|
|
743
|
+
var import_zod9 = require("zod");
|
|
744
|
+
var Express\u517C\u5BB9\u63A5\u53E3\u5C01\u88C5 = class extends \u63A5\u53E3 {
|
|
745
|
+
constructor(\u8BF7\u6C42\u8DEF\u5F84, \u8BF7\u6C42\u65B9\u6CD5, \u5904\u7406\u51FD\u6570) {
|
|
746
|
+
let \u903B\u8F91 = \u63A5\u53E3\u903B\u8F91Base.\u6784\u9020([], async () => {
|
|
747
|
+
return new import_ts_fp_data2.Right({});
|
|
748
|
+
});
|
|
749
|
+
let \u8F6C\u6362\u5668 = new Express\u517C\u5BB9\u7ED3\u679C\u8F6C\u6362\u5668();
|
|
750
|
+
let \u8FD4\u56DE\u5668 = new Express\u517C\u5BB9\u8FD4\u56DE\u5668(\u5904\u7406\u51FD\u6570);
|
|
751
|
+
super(
|
|
752
|
+
\u8BF7\u6C42\u8DEF\u5F84,
|
|
753
|
+
\u8BF7\u6C42\u65B9\u6CD5,
|
|
754
|
+
\u903B\u8F91,
|
|
755
|
+
import_zod9.z.any(),
|
|
756
|
+
// 错误形式不做限制
|
|
757
|
+
import_zod9.z.any(),
|
|
758
|
+
// 正确形式不做限制
|
|
759
|
+
\u8F6C\u6362\u5668,
|
|
760
|
+
\u8FD4\u56DE\u5668
|
|
761
|
+
);
|
|
762
|
+
}
|
|
763
|
+
};
|
|
764
|
+
var Express\u517C\u5BB9\u7ED3\u679C\u8F6C\u6362\u5668 = class extends \u63A5\u53E3\u7ED3\u679C\u8F6C\u6362\u5668 {
|
|
765
|
+
\u5B9E\u73B0(\u6570\u636E) {
|
|
766
|
+
return \u6570\u636E;
|
|
767
|
+
}
|
|
768
|
+
};
|
|
769
|
+
var Express\u517C\u5BB9\u8FD4\u56DE\u5668 = class extends \u63A5\u53E3\u7ED3\u679C\u8FD4\u56DE\u5668 {
|
|
770
|
+
constructor(\u5904\u7406\u51FD\u6570) {
|
|
771
|
+
super();
|
|
772
|
+
this.\u5904\u7406\u51FD\u6570 = \u5904\u7406\u51FD\u6570;
|
|
773
|
+
}
|
|
774
|
+
\u8FD4\u56DE(req, res, _\u7ED3\u679C) {
|
|
775
|
+
return this.\u5904\u7406\u51FD\u6570(req, res);
|
|
776
|
+
}
|
|
777
|
+
};
|
|
778
|
+
|
|
779
|
+
// src/wrapper/file-download-wrapper.ts
|
|
780
|
+
var import_node_fs = require("fs");
|
|
781
|
+
var import_zod10 = require("zod");
|
|
782
|
+
var \u6587\u4EF6\u4E0B\u8F7D\u63A5\u53E3\u5C01\u88C5 = class extends \u63A5\u53E3 {
|
|
783
|
+
constructor(\u8BF7\u6C42\u8DEF\u5F84, \u8BF7\u6C42\u65B9\u6CD5, \u63A5\u53E3\u903B\u8F912, \u903B\u8F91\u9519\u8BEF\u7C7B\u578BZod, \u6587\u4EF6\u540D, MIME\u7C7B\u578B) {
|
|
784
|
+
let \u63A5\u53E3\u9519\u8BEF\u8F93\u51FA\u5F62\u5F0F = import_zod10.z.object({ status: import_zod10.z.literal("fail"), data: \u903B\u8F91\u9519\u8BEF\u7C7B\u578BZod });
|
|
785
|
+
let \u63A5\u53E3\u8F6C\u6362\u5668 = new \u76F4\u63A5\u5F62\u5F0F\u8F6C\u6362\u5668();
|
|
786
|
+
let \u8FD4\u56DE\u5668 = new \u6587\u4EF6\u4E0B\u8F7D\u8FD4\u56DE\u5668(\u6587\u4EF6\u540D, MIME\u7C7B\u578B);
|
|
787
|
+
super(
|
|
788
|
+
\u8BF7\u6C42\u8DEF\u5F84,
|
|
789
|
+
\u8BF7\u6C42\u65B9\u6CD5,
|
|
790
|
+
\u63A5\u53E3\u903B\u8F912,
|
|
791
|
+
\u63A5\u53E3\u9519\u8BEF\u8F93\u51FA\u5F62\u5F0F,
|
|
792
|
+
import_zod10.z.any(),
|
|
793
|
+
// 正确形式任意
|
|
794
|
+
\u63A5\u53E3\u8F6C\u6362\u5668,
|
|
795
|
+
\u8FD4\u56DE\u5668
|
|
796
|
+
);
|
|
797
|
+
}
|
|
798
|
+
};
|
|
799
|
+
var \u6587\u4EF6\u4E0B\u8F7D\u8FD4\u56DE\u5668 = class extends \u63A5\u53E3\u7ED3\u679C\u8FD4\u56DE\u5668 {
|
|
800
|
+
constructor(\u6587\u4EF6\u540D, MIME\u7C7B\u578B) {
|
|
801
|
+
super();
|
|
802
|
+
this.\u6587\u4EF6\u540D = \u6587\u4EF6\u540D;
|
|
803
|
+
this.MIME\u7C7B\u578B = MIME\u7C7B\u578B;
|
|
804
|
+
}
|
|
805
|
+
async \u8FD4\u56DE(req, res, \u7ED3\u679C) {
|
|
806
|
+
if (this.MIME\u7C7B\u578B !== void 0) {
|
|
807
|
+
res.setHeader("Content-Type", this.MIME\u7C7B\u578B);
|
|
808
|
+
}
|
|
809
|
+
if (this.\u6587\u4EF6\u540D !== void 0) {
|
|
810
|
+
let encodedFilename = encodeURIComponent(this.\u6587\u4EF6\u540D);
|
|
811
|
+
res.setHeader("Content-Disposition", `attachment; filename*=UTF-8''${encodedFilename}`);
|
|
812
|
+
}
|
|
813
|
+
if (Buffer.isBuffer(\u7ED3\u679C)) {
|
|
814
|
+
res.setHeader("Content-Length", \u7ED3\u679C.length);
|
|
815
|
+
res.send(\u7ED3\u679C);
|
|
816
|
+
} else if (typeof \u7ED3\u679C === "string") {
|
|
817
|
+
let \u6D41 = (0, import_node_fs.createReadStream)(\u7ED3\u679C);
|
|
818
|
+
\u6D41.pipe(res);
|
|
819
|
+
} else if (typeof \u7ED3\u679C.pipe === "function") {
|
|
820
|
+
\u7ED3\u679C.pipe(res);
|
|
821
|
+
} else {
|
|
822
|
+
res.status(400).send("Invalid file data");
|
|
823
|
+
}
|
|
824
|
+
}
|
|
825
|
+
};
|
|
735
826
|
// Annotate the CommonJS export names for ESM import in node:
|
|
736
827
|
0 && (module.exports = {
|
|
737
828
|
EXPORT_TYPE,
|
|
829
|
+
Express\u517C\u5BB9\u63A5\u53E3\u5C01\u88C5,
|
|
738
830
|
GET\u53C2\u6570\u89E3\u6790\u63D2\u4EF6,
|
|
739
831
|
JSON\u89E3\u6790\u63D2\u4EF6,
|
|
740
832
|
WebSocket\u63D2\u4EF6,
|
|
@@ -750,6 +842,7 @@ var \u5E38\u7528\u76F4\u63A5\u5F62\u5F0F\u63A5\u53E3\u5C01\u88C5 = class extends
|
|
|
750
842
|
\u63A5\u53E3\u903B\u8F91,
|
|
751
843
|
\u63A5\u53E3\u903B\u8F91Base,
|
|
752
844
|
\u63D2\u4EF6,
|
|
845
|
+
\u6587\u4EF6\u4E0B\u8F7D\u63A5\u53E3\u5C01\u88C5,
|
|
753
846
|
\u666E\u901A\u5BF9\u8C61\u6DF1\u5408\u5E76,
|
|
754
847
|
\u670D\u52A1\u5668,
|
|
755
848
|
\u6784\u9020\u5143\u7EC4,
|
package/dist/cjs/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { 严格递归合并对象, 普通对象深合并, 构造元组, 构造对象 } from './help/help.cjs';
|
|
2
|
-
export { 任 as 任意接口, x as 任意接口结果转换器, n as 任意接口逻辑, y as 任意插件, 兼 as 兼容空对象, A as 取插件内部ts类型, 取 as 取插件内部类型, 可 as 可调用接口逻辑, 合 as 合并插件结果, 常 as 常用形式转换器, b as 接口, a as 接口方法类型, w as 接口结果转换器, 接 as 接口路径类型, m as 接口逻辑, l as 接口逻辑Base, j as 接口逻辑正确类型, i as 接口逻辑错误类型, k as 接口逻辑附加参数类型, 插 as 插件, z as 插件项类型, 服 as 服务器, 清 as 清理函数类型, 直 as 直接形式转换器, 空 as 空对象, c as 获得接口方法类型, f as 获得接口正确形式, g as 获得接口结果转换器类型, h as 获得接口结果返回器类型, 获 as 获得接口路径类型, s as 获得接口逻辑上游接口类型, o as 获得接口逻辑插件类型, t as 获得接口逻辑最后接口类型, r as 获得接口逻辑正确类型, d as 获得接口逻辑类型, q as 获得接口逻辑错误类型, p as 获得接口逻辑附加参数类型, e as 获得接口错误形式, 计 as 计算接口逻辑参数, v as 计算接口逻辑正确结果, u as 计算接口逻辑错误结果, 请 as 请求附加参数类型 } from './interface-base-
|
|
2
|
+
export { 任 as 任意接口, x as 任意接口结果转换器, n as 任意接口逻辑, y as 任意插件, 兼 as 兼容空对象, A as 取插件内部ts类型, 取 as 取插件内部类型, 可 as 可调用接口逻辑, 合 as 合并插件结果, 常 as 常用形式转换器, b as 接口, a as 接口方法类型, w as 接口结果转换器, 接 as 接口路径类型, m as 接口逻辑, l as 接口逻辑Base, j as 接口逻辑正确类型, i as 接口逻辑错误类型, k as 接口逻辑附加参数类型, 插 as 插件, z as 插件项类型, 日 as 日志回调类型, 服 as 服务器, 清 as 清理函数类型, 直 as 直接形式转换器, 空 as 空对象, c as 获得接口方法类型, f as 获得接口正确形式, g as 获得接口结果转换器类型, h as 获得接口结果返回器类型, 获 as 获得接口路径类型, s as 获得接口逻辑上游接口类型, o as 获得接口逻辑插件类型, t as 获得接口逻辑最后接口类型, r as 获得接口逻辑正确类型, d as 获得接口逻辑类型, q as 获得接口逻辑错误类型, p as 获得接口逻辑附加参数类型, e as 获得接口错误形式, 计 as 计算接口逻辑参数, v as 计算接口逻辑正确结果, u as 计算接口逻辑错误结果, 请 as 请求附加参数类型 } from './interface-base-gRngpxki.cjs';
|
|
3
3
|
export { 任意接口结果返回器, 常用返回器, 接口结果返回器, 自定义返回器 } from './interface/interface-retuen.cjs';
|
|
4
4
|
export { 接口测试 } from './interface/interface-test.cjs';
|
|
5
5
|
export { 自定义数据插件 } from './plugin/extend/custom-data.cjs';
|
|
@@ -13,9 +13,12 @@ export { GetNetCoreExportTypeDefine, GetNetCoreExportTypeName, NetCoreExportType
|
|
|
13
13
|
export { 常用形式接口封装 } from './wrapper/common-wrapper.cjs';
|
|
14
14
|
export { 常用形式并自定义返回器接口封装 } from './wrapper/common-wrapper-return.cjs';
|
|
15
15
|
export { 常用直接形式接口封装 } from './wrapper/deferred-result-wrapper.cjs';
|
|
16
|
+
export { Express兼容接口封装 } from './wrapper/express-compatible-wrapper.cjs';
|
|
17
|
+
export { 文件下载接口封装, 文件数据类型 } from './wrapper/file-download-wrapper.cjs';
|
|
16
18
|
import 'zod';
|
|
17
19
|
import '@lsby/ts-fp-data';
|
|
18
20
|
import 'express';
|
|
19
21
|
import './help/interior.cjs';
|
|
20
22
|
import '@lsby/ts-log';
|
|
21
23
|
import 'node:http';
|
|
24
|
+
import 'node:fs';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import 'zod';
|
|
2
|
-
export { 任 as 任意接口, b as 接口, a as 接口方法类型, 接 as 接口路径类型, c as 获得接口方法类型, f as 获得接口正确形式, g as 获得接口结果转换器类型, h as 获得接口结果返回器类型, 获 as 获得接口路径类型, d as 获得接口逻辑类型, e as 获得接口错误形式 } from '../interface-base-
|
|
2
|
+
export { 任 as 任意接口, b as 接口, a as 接口方法类型, 接 as 接口路径类型, c as 获得接口方法类型, f as 获得接口正确形式, g as 获得接口结果转换器类型, h as 获得接口结果返回器类型, 获 as 获得接口路径类型, d as 获得接口逻辑类型, e as 获得接口错误形式 } from '../interface-base-gRngpxki.cjs';
|
|
3
3
|
import './interface-retuen.cjs';
|
|
4
4
|
import '@lsby/ts-fp-data';
|
|
5
5
|
import 'express';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import '@lsby/ts-fp-data';
|
|
2
2
|
import 'express';
|
|
3
3
|
import '../help/interior.cjs';
|
|
4
|
-
export { n as 任意接口逻辑, 兼 as 兼容空对象, 可 as 可调用接口逻辑, m as 接口逻辑, l as 接口逻辑Base, j as 接口逻辑正确类型, i as 接口逻辑错误类型, k as 接口逻辑附加参数类型, 清 as 清理函数类型, 空 as 空对象, s as 获得接口逻辑上游接口类型, o as 获得接口逻辑插件类型, t as 获得接口逻辑最后接口类型, r as 获得接口逻辑正确类型, q as 获得接口逻辑错误类型, p as 获得接口逻辑附加参数类型, 计 as 计算接口逻辑参数, v as 计算接口逻辑正确结果, u as 计算接口逻辑错误结果 } from '../interface-base-
|
|
4
|
+
export { n as 任意接口逻辑, 兼 as 兼容空对象, 可 as 可调用接口逻辑, m as 接口逻辑, l as 接口逻辑Base, j as 接口逻辑正确类型, i as 接口逻辑错误类型, k as 接口逻辑附加参数类型, 清 as 清理函数类型, 空 as 空对象, s as 获得接口逻辑上游接口类型, o as 获得接口逻辑插件类型, t as 获得接口逻辑最后接口类型, r as 获得接口逻辑正确类型, q as 获得接口逻辑错误类型, p as 获得接口逻辑附加参数类型, 计 as 计算接口逻辑参数, v as 计算接口逻辑正确结果, u as 计算接口逻辑错误结果 } from '../interface-base-gRngpxki.cjs';
|
|
5
5
|
import 'zod';
|
|
6
6
|
import '@lsby/ts-log';
|
|
7
7
|
import 'node:http';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import '@lsby/ts-fp-data';
|
|
2
|
-
export { x as 任意接口结果转换器, 常 as 常用形式转换器, w as 接口结果转换器, 直 as 直接形式转换器 } from '../interface-base-
|
|
2
|
+
export { x as 任意接口结果转换器, 常 as 常用形式转换器, w as 接口结果转换器, 直 as 直接形式转换器 } from '../interface-base-gRngpxki.cjs';
|
|
3
3
|
import 'zod';
|
|
4
4
|
import 'express';
|
|
5
5
|
import '../help/interior.cjs';
|
|
@@ -6,12 +6,14 @@ import { Log } from '@lsby/ts-log';
|
|
|
6
6
|
import * as http from 'node:http';
|
|
7
7
|
import { 接口结果返回器 as _______ } from './interface/interface-retuen.cjs';
|
|
8
8
|
|
|
9
|
+
type 日志回调类型 = (level: 'trace' | 'debug' | 'info' | 'warn' | 'error', namespace: string, content: string) => Promise<void>;
|
|
9
10
|
type 请求附加参数类型 = {
|
|
10
11
|
log: Log;
|
|
12
|
+
请求id: string;
|
|
11
13
|
};
|
|
12
14
|
declare class 服务器 {
|
|
13
|
-
private
|
|
14
|
-
private
|
|
15
|
+
private log;
|
|
16
|
+
private 日志回调?;
|
|
15
17
|
private 接口们;
|
|
16
18
|
private 端口;
|
|
17
19
|
private 静态资源路径;
|
|
@@ -21,8 +23,7 @@ declare class 服务器 {
|
|
|
21
23
|
端口: number;
|
|
22
24
|
静态资源路径?: string;
|
|
23
25
|
默认get文件路径?: string;
|
|
24
|
-
|
|
25
|
-
接口log?: Log;
|
|
26
|
+
日志回调?: 日志回调类型;
|
|
26
27
|
});
|
|
27
28
|
run(): Promise<{
|
|
28
29
|
ip: string[];
|
|
@@ -231,4 +232,4 @@ type 获得接口正确形式<A> = A extends 接口<any, any, any, any, infer X,
|
|
|
231
232
|
type 获得接口结果转换器类型<A> = A extends 接口<any, any, any, any, any, infer X, any> ? X : never;
|
|
232
233
|
type 获得接口结果返回器类型<A> = A extends 接口<any, any, any, any, any, any, infer X> ? X : never;
|
|
233
234
|
|
|
234
|
-
export { type 取插件内部ts类型 as A, type 接口方法类型 as a, 接口 as b, type 获得接口方法类型 as c, type 获得接口逻辑类型 as d, type 获得接口错误形式 as e, type 获得接口正确形式 as f, type 获得接口结果转换器类型 as g, type 获得接口结果返回器类型 as h, type 接口逻辑错误类型 as i, type 接口逻辑正确类型 as j, type 接口逻辑附加参数类型 as k, 接口逻辑Base as l, 接口逻辑 as m, type 任意接口逻辑 as n, type 获得接口逻辑插件类型 as o, type 获得接口逻辑附加参数类型 as p, type 获得接口逻辑错误类型 as q, type 获得接口逻辑正确类型 as r, type 获得接口逻辑上游接口类型 as s, type 获得接口逻辑最后接口类型 as t, type 计算接口逻辑错误结果 as u, type 计算接口逻辑正确结果 as v, 接口结果转换器 as w, type 任意接口结果转换器 as x, type 任意插件 as y, type 插件项类型 as z, type 任意接口 as 任, type 兼容空对象 as 兼, type 取插件内部类型 as 取, type 可调用接口逻辑 as 可, type 合并插件结果 as 合, 常用形式转换器 as 常, type 接口路径类型 as 接, 插件 as 插, 服务器 as 服, type 清理函数类型 as 清, 直接形式转换器 as 直, type 空对象 as 空, type 获得接口路径类型 as 获, type 计算接口逻辑参数 as 计, type 请求附加参数类型 as 请 };
|
|
235
|
+
export { type 取插件内部ts类型 as A, type 接口方法类型 as a, 接口 as b, type 获得接口方法类型 as c, type 获得接口逻辑类型 as d, type 获得接口错误形式 as e, type 获得接口正确形式 as f, type 获得接口结果转换器类型 as g, type 获得接口结果返回器类型 as h, type 接口逻辑错误类型 as i, type 接口逻辑正确类型 as j, type 接口逻辑附加参数类型 as k, 接口逻辑Base as l, 接口逻辑 as m, type 任意接口逻辑 as n, type 获得接口逻辑插件类型 as o, type 获得接口逻辑附加参数类型 as p, type 获得接口逻辑错误类型 as q, type 获得接口逻辑正确类型 as r, type 获得接口逻辑上游接口类型 as s, type 获得接口逻辑最后接口类型 as t, type 计算接口逻辑错误结果 as u, type 计算接口逻辑正确结果 as v, 接口结果转换器 as w, type 任意接口结果转换器 as x, type 任意插件 as y, type 插件项类型 as z, type 任意接口 as 任, type 兼容空对象 as 兼, type 取插件内部类型 as 取, type 可调用接口逻辑 as 可, type 合并插件结果 as 合, 常用形式转换器 as 常, type 接口路径类型 as 接, 插件 as 插, type 日志回调类型 as 日, 服务器 as 服, type 清理函数类型 as 清, 直接形式转换器 as 直, type 空对象 as 空, type 获得接口路径类型 as 获, type 计算接口逻辑参数 as 计, type 请求附加参数类型 as 请 };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import { AnyZodObject, z } from 'zod';
|
|
3
3
|
import { 严格递归合并对象 as ________ } from '../../help/help.cjs';
|
|
4
|
-
import { 插 as __, z as _____, 取 as _______, o as __________ } from '../../interface-base-
|
|
4
|
+
import { 插 as __, z as _____, 取 as _______, o as __________ } from '../../interface-base-gRngpxki.cjs';
|
|
5
5
|
import '@lsby/ts-fp-data';
|
|
6
6
|
import '../../help/interior.cjs';
|
|
7
7
|
import '@lsby/ts-log';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AnyZodObject, z } from 'zod';
|
|
2
2
|
import { 严格递归合并对象 as ________ } from '../../help/help.cjs';
|
|
3
|
-
import { 插 as __, z as _____, 取 as _______, o as __________ } from '../../interface-base-
|
|
3
|
+
import { 插 as __, z as _____, 取 as _______, o as __________ } from '../../interface-base-gRngpxki.cjs';
|
|
4
4
|
import '@lsby/ts-fp-data';
|
|
5
5
|
import 'express';
|
|
6
6
|
import '../../help/interior.cjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { 插 as __ } from '../../interface-base-
|
|
3
|
+
import { 插 as __ } from '../../interface-base-gRngpxki.cjs';
|
|
4
4
|
import '@lsby/ts-fp-data';
|
|
5
5
|
import '../../help/interior.cjs';
|
|
6
6
|
import '@lsby/ts-log';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import 'express';
|
|
2
2
|
import 'zod';
|
|
3
|
-
export { y as 任意插件, A as 取插件内部ts类型, 取 as 取插件内部类型, 合 as 合并插件结果, 插 as 插件, z as 插件项类型 } from '../interface-base-
|
|
3
|
+
export { y as 任意插件, A as 取插件内部ts类型, 取 as 取插件内部类型, 合 as 合并插件结果, 插 as 插件, z as 插件项类型 } from '../interface-base-gRngpxki.cjs';
|
|
4
4
|
import '@lsby/ts-fp-data';
|
|
5
5
|
import '../help/interior.cjs';
|
|
6
6
|
import '@lsby/ts-log';
|