node-karin 0.12.2-5.pr.206.f697b50 → 0.12.2-5.pr.206.fd03f9f
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/default/config/pm2.json +1 -1
- package/dist/cli/index.cjs +12 -13
- package/dist/cli/index.js +12 -13
- package/dist/cli/pm2.js +1 -0
- package/dist/index.js +300 -50
- package/dist/module/express.cjs +0 -80
- package/dist/module/express.js +1 -1
- package/package.json +1 -1
package/default/config/pm2.json
CHANGED
package/dist/cli/index.cjs
CHANGED
|
@@ -39,6 +39,12 @@ var start = () => {
|
|
|
39
39
|
process.exit(1);
|
|
40
40
|
}
|
|
41
41
|
console.log("[pm2] \u542F\u52A8\u4E2D...");
|
|
42
|
+
const data = JSON.parse(fs2__default.default.readFileSync(pm2Dir, "utf-8"));
|
|
43
|
+
const script = "./node_modules/node-karin/dist/cli/pm2.js";
|
|
44
|
+
if (data.apps[0].script !== script) {
|
|
45
|
+
data.apps[0].script = script;
|
|
46
|
+
fs2__default.default.writeFileSync(pm2Dir, JSON.stringify(data, null, 2));
|
|
47
|
+
}
|
|
42
48
|
const { error } = execSync(`pm2 start ${pm2Dir}`, { cwd: process.cwd() });
|
|
43
49
|
if (error) {
|
|
44
50
|
console.log("[pm2] \u542F\u52A8\u5931\u8D25");
|
|
@@ -62,7 +68,7 @@ var log = () => {
|
|
|
62
68
|
const data = JSON.parse(fs2__default.default.readFileSync(pm2Dir, "utf-8"));
|
|
63
69
|
try {
|
|
64
70
|
const prefix = process.platform === "win32" ? "pm2.cmd" : "pm2";
|
|
65
|
-
child_process.spawn(prefix, ["logs", data.name, "--lines", data.lines || 1e3], { stdio: "inherit", shell: true });
|
|
71
|
+
child_process.spawn(prefix, ["logs", data.apps[0].name, "--lines", data.lines || 1e3], { stdio: "inherit", shell: true });
|
|
66
72
|
} catch (error) {
|
|
67
73
|
console.error("[pm2] \u53D1\u751F\u672A\u77E5\u9519\u8BEF: \u8BF7\u68C0\u67E5pm2\u662F\u5426\u5B89\u88C5 \u3010npm install -g pm2\u3011");
|
|
68
74
|
console.error(error);
|
|
@@ -76,7 +82,7 @@ var stop = () => {
|
|
|
76
82
|
process.exit(1);
|
|
77
83
|
}
|
|
78
84
|
const data = JSON.parse(fs2__default.default.readFileSync(pm2Dir, "utf-8"));
|
|
79
|
-
execSync(`pm2 stop ${data.name}`, { cwd: process.cwd() });
|
|
85
|
+
execSync(`pm2 stop ${data.apps[0].name}`, { cwd: process.cwd() });
|
|
80
86
|
console.log("[pm2] \u505C\u6B62\u6210\u529F");
|
|
81
87
|
process.exit(0);
|
|
82
88
|
};
|
|
@@ -293,7 +299,7 @@ var loadEnv = (env) => {
|
|
|
293
299
|
files.forEach((file) => {
|
|
294
300
|
if (!fs2__default.default.existsSync(`${dir2}/${file}`)) {
|
|
295
301
|
if (file === ".env") {
|
|
296
|
-
console.error(`\u672A\u627E\u5230${file}\u6587\u4EF6\uFF0C\u8BF7\u4F7F\u7528
|
|
302
|
+
console.error(`\u672A\u627E\u5230${file}\u6587\u4EF6\uFF0C\u8BF7\u4F7F\u7528 npx karin init \u8FDB\u884C\u521D\u59CB\u5316\u9879\u76EE`);
|
|
297
303
|
} else {
|
|
298
304
|
console.error(`\u672A\u627E\u5230${file}\u6587\u4EF6\uFF0C\u8BF7\u5C06\u5176\u653E\u7F6E\u5728\u9879\u76EE\u6839\u76EE\u5F55`);
|
|
299
305
|
}
|
|
@@ -326,14 +332,11 @@ var dev = async (env) => {
|
|
|
326
332
|
};
|
|
327
333
|
var tsStart = async (env) => {
|
|
328
334
|
loadEnv(env);
|
|
335
|
+
process.env.RUNTIME = "tsx";
|
|
329
336
|
process.env.NODE_ENV = "development";
|
|
330
337
|
const index = "../root.js";
|
|
331
338
|
const { karinMain } = await import(index);
|
|
332
339
|
const child = child_process.spawn("npx", ["tsx", karinMain], {
|
|
333
|
-
env: {
|
|
334
|
-
...process.env,
|
|
335
|
-
RUNTIME: "tsx"
|
|
336
|
-
},
|
|
337
340
|
stdio: "inherit",
|
|
338
341
|
shell: true
|
|
339
342
|
});
|
|
@@ -359,12 +362,9 @@ var tsWatch = async (options) => {
|
|
|
359
362
|
args.push("--clear-screen=false");
|
|
360
363
|
}
|
|
361
364
|
args.push(karinMain);
|
|
365
|
+
process.env.RUNTIME = "tsx";
|
|
366
|
+
process.env.TSX_WATCH = "true";
|
|
362
367
|
const child = child_process.spawn("npx", args, {
|
|
363
|
-
env: {
|
|
364
|
-
...process.env,
|
|
365
|
-
RUNTIME: "tsx",
|
|
366
|
-
TSX_WATCH: "true"
|
|
367
|
-
},
|
|
368
368
|
stdio: "inherit",
|
|
369
369
|
shell: true
|
|
370
370
|
});
|
|
@@ -487,7 +487,6 @@ var addEnvOption = (command) => {
|
|
|
487
487
|
return command.option("-e, --env <files>", "\u6307\u5B9A\u73AF\u5883\u53D8\u91CF\u6587\u4EF6\uFF0C\u591A\u4E2A\u6587\u4EF6\u7528\u9017\u53F7\u5206\u9694");
|
|
488
488
|
};
|
|
489
489
|
var getVersion = () => {
|
|
490
|
-
if (process.env.npm_package_version) return process.env.npm_package_version;
|
|
491
490
|
try {
|
|
492
491
|
const file = url.fileURLToPath(new URL("../../package.json", (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href))));
|
|
493
492
|
const packageJson = JSON.parse(fs2__default.default.readFileSync(file, "utf-8"));
|
package/dist/cli/index.js
CHANGED
|
@@ -30,6 +30,12 @@ var start = () => {
|
|
|
30
30
|
process.exit(1);
|
|
31
31
|
}
|
|
32
32
|
console.log("[pm2] \u542F\u52A8\u4E2D...");
|
|
33
|
+
const data = JSON.parse(fs2.readFileSync(pm2Dir, "utf-8"));
|
|
34
|
+
const script = "./node_modules/node-karin/dist/cli/pm2.js";
|
|
35
|
+
if (data.apps[0].script !== script) {
|
|
36
|
+
data.apps[0].script = script;
|
|
37
|
+
fs2.writeFileSync(pm2Dir, JSON.stringify(data, null, 2));
|
|
38
|
+
}
|
|
33
39
|
const { error } = execSync(`pm2 start ${pm2Dir}`, { cwd: process.cwd() });
|
|
34
40
|
if (error) {
|
|
35
41
|
console.log("[pm2] \u542F\u52A8\u5931\u8D25");
|
|
@@ -53,7 +59,7 @@ var log = () => {
|
|
|
53
59
|
const data = JSON.parse(fs2.readFileSync(pm2Dir, "utf-8"));
|
|
54
60
|
try {
|
|
55
61
|
const prefix = process.platform === "win32" ? "pm2.cmd" : "pm2";
|
|
56
|
-
spawn(prefix, ["logs", data.name, "--lines", data.lines || 1e3], { stdio: "inherit", shell: true });
|
|
62
|
+
spawn(prefix, ["logs", data.apps[0].name, "--lines", data.lines || 1e3], { stdio: "inherit", shell: true });
|
|
57
63
|
} catch (error) {
|
|
58
64
|
console.error("[pm2] \u53D1\u751F\u672A\u77E5\u9519\u8BEF: \u8BF7\u68C0\u67E5pm2\u662F\u5426\u5B89\u88C5 \u3010npm install -g pm2\u3011");
|
|
59
65
|
console.error(error);
|
|
@@ -67,7 +73,7 @@ var stop = () => {
|
|
|
67
73
|
process.exit(1);
|
|
68
74
|
}
|
|
69
75
|
const data = JSON.parse(fs2.readFileSync(pm2Dir, "utf-8"));
|
|
70
|
-
execSync(`pm2 stop ${data.name}`, { cwd: process.cwd() });
|
|
76
|
+
execSync(`pm2 stop ${data.apps[0].name}`, { cwd: process.cwd() });
|
|
71
77
|
console.log("[pm2] \u505C\u6B62\u6210\u529F");
|
|
72
78
|
process.exit(0);
|
|
73
79
|
};
|
|
@@ -284,7 +290,7 @@ var loadEnv = (env) => {
|
|
|
284
290
|
files.forEach((file) => {
|
|
285
291
|
if (!fs2.existsSync(`${dir2}/${file}`)) {
|
|
286
292
|
if (file === ".env") {
|
|
287
|
-
console.error(`\u672A\u627E\u5230${file}\u6587\u4EF6\uFF0C\u8BF7\u4F7F\u7528
|
|
293
|
+
console.error(`\u672A\u627E\u5230${file}\u6587\u4EF6\uFF0C\u8BF7\u4F7F\u7528 npx karin init \u8FDB\u884C\u521D\u59CB\u5316\u9879\u76EE`);
|
|
288
294
|
} else {
|
|
289
295
|
console.error(`\u672A\u627E\u5230${file}\u6587\u4EF6\uFF0C\u8BF7\u5C06\u5176\u653E\u7F6E\u5728\u9879\u76EE\u6839\u76EE\u5F55`);
|
|
290
296
|
}
|
|
@@ -317,14 +323,11 @@ var dev = async (env) => {
|
|
|
317
323
|
};
|
|
318
324
|
var tsStart = async (env) => {
|
|
319
325
|
loadEnv(env);
|
|
326
|
+
process.env.RUNTIME = "tsx";
|
|
320
327
|
process.env.NODE_ENV = "development";
|
|
321
328
|
const index = "../root.js";
|
|
322
329
|
const { karinMain } = await import(index);
|
|
323
330
|
const child = spawn("npx", ["tsx", karinMain], {
|
|
324
|
-
env: {
|
|
325
|
-
...process.env,
|
|
326
|
-
RUNTIME: "tsx"
|
|
327
|
-
},
|
|
328
331
|
stdio: "inherit",
|
|
329
332
|
shell: true
|
|
330
333
|
});
|
|
@@ -350,12 +353,9 @@ var tsWatch = async (options) => {
|
|
|
350
353
|
args.push("--clear-screen=false");
|
|
351
354
|
}
|
|
352
355
|
args.push(karinMain);
|
|
356
|
+
process.env.RUNTIME = "tsx";
|
|
357
|
+
process.env.TSX_WATCH = "true";
|
|
353
358
|
const child = spawn("npx", args, {
|
|
354
|
-
env: {
|
|
355
|
-
...process.env,
|
|
356
|
-
RUNTIME: "tsx",
|
|
357
|
-
TSX_WATCH: "true"
|
|
358
|
-
},
|
|
359
359
|
stdio: "inherit",
|
|
360
360
|
shell: true
|
|
361
361
|
});
|
|
@@ -478,7 +478,6 @@ var addEnvOption = (command) => {
|
|
|
478
478
|
return command.option("-e, --env <files>", "\u6307\u5B9A\u73AF\u5883\u53D8\u91CF\u6587\u4EF6\uFF0C\u591A\u4E2A\u6587\u4EF6\u7528\u9017\u53F7\u5206\u9694");
|
|
479
479
|
};
|
|
480
480
|
var getVersion = () => {
|
|
481
|
-
if (process.env.npm_package_version) return process.env.npm_package_version;
|
|
482
481
|
try {
|
|
483
482
|
const file = fileURLToPath(new URL("../../package.json", import.meta.url));
|
|
484
483
|
const packageJson = JSON.parse(fs2.readFileSync(file, "utf-8"));
|
package/dist/cli/pm2.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import 'node-karin'
|
package/dist/index.js
CHANGED
|
@@ -408,8 +408,8 @@ var init_file = __esm({
|
|
|
408
408
|
copyConfigSync = (defaulPath, userPath, suffixs = [], isThrow = false) => {
|
|
409
409
|
try {
|
|
410
410
|
const files = getFiles(defaulPath, suffixs);
|
|
411
|
-
fs4.mkdirSync(userPath);
|
|
412
|
-
fs4.mkdirSync(defaulPath);
|
|
411
|
+
fs4.mkdirSync(userPath, { recursive: true });
|
|
412
|
+
fs4.mkdirSync(defaulPath, { recursive: true });
|
|
413
413
|
copyFilesSync(files, defaulPath, userPath);
|
|
414
414
|
return true;
|
|
415
415
|
} catch (error) {
|
|
@@ -2005,7 +2005,7 @@ var init_list = __esm({
|
|
|
2005
2005
|
return;
|
|
2006
2006
|
}
|
|
2007
2007
|
if (type === "git" || type === "root") {
|
|
2008
|
-
const file = path7.join(pluginDir, name);
|
|
2008
|
+
const file = type === "root" ? process.cwd() : path7.join(pluginDir, name);
|
|
2009
2009
|
await getGitInfo(info, file, name, ext);
|
|
2010
2010
|
return;
|
|
2011
2011
|
}
|
|
@@ -4073,6 +4073,7 @@ var loader_exports = {};
|
|
|
4073
4073
|
__export(loader_exports, {
|
|
4074
4074
|
LoaderPlugin: () => LoaderPlugin
|
|
4075
4075
|
});
|
|
4076
|
+
import fs14 from "node:fs";
|
|
4076
4077
|
import lodash5 from "lodash";
|
|
4077
4078
|
import path11 from "node:path";
|
|
4078
4079
|
import util2 from "node:util";
|
|
@@ -4127,11 +4128,15 @@ var init_loader = __esm({
|
|
|
4127
4128
|
if (pkg3.type !== "app") {
|
|
4128
4129
|
if (isTsx() && ((_c = (_b = pkg3 == null ? void 0 : pkg3.pkgData) == null ? void 0 : _b.karin) == null ? void 0 : _c.main)) {
|
|
4129
4130
|
const file = path11.join(pkg3.dir, pkg3.pkgData.karin.main);
|
|
4130
|
-
|
|
4131
|
+
if (fs14.existsSync(file)) {
|
|
4132
|
+
entryPromises.push(this.loaderMain(pkg3.name, file));
|
|
4133
|
+
}
|
|
4131
4134
|
}
|
|
4132
4135
|
if ((_d = pkg3 == null ? void 0 : pkg3.pkgData) == null ? void 0 : _d.main) {
|
|
4133
4136
|
const file = path11.join(pkg3.dir, pkg3.pkgData.main);
|
|
4134
|
-
|
|
4137
|
+
if (fs14.existsSync(file)) {
|
|
4138
|
+
entryPromises.push(this.loaderMain(pkg3.name, file));
|
|
4139
|
+
}
|
|
4135
4140
|
}
|
|
4136
4141
|
}
|
|
4137
4142
|
if (pkg3.type !== "app" && ((_f = (_e = pkg3 == null ? void 0 : pkg3.pkgData) == null ? void 0 : _e.karin) == null ? void 0 : _f.static)) {
|
|
@@ -4554,7 +4559,7 @@ var init_ip = __esm({
|
|
|
4554
4559
|
});
|
|
4555
4560
|
|
|
4556
4561
|
// src/server/api/console.ts
|
|
4557
|
-
import
|
|
4562
|
+
import fs15 from "node:fs";
|
|
4558
4563
|
import path13 from "node:path";
|
|
4559
4564
|
var consoleRouter;
|
|
4560
4565
|
var init_console = __esm({
|
|
@@ -4595,11 +4600,11 @@ var init_console = __esm({
|
|
|
4595
4600
|
}
|
|
4596
4601
|
}
|
|
4597
4602
|
const file = path13.join(consolePath, name);
|
|
4598
|
-
if (!
|
|
4603
|
+
if (!fs15.existsSync(file)) {
|
|
4599
4604
|
res.status(404).json({ error: "\u6587\u4EF6\u4E0D\u5B58\u5728", message: "\u6587\u4EF6\u4E0D\u5B58\u5728" });
|
|
4600
4605
|
return;
|
|
4601
4606
|
}
|
|
4602
|
-
const data =
|
|
4607
|
+
const data = fs15.readFileSync(file);
|
|
4603
4608
|
if (!data) {
|
|
4604
4609
|
res.status(500).json({ error: "\u5185\u90E8\u9519\u8BEF", message: "\u8BFB\u53D6\u5931\u8D25" });
|
|
4605
4610
|
return;
|
|
@@ -6212,6 +6217,7 @@ var init_groups2 = __esm({
|
|
|
6212
6217
|
App.next = () => {
|
|
6213
6218
|
next = true;
|
|
6214
6219
|
};
|
|
6220
|
+
App.reply = App.e.reply.bind(App.e);
|
|
6215
6221
|
const result = await App[plugin.file.method](App.e);
|
|
6216
6222
|
if (next === false && result === false) next = true;
|
|
6217
6223
|
}
|
|
@@ -6324,6 +6330,7 @@ var init_private = __esm({
|
|
|
6324
6330
|
App.next = () => {
|
|
6325
6331
|
next = true;
|
|
6326
6332
|
};
|
|
6333
|
+
App.reply = App.e.reply.bind(App.e);
|
|
6327
6334
|
const result = await App[plugin.file.method](App.e);
|
|
6328
6335
|
if (next === false && result === false) next = true;
|
|
6329
6336
|
}
|
|
@@ -8507,7 +8514,7 @@ var init_event = __esm({
|
|
|
8507
8514
|
});
|
|
8508
8515
|
|
|
8509
8516
|
// src/adapter/input/index.ts
|
|
8510
|
-
import
|
|
8517
|
+
import fs16 from "node:fs";
|
|
8511
8518
|
import path14 from "node:path";
|
|
8512
8519
|
var index2, botID, AdapterConsole, adapter2;
|
|
8513
8520
|
var init_input = __esm({
|
|
@@ -8619,7 +8626,7 @@ var init_input = __esm({
|
|
|
8619
8626
|
const cfg = adapter();
|
|
8620
8627
|
const name = (++index2).toString();
|
|
8621
8628
|
const file = path14.join(consolePath, `${name}${ext}`);
|
|
8622
|
-
await
|
|
8629
|
+
await fs16.promises.writeFile(file, await buffer(data));
|
|
8623
8630
|
if (cfg.console.isLocal) {
|
|
8624
8631
|
return `http://127.0.0.1:${process.env.HTTP_PORT}/console/${name}${ext}`;
|
|
8625
8632
|
}
|
|
@@ -8762,7 +8769,7 @@ var init_cache2 = __esm({
|
|
|
8762
8769
|
});
|
|
8763
8770
|
|
|
8764
8771
|
// src/adapter/render/admin/template.ts
|
|
8765
|
-
import
|
|
8772
|
+
import fs17 from "node:fs";
|
|
8766
8773
|
import path15 from "node:path";
|
|
8767
8774
|
import chokidar3 from "chokidar";
|
|
8768
8775
|
import template from "art-template";
|
|
@@ -8784,7 +8791,7 @@ var init_template = __esm({
|
|
|
8784
8791
|
const tplData = getCacheData(file);
|
|
8785
8792
|
const renderData = template.render(tplData, options.data);
|
|
8786
8793
|
const outputPath = getOutputPath(options.file, renderData, options.name);
|
|
8787
|
-
|
|
8794
|
+
fs17.writeFileSync(outputPath, renderData);
|
|
8788
8795
|
delete options.data;
|
|
8789
8796
|
delete options.name;
|
|
8790
8797
|
options.file = `file://${outputPath}`;
|
|
@@ -8802,7 +8809,7 @@ var init_template = __esm({
|
|
|
8802
8809
|
if (CachingData) {
|
|
8803
8810
|
return CachingData;
|
|
8804
8811
|
}
|
|
8805
|
-
const tplData =
|
|
8812
|
+
const tplData = fs17.readFileSync(file, "utf-8");
|
|
8806
8813
|
watch2(file, tplData);
|
|
8807
8814
|
return tplData;
|
|
8808
8815
|
};
|
|
@@ -8812,7 +8819,7 @@ var init_template = __esm({
|
|
|
8812
8819
|
const fileDir = path15.join(htmlPath, name || "render");
|
|
8813
8820
|
const filePath = path15.join(fileDir, `${basename}-${Date.now()}${extname}`);
|
|
8814
8821
|
existToMkdirSync(fileDir);
|
|
8815
|
-
|
|
8822
|
+
fs17.writeFileSync(filePath, data);
|
|
8816
8823
|
return filePath;
|
|
8817
8824
|
};
|
|
8818
8825
|
watch2 = async (file, data) => {
|
|
@@ -8821,7 +8828,7 @@ var init_template = __esm({
|
|
|
8821
8828
|
const watcher = chokidar3.watch(file);
|
|
8822
8829
|
watcherCache.set(file, watcher);
|
|
8823
8830
|
watcher.on("change", () => {
|
|
8824
|
-
cache11.set(file,
|
|
8831
|
+
cache11.set(file, fs17.readFileSync(file, "utf-8"));
|
|
8825
8832
|
logger.info(`[\u6587\u4EF6\u53D8\u52A8] html\u6A21\u677F\u53D1\u9001\u53D8\u52A8: ${file}`);
|
|
8826
8833
|
});
|
|
8827
8834
|
watcher.on("unlink", () => {
|
|
@@ -8843,14 +8850,277 @@ var init_types = __esm({
|
|
|
8843
8850
|
}
|
|
8844
8851
|
});
|
|
8845
8852
|
|
|
8853
|
+
// src/utils/fs/static.ts
|
|
8854
|
+
var isStatic;
|
|
8855
|
+
var init_static = __esm({
|
|
8856
|
+
"src/utils/fs/static.ts"() {
|
|
8857
|
+
"use strict";
|
|
8858
|
+
init_esm_shims();
|
|
8859
|
+
init_cache();
|
|
8860
|
+
init_path();
|
|
8861
|
+
isStatic = (filePath) => {
|
|
8862
|
+
try {
|
|
8863
|
+
for (const item of cache9.static) {
|
|
8864
|
+
if (isSubPath(item, filePath)) {
|
|
8865
|
+
return true;
|
|
8866
|
+
}
|
|
8867
|
+
}
|
|
8868
|
+
return false;
|
|
8869
|
+
} catch (error) {
|
|
8870
|
+
logger.error("isStatic", error);
|
|
8871
|
+
return false;
|
|
8872
|
+
}
|
|
8873
|
+
};
|
|
8874
|
+
}
|
|
8875
|
+
});
|
|
8876
|
+
|
|
8877
|
+
// src/adapter/render/connect/ws.ts
|
|
8878
|
+
import fs18 from "node:fs";
|
|
8879
|
+
import crypto from "node:crypto";
|
|
8880
|
+
var WebSocketRender;
|
|
8881
|
+
var init_ws2 = __esm({
|
|
8882
|
+
"src/adapter/render/connect/ws.ts"() {
|
|
8883
|
+
"use strict";
|
|
8884
|
+
init_esm_shims();
|
|
8885
|
+
init_template();
|
|
8886
|
+
init_cache2();
|
|
8887
|
+
init_static();
|
|
8888
|
+
WebSocketRender = class {
|
|
8889
|
+
/** websocket实例 */
|
|
8890
|
+
socket;
|
|
8891
|
+
/** 唯一标识符 */
|
|
8892
|
+
echo = 0;
|
|
8893
|
+
/** 索引 */
|
|
8894
|
+
index;
|
|
8895
|
+
constructor(socket) {
|
|
8896
|
+
this.socket = socket;
|
|
8897
|
+
this.index = -1;
|
|
8898
|
+
}
|
|
8899
|
+
async init() {
|
|
8900
|
+
this.socket.on("close", () => {
|
|
8901
|
+
unregisterRender(this.index);
|
|
8902
|
+
this.socket.removeAllListeners();
|
|
8903
|
+
this.socket.close();
|
|
8904
|
+
});
|
|
8905
|
+
this.socket.on("message", (event) => {
|
|
8906
|
+
const raw2 = event.toString();
|
|
8907
|
+
const { echo, action, status, data } = JSON.parse(raw2);
|
|
8908
|
+
logger.debug(`[WebSocket] ${echo} ${action} ${status}`);
|
|
8909
|
+
logger.trace(`[WebSocket] ${echo} ${raw2}`);
|
|
8910
|
+
if (action === "response") {
|
|
8911
|
+
this.socket.emit(echo, { action, status, data });
|
|
8912
|
+
} else if (action === "close") {
|
|
8913
|
+
logger.error(`[WebSocket] \u6536\u5230\u65AD\u5F00\u8FDE\u63A5\u8BF7\u6C42: ${raw2}`);
|
|
8914
|
+
this.socket.close();
|
|
8915
|
+
} else if (action === "static") {
|
|
8916
|
+
return this.static(echo, data);
|
|
8917
|
+
} else {
|
|
8918
|
+
logger.error(`[WebSocket] \u672A\u77E5\u7684\u8BF7\u6C42: ${raw2}`);
|
|
8919
|
+
}
|
|
8920
|
+
});
|
|
8921
|
+
this.index = registerRender("puppeteer", this.render.bind(this));
|
|
8922
|
+
}
|
|
8923
|
+
/**
|
|
8924
|
+
* @description 鉴权
|
|
8925
|
+
* @param token
|
|
8926
|
+
* @param targetToken 目标的token
|
|
8927
|
+
* @returns 是否鉴权成功
|
|
8928
|
+
*/
|
|
8929
|
+
auth(token, targetToken) {
|
|
8930
|
+
if (token !== targetToken) {
|
|
8931
|
+
if (token.length !== 32) {
|
|
8932
|
+
token = crypto.createHash("md5").update(`Bearer ${token}`).digest("hex");
|
|
8933
|
+
}
|
|
8934
|
+
if (targetToken.length !== 32) {
|
|
8935
|
+
targetToken = crypto.createHash("md5").update(`Bearer ${targetToken}`).digest("hex");
|
|
8936
|
+
}
|
|
8937
|
+
if (token !== targetToken) {
|
|
8938
|
+
return false;
|
|
8939
|
+
}
|
|
8940
|
+
}
|
|
8941
|
+
return true;
|
|
8942
|
+
}
|
|
8943
|
+
/**
|
|
8944
|
+
* @description 处理静态资源请求
|
|
8945
|
+
* @param echo 唯一标识符
|
|
8946
|
+
* @param data 数据
|
|
8947
|
+
*/
|
|
8948
|
+
async static(echo, data) {
|
|
8949
|
+
const result = isStatic(data.file);
|
|
8950
|
+
if (!result) {
|
|
8951
|
+
logger.warn(`[WebSocket] \u8BBF\u95EE\u7684\u8DEF\u5F84\u975E\u6CD5: echo: ${echo} data: ${JSON.stringify(data)}`);
|
|
8952
|
+
return this.socket.send(JSON.stringify({ echo, status: "error", data: "\u975E\u6CD5\u7684\u8BBF\u95EE\u8DEF\u5F84" }));
|
|
8953
|
+
}
|
|
8954
|
+
const fileData = fs18.readFileSync(data.file);
|
|
8955
|
+
return this.socket.send(JSON.stringify({ echo, status: "ok", data: fileData }));
|
|
8956
|
+
}
|
|
8957
|
+
render(data) {
|
|
8958
|
+
const options = renderTpl(data);
|
|
8959
|
+
return this.sendApi("render", options);
|
|
8960
|
+
}
|
|
8961
|
+
async sendApi(action, data) {
|
|
8962
|
+
const echo = ++this.echo;
|
|
8963
|
+
const str = JSON.stringify({ echo, action, data });
|
|
8964
|
+
logger.debug(`[sendApi][WebSocket] ${echo} ${action} ${str}`);
|
|
8965
|
+
this.socket.send(str);
|
|
8966
|
+
return new Promise((resolve, reject) => {
|
|
8967
|
+
const timeoutId = setTimeout(() => {
|
|
8968
|
+
reject(new Error(`[sendApi] \u8BF7\u6C42\u9519\u8BEF:
|
|
8969
|
+
action: ${action}
|
|
8970
|
+
params: ${str}
|
|
8971
|
+
error: \u8BF7\u6C42\u8D85\u65F6}`));
|
|
8972
|
+
}, 120 * 1e3);
|
|
8973
|
+
this.socket.once(echo + "", ({ status, data: data2 }) => {
|
|
8974
|
+
clearTimeout(timeoutId);
|
|
8975
|
+
if (status === "ok") {
|
|
8976
|
+
return resolve(data2);
|
|
8977
|
+
}
|
|
8978
|
+
reject(new Error(`[sendApi] \u8BF7\u6C42\u9519\u8BEF:
|
|
8979
|
+
action: ${action}
|
|
8980
|
+
params: ${str}
|
|
8981
|
+
error: ${data2}}`));
|
|
8982
|
+
});
|
|
8983
|
+
});
|
|
8984
|
+
}
|
|
8985
|
+
};
|
|
8986
|
+
}
|
|
8987
|
+
});
|
|
8988
|
+
|
|
8989
|
+
// src/adapter/render/connect/client.ts
|
|
8990
|
+
import WebSocket from "ws";
|
|
8991
|
+
var init_client = __esm({
|
|
8992
|
+
async "src/adapter/render/connect/client.ts"() {
|
|
8993
|
+
"use strict";
|
|
8994
|
+
init_esm_shims();
|
|
8995
|
+
init_ws2();
|
|
8996
|
+
await init_render();
|
|
8997
|
+
}
|
|
8998
|
+
});
|
|
8999
|
+
|
|
9000
|
+
// src/adapter/render/connect/server.ts
|
|
9001
|
+
var WebSocketServerRenderer;
|
|
9002
|
+
var init_server2 = __esm({
|
|
9003
|
+
async "src/adapter/render/connect/server.ts"() {
|
|
9004
|
+
"use strict";
|
|
9005
|
+
init_esm_shims();
|
|
9006
|
+
init_ws2();
|
|
9007
|
+
await init_render();
|
|
9008
|
+
init_internal();
|
|
9009
|
+
WebSocketServerRenderer = class extends WebSocketRender {
|
|
9010
|
+
/** 请求实例 */
|
|
9011
|
+
request;
|
|
9012
|
+
constructor(socket, request) {
|
|
9013
|
+
super(socket);
|
|
9014
|
+
this.request = request;
|
|
9015
|
+
}
|
|
9016
|
+
connection() {
|
|
9017
|
+
const cfg = render();
|
|
9018
|
+
if (!cfg.ws_server.enable) {
|
|
9019
|
+
logger.warn("[WebSocket] \u53CD\u5411ws\u672A\u542F\u7528");
|
|
9020
|
+
this.socket.close();
|
|
9021
|
+
return false;
|
|
9022
|
+
}
|
|
9023
|
+
const url = `ws://${this.request.headers.host}${this.request.url}`;
|
|
9024
|
+
if (process.env.WS_SERVER_AUTH_KEY) {
|
|
9025
|
+
const token = this.request.headers["authorization"];
|
|
9026
|
+
if (!token || !this.auth(process.env.WS_SERVER_AUTH_KEY, token)) {
|
|
9027
|
+
logger.error(`[WebSocket] \u9274\u6743\u5931\u8D25: authorization: ${token} url: ${url}`);
|
|
9028
|
+
this.socket.close();
|
|
9029
|
+
return false;
|
|
9030
|
+
}
|
|
9031
|
+
}
|
|
9032
|
+
logger.info(`[WebSocket] \u8FDE\u63A5\u6210\u529F: url: ${url}`);
|
|
9033
|
+
return true;
|
|
9034
|
+
}
|
|
9035
|
+
};
|
|
9036
|
+
listeners.on("ws:connection:puppeteer", (socket, request) => {
|
|
9037
|
+
const server2 = new WebSocketServerRenderer(socket, request);
|
|
9038
|
+
if (!server2.connection()) return;
|
|
9039
|
+
server2.init();
|
|
9040
|
+
});
|
|
9041
|
+
}
|
|
9042
|
+
});
|
|
9043
|
+
|
|
9044
|
+
// src/adapter/render/connect/http.ts
|
|
9045
|
+
import axios4 from "axios";
|
|
9046
|
+
import crypto2 from "node:crypto";
|
|
9047
|
+
var createHttpRenderClient;
|
|
9048
|
+
var init_http = __esm({
|
|
9049
|
+
async "src/adapter/render/connect/http.ts"() {
|
|
9050
|
+
"use strict";
|
|
9051
|
+
init_esm_shims();
|
|
9052
|
+
init_cache2();
|
|
9053
|
+
await init_render();
|
|
9054
|
+
createHttpRenderClient = () => {
|
|
9055
|
+
const cfg = render();
|
|
9056
|
+
if (!cfg.http_server || !Array.isArray(cfg.http_server) || cfg.http_server.length === 0) {
|
|
9057
|
+
logger.trace("[render][http] \u672A\u914D\u7F6E\u4EFB\u4F55\u6B63\u5411HTTP \u5DF2\u8DF3\u8FC7\u521B\u5EFA");
|
|
9058
|
+
return;
|
|
9059
|
+
}
|
|
9060
|
+
return Promise.allSettled(cfg.http_server.map(async (item) => {
|
|
9061
|
+
let { url, token, enable } = item;
|
|
9062
|
+
if (!enable) return;
|
|
9063
|
+
url = url.replace("/puppeteer", "");
|
|
9064
|
+
const headers = { authorization: crypto2.createHash("md5").update(`Bearer ${token}`).digest("hex") };
|
|
9065
|
+
try {
|
|
9066
|
+
const result = await axios4.get(`${url}/ping`, { timeout: 5e3 });
|
|
9067
|
+
if (result.status !== 200 || String(result.data.status) !== "200") {
|
|
9068
|
+
logger.error(`[render][http] \u521B\u5EFA\u6E32\u67D3\u5668\u5931\u8D25: \u65E0\u6CD5\u8FDE\u63A5 ${url}`);
|
|
9069
|
+
}
|
|
9070
|
+
const auth2 = await axios4.get(`${url}/auth`, { headers, timeout: 5e3 });
|
|
9071
|
+
if (auth2.status !== 200 || String(auth2.data.status) !== "200") {
|
|
9072
|
+
logger.error(`[render][http] \u521B\u5EFA\u6E32\u67D3\u5668\u5931\u8D25: \u9274\u6743\u9519\u8BEF ${url}`);
|
|
9073
|
+
return;
|
|
9074
|
+
}
|
|
9075
|
+
} catch (error) {
|
|
9076
|
+
if (axios4.isAxiosError(error)) {
|
|
9077
|
+
const { response } = error;
|
|
9078
|
+
logger.error(`[render][http] \u521B\u5EFA\u6E32\u67D3\u5668\u5931\u8D25: ${response == null ? void 0 : response.status} ${response == null ? void 0 : response.statusText} - ${JSON.stringify((response == null ? void 0 : response.data) || "\u672A\u77E5\u9519\u8BEF")}`);
|
|
9079
|
+
} else {
|
|
9080
|
+
logger.error(`[render][http] \u521B\u5EFA\u6E32\u67D3\u5668\u5931\u8D25: ${error}`);
|
|
9081
|
+
}
|
|
9082
|
+
return;
|
|
9083
|
+
}
|
|
9084
|
+
const index4 = registerRender("puppeteer", async (options) => {
|
|
9085
|
+
var _a;
|
|
9086
|
+
try {
|
|
9087
|
+
const result = await axios4.post(`${url}/puppeteer`, options, { headers });
|
|
9088
|
+
if (result.status !== 200) {
|
|
9089
|
+
throw new Error(`[render][http] \u6E32\u67D3\u5931\u8D25: ${result.status} ${result.statusText} - ${((_a = result.data) == null ? void 0 : _a.message) || "\u672A\u77E5\u9519\u8BEF"}`);
|
|
9090
|
+
}
|
|
9091
|
+
return result.data;
|
|
9092
|
+
} catch (error) {
|
|
9093
|
+
if (axios4.isAxiosError(error)) {
|
|
9094
|
+
if (!error.response) {
|
|
9095
|
+
unregisterRender(index4);
|
|
9096
|
+
throw new Error(`[render][http] \u7F51\u7EDC\u8FDE\u63A5\u5931\u8D25: ${error.message}`);
|
|
9097
|
+
}
|
|
9098
|
+
const { response } = error;
|
|
9099
|
+
throw new Error(`[render][http] \u6E32\u67D3\u5931\u8D25: ${response == null ? void 0 : response.status} ${response == null ? void 0 : response.statusText} - ${JSON.stringify((response == null ? void 0 : response.data) || "\u672A\u77E5\u9519\u8BEF")}`);
|
|
9100
|
+
}
|
|
9101
|
+
if (error instanceof Error) {
|
|
9102
|
+
throw error;
|
|
9103
|
+
}
|
|
9104
|
+
throw new Error(`[render][unknown] \u672A\u77E5\u9519\u8BEF: ${error}`);
|
|
9105
|
+
}
|
|
9106
|
+
});
|
|
9107
|
+
}));
|
|
9108
|
+
};
|
|
9109
|
+
}
|
|
9110
|
+
});
|
|
9111
|
+
|
|
8846
9112
|
// src/adapter/render/index.ts
|
|
8847
9113
|
var init_render2 = __esm({
|
|
8848
|
-
"src/adapter/render/index.ts"() {
|
|
9114
|
+
async "src/adapter/render/index.ts"() {
|
|
8849
9115
|
"use strict";
|
|
8850
9116
|
init_esm_shims();
|
|
8851
9117
|
init_cache2();
|
|
8852
9118
|
init_template();
|
|
8853
9119
|
init_types();
|
|
9120
|
+
await init_client();
|
|
9121
|
+
await init_server2();
|
|
9122
|
+
await init_http();
|
|
9123
|
+
createHttpRenderClient();
|
|
8854
9124
|
}
|
|
8855
9125
|
});
|
|
8856
9126
|
|
|
@@ -9170,7 +9440,7 @@ var button2 = (reg, fnc2, options = {}) => {
|
|
|
9170
9440
|
|
|
9171
9441
|
// src/core/karin/render.ts
|
|
9172
9442
|
init_esm_shims();
|
|
9173
|
-
init_render2();
|
|
9443
|
+
await init_render2();
|
|
9174
9444
|
var render3 = (options, multiPageOrId, id) => {
|
|
9175
9445
|
if (options === "opt") {
|
|
9176
9446
|
return callRender(multiPageOrId, id);
|
|
@@ -9625,26 +9895,7 @@ init_json();
|
|
|
9625
9895
|
init_path();
|
|
9626
9896
|
init_pkg();
|
|
9627
9897
|
init_require();
|
|
9628
|
-
|
|
9629
|
-
// src/utils/fs/static.ts
|
|
9630
|
-
init_esm_shims();
|
|
9631
|
-
init_cache();
|
|
9632
|
-
init_path();
|
|
9633
|
-
var isStatic = (filePath) => {
|
|
9634
|
-
try {
|
|
9635
|
-
for (const item of cache9.static) {
|
|
9636
|
-
if (isSubPath(item, filePath)) {
|
|
9637
|
-
return true;
|
|
9638
|
-
}
|
|
9639
|
-
}
|
|
9640
|
-
return false;
|
|
9641
|
-
} catch (error) {
|
|
9642
|
-
logger.error("isStatic", error);
|
|
9643
|
-
return false;
|
|
9644
|
-
}
|
|
9645
|
-
};
|
|
9646
|
-
|
|
9647
|
-
// src/utils/fs/fs.ts
|
|
9898
|
+
init_static();
|
|
9648
9899
|
init_yaml();
|
|
9649
9900
|
init_watch();
|
|
9650
9901
|
init_lock();
|
|
@@ -9772,7 +10023,7 @@ init_esm_shims();
|
|
|
9772
10023
|
init_exec();
|
|
9773
10024
|
init_require();
|
|
9774
10025
|
init_list();
|
|
9775
|
-
import
|
|
10026
|
+
import fs19 from "node:fs";
|
|
9776
10027
|
var getPkg = (isForcibly = false) => {
|
|
9777
10028
|
return requireFile("package.json", { force: isForcibly });
|
|
9778
10029
|
};
|
|
@@ -9902,8 +10153,8 @@ var checkGitPluginUpdate = async (filePath, time2 = 120) => {
|
|
|
9902
10153
|
var _a;
|
|
9903
10154
|
const logger3 = (global == null ? void 0 : global.logger) || console;
|
|
9904
10155
|
try {
|
|
9905
|
-
if (!
|
|
9906
|
-
if (!
|
|
10156
|
+
if (!fs19.existsSync(filePath)) return { status: "error", data: new Error("\u8DEF\u5F84\u4E0D\u5B58\u5728") };
|
|
10157
|
+
if (!fs19.existsSync(`${filePath}/.git`)) return { status: "error", data: new Error("\u8BE5\u8DEF\u5F84\u4E0D\u662F\u4E00\u4E2Agit\u4ED3\u5E93") };
|
|
9907
10158
|
const timer = setTimeout(() => {
|
|
9908
10159
|
return { status: "failed", data: "\u6267\u884C\u8D85\u65F6" };
|
|
9909
10160
|
}, time2 * 1e3);
|
|
@@ -9954,8 +10205,8 @@ var getTime = async (filePath) => {
|
|
|
9954
10205
|
var updateGitPlugin = async (filePath, cmd = "git pull", time2 = 120) => {
|
|
9955
10206
|
const logger3 = (global == null ? void 0 : global.logger) || console;
|
|
9956
10207
|
try {
|
|
9957
|
-
if (!
|
|
9958
|
-
if (!
|
|
10208
|
+
if (!fs19.existsSync(filePath)) return { status: "failed", data: "\u8DEF\u5F84\u4E0D\u5B58\u5728" };
|
|
10209
|
+
if (!fs19.existsSync(`${filePath}/.git`)) return { status: "failed", data: "\u8BE5\u8DEF\u5F84\u4E0D\u662F\u4E00\u4E2Agit\u4ED3\u5E93" };
|
|
9959
10210
|
const timer = setTimeout(() => {
|
|
9960
10211
|
return { status: "failed", data: "\u6267\u884C\u8D85\u65F6" };
|
|
9961
10212
|
}, time2 * 1e3);
|
|
@@ -10216,7 +10467,7 @@ init_esm_shims();
|
|
|
10216
10467
|
// src/adapter/onebot/core/convert.ts
|
|
10217
10468
|
init_esm_shims();
|
|
10218
10469
|
init_message2();
|
|
10219
|
-
import
|
|
10470
|
+
import fs20 from "node:fs";
|
|
10220
10471
|
var buildError = (selfId, action, request, error) => {
|
|
10221
10472
|
if (error) {
|
|
10222
10473
|
const err = JSON.stringify(error, null, 2).replace(/\\n/g, "\n");
|
|
@@ -10281,7 +10532,7 @@ var fileToBase64 = (file, url) => {
|
|
|
10281
10532
|
if (!url || !file.startsWith("file://")) return file;
|
|
10282
10533
|
const list4 = ["127.0.0.1", "localhost"];
|
|
10283
10534
|
const link = new URL(url);
|
|
10284
|
-
return list4.includes(link.hostname) ? file : `base64://${
|
|
10535
|
+
return list4.includes(link.hostname) ? file : `base64://${fs20.readFileSync(file.replace("file://", "")).toString("base64")}`;
|
|
10285
10536
|
};
|
|
10286
10537
|
var KarinConvertAdapter = (data, onebot) => {
|
|
10287
10538
|
var _a, _b, _c;
|
|
@@ -12078,7 +12329,7 @@ var WsAdapterOneBot11 = class extends AdapterOneBot {
|
|
|
12078
12329
|
|
|
12079
12330
|
// src/adapter/onebot/connect/http.ts
|
|
12080
12331
|
init_esm_shims();
|
|
12081
|
-
import
|
|
12332
|
+
import axios5 from "axios";
|
|
12082
12333
|
init_listeners();
|
|
12083
12334
|
init_bot();
|
|
12084
12335
|
var HttpAdapterOneBot11 = class extends AdapterOneBot {
|
|
@@ -12141,13 +12392,13 @@ var HttpAdapterOneBot11 = class extends AdapterOneBot {
|
|
|
12141
12392
|
logger.bot("debug", this.selfId, `\u53D1\u9001Api\u8BF7\u6C42 ${action}: ${request}`);
|
|
12142
12393
|
try {
|
|
12143
12394
|
const headers = this.#token ? { Authorization: `Bearer ${this.#token}` } : {};
|
|
12144
|
-
const { data } = await
|
|
12395
|
+
const { data } = await axios5.post(`${this.adapter.address}/${action}`, params, { headers, timeout: time2 * 1e3 });
|
|
12145
12396
|
if (data.status === "ok") {
|
|
12146
12397
|
return data.data;
|
|
12147
12398
|
}
|
|
12148
12399
|
throw buildError(this.selfId, action, request, data);
|
|
12149
12400
|
} catch (error) {
|
|
12150
|
-
if (
|
|
12401
|
+
if (axios5.isAxiosError(error) && error.code === "ECONNABORTED") {
|
|
12151
12402
|
throw buildError(this.selfId, action, request, "\u8BF7\u6C42\u8D85\u65F6");
|
|
12152
12403
|
}
|
|
12153
12404
|
buildError(this.selfId, action, request);
|
|
@@ -12158,7 +12409,7 @@ var HttpAdapterOneBot11 = class extends AdapterOneBot {
|
|
|
12158
12409
|
|
|
12159
12410
|
// src/adapter/onebot/connect/client.ts
|
|
12160
12411
|
init_esm_shims();
|
|
12161
|
-
import
|
|
12412
|
+
import WebSocket2 from "ws";
|
|
12162
12413
|
init_bot();
|
|
12163
12414
|
var AdapterClientOneBot11 = class _AdapterClientOneBot11 extends WsAdapterOneBot11 {
|
|
12164
12415
|
token;
|
|
@@ -12179,7 +12430,7 @@ var AdapterClientOneBot11 = class _AdapterClientOneBot11 extends WsAdapterOneBot
|
|
|
12179
12430
|
}
|
|
12180
12431
|
static async init(url, token) {
|
|
12181
12432
|
const authorization = token ? `Bearer ${token}` : void 0;
|
|
12182
|
-
const socket = authorization ? new
|
|
12433
|
+
const socket = authorization ? new WebSocket2(url, { headers: { authorization } }) : new WebSocket2(url);
|
|
12183
12434
|
socket.on("open", async () => {
|
|
12184
12435
|
await new _AdapterClientOneBot11(socket, token).init("\u83B7\u53D6\u4E2D...", url, "webSocketClient");
|
|
12185
12436
|
});
|
|
@@ -12394,7 +12645,6 @@ var Plugin = class {
|
|
|
12394
12645
|
this.desc = options.desc || "\u65E0\u63CF\u8FF0";
|
|
12395
12646
|
this.event = options.event || "message";
|
|
12396
12647
|
this.priority = options.priority || 1e4;
|
|
12397
|
-
this.reply = this.e.reply.bind(this.e);
|
|
12398
12648
|
}
|
|
12399
12649
|
/**
|
|
12400
12650
|
* 快速回复合并转发
|
package/dist/module/express.cjs
CHANGED
|
@@ -10,86 +10,6 @@ var express__default = /*#__PURE__*/_interopDefault(express);
|
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
Object.defineProperty(exports, "Application", {
|
|
14
|
-
enumerable: true,
|
|
15
|
-
get: function () { return express.Application; }
|
|
16
|
-
});
|
|
17
|
-
Object.defineProperty(exports, "CookieOptions", {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
get: function () { return express.CookieOptions; }
|
|
20
|
-
});
|
|
21
|
-
Object.defineProperty(exports, "Errback", {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
get: function () { return express.Errback; }
|
|
24
|
-
});
|
|
25
|
-
Object.defineProperty(exports, "ErrorRequestHandler", {
|
|
26
|
-
enumerable: true,
|
|
27
|
-
get: function () { return express.ErrorRequestHandler; }
|
|
28
|
-
});
|
|
29
|
-
Object.defineProperty(exports, "Express", {
|
|
30
|
-
enumerable: true,
|
|
31
|
-
get: function () { return express.Express; }
|
|
32
|
-
});
|
|
33
|
-
Object.defineProperty(exports, "Handler", {
|
|
34
|
-
enumerable: true,
|
|
35
|
-
get: function () { return express.Handler; }
|
|
36
|
-
});
|
|
37
|
-
Object.defineProperty(exports, "IRoute", {
|
|
38
|
-
enumerable: true,
|
|
39
|
-
get: function () { return express.IRoute; }
|
|
40
|
-
});
|
|
41
|
-
Object.defineProperty(exports, "IRouter", {
|
|
42
|
-
enumerable: true,
|
|
43
|
-
get: function () { return express.IRouter; }
|
|
44
|
-
});
|
|
45
|
-
Object.defineProperty(exports, "IRouterHandler", {
|
|
46
|
-
enumerable: true,
|
|
47
|
-
get: function () { return express.IRouterHandler; }
|
|
48
|
-
});
|
|
49
|
-
Object.defineProperty(exports, "IRouterMatcher", {
|
|
50
|
-
enumerable: true,
|
|
51
|
-
get: function () { return express.IRouterMatcher; }
|
|
52
|
-
});
|
|
53
|
-
Object.defineProperty(exports, "Locals", {
|
|
54
|
-
enumerable: true,
|
|
55
|
-
get: function () { return express.Locals; }
|
|
56
|
-
});
|
|
57
|
-
Object.defineProperty(exports, "MediaType", {
|
|
58
|
-
enumerable: true,
|
|
59
|
-
get: function () { return express.MediaType; }
|
|
60
|
-
});
|
|
61
|
-
Object.defineProperty(exports, "NextFunction", {
|
|
62
|
-
enumerable: true,
|
|
63
|
-
get: function () { return express.NextFunction; }
|
|
64
|
-
});
|
|
65
|
-
Object.defineProperty(exports, "Request", {
|
|
66
|
-
enumerable: true,
|
|
67
|
-
get: function () { return express.Request; }
|
|
68
|
-
});
|
|
69
|
-
Object.defineProperty(exports, "RequestHandler", {
|
|
70
|
-
enumerable: true,
|
|
71
|
-
get: function () { return express.RequestHandler; }
|
|
72
|
-
});
|
|
73
|
-
Object.defineProperty(exports, "RequestParamHandler", {
|
|
74
|
-
enumerable: true,
|
|
75
|
-
get: function () { return express.RequestParamHandler; }
|
|
76
|
-
});
|
|
77
|
-
Object.defineProperty(exports, "Response", {
|
|
78
|
-
enumerable: true,
|
|
79
|
-
get: function () { return express.Response; }
|
|
80
|
-
});
|
|
81
|
-
Object.defineProperty(exports, "Router", {
|
|
82
|
-
enumerable: true,
|
|
83
|
-
get: function () { return express.Router; }
|
|
84
|
-
});
|
|
85
|
-
Object.defineProperty(exports, "RouterOptions", {
|
|
86
|
-
enumerable: true,
|
|
87
|
-
get: function () { return express.RouterOptions; }
|
|
88
|
-
});
|
|
89
|
-
Object.defineProperty(exports, "Send", {
|
|
90
|
-
enumerable: true,
|
|
91
|
-
get: function () { return express.Send; }
|
|
92
|
-
});
|
|
93
13
|
Object.defineProperty(exports, "default", {
|
|
94
14
|
enumerable: true,
|
|
95
15
|
get: function () { return express__default.default; }
|
package/dist/module/express.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { default, json, query, raw, text } from 'express';
|