node-karin 1.15.4 → 1.16.1
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/CHANGELOG.md +38 -0
- package/dist/adapter-BqlH3u3X.mjs +218 -0
- package/dist/app-DdMQbBEY.mjs +4109 -0
- package/dist/cache-CPcPeo6N.mjs +163 -0
- package/dist/chunk-NzVPYdc1.mjs +21 -0
- package/dist/cli/index.cjs +10900 -1
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.mjs +10770 -10641
- package/dist/file-ZGuqNDd-.mjs +15987 -0
- package/dist/file-dGy9of8-.mjs +268 -0
- package/dist/fsSync-Cf5MWILk.mjs +65 -0
- package/dist/index.d.ts +12236 -12729
- package/dist/index.mjs +2054 -25230
- package/dist/internal-DupfycKE.mjs +597 -0
- package/dist/kv-DZp4UIxg.mjs +192 -0
- package/dist/module/art-template.d.ts +2 -13
- package/dist/module/art-template.mjs +3 -1
- package/dist/module/axios.d.ts +3 -2
- package/dist/module/axios.mjs +5 -2
- package/dist/module/chalk.d.ts +3 -2
- package/dist/module/chalk.mjs +5 -2
- package/dist/module/chokidar.d.ts +3 -2
- package/dist/module/chokidar.mjs +5 -2
- package/dist/module/express.d.ts +2 -1
- package/dist/module/express.mjs +3 -1
- package/dist/module/lodash.d.ts +2 -1
- package/dist/module/lodash.mjs +3 -1
- package/dist/module/log4js.d.ts +3 -2
- package/dist/module/log4js.mjs +5 -2
- package/dist/module/moment.d.ts +2 -1
- package/dist/module/moment.mjs +3 -1
- package/dist/module/node-schedule.d.ts +3 -2
- package/dist/module/node-schedule.mjs +5 -2
- package/dist/module/redis.d.ts +3 -2
- package/dist/module/redis.mjs +5 -2
- package/dist/module/sqlite3.d.ts +3 -2
- package/dist/module/sqlite3.mjs +5 -2
- package/dist/module/ws.d.ts +3 -2
- package/dist/module/ws.mjs +5 -2
- package/dist/module/yaml.d.ts +3 -2
- package/dist/module/yaml.mjs +5 -2
- package/dist/queue-CnKedaZA.mjs +70 -0
- package/dist/redis-aLJ7wbJH.mjs +1556 -0
- package/dist/render-DPqueDZr.mjs +170 -0
- package/dist/root.d.ts +46 -46
- package/dist/root.mjs +136 -93
- package/dist/router-zPSN9-tY.mjs +124 -0
- package/dist/server-DT64D-m-.mjs +38 -0
- package/dist/snapka-BTlnZOyI.mjs +450 -0
- package/dist/sqlite-Dcj9jlW9.mjs +307 -0
- package/dist/start/app.d.ts +1 -1
- package/dist/start/app.mjs +14 -7
- package/dist/start/index.d.ts +1 -1
- package/dist/start/index.mjs +325 -656
- package/dist/template-Djk6y0uC.mjs +133 -0
- package/dist/terminalManager-Lxa8Sm06.mjs +783 -0
- package/dist/uptime-C121X_rq.mjs +210 -0
- package/dist/web/{CompressaPRO-GX.woff2.br → CompressaPRO-GX.woff2} +0 -0
- package/dist/web/assets/css/style-CBB8wM_W.css +14880 -0
- package/dist/web/assets/js/entry-Blf4Trpx.js +258540 -0
- package/dist/web/{googleapis.woff2.br → googleapis.woff2} +0 -0
- package/dist/web/index.html +2 -15
- package/dist/web/karin.png +0 -0
- package/dist/web/sha256.min.js +9 -0
- package/dist/ws-BLDoC2gV.mjs +80 -0
- package/dist/ws-CcoWd3Ar.mjs +106 -0
- package/package.json +7 -7
- package/dist/global.d.d.ts +0 -68
- package/dist/types-hAhbXJDZ.d.ts +0 -109
- package/dist/web/assets/css/components-ep7vm38G.css +0 -1
- package/dist/web/assets/css/index-Dadvd9mn.css.br +0 -0
- package/dist/web/assets/css/vendor-editor-CFbL2ovg.css.br +0 -0
- package/dist/web/assets/css/vendor-others-ZgkIHsf0.css +0 -1
- package/dist/web/assets/js/components-CU2xw4lY.js.br +0 -0
- package/dist/web/assets/js/entry-Dvb7eYLE.js.br +0 -0
- package/dist/web/assets/js/hooks-CRfhs4ON.js.br +0 -0
- package/dist/web/assets/js/page-404.tsx-DYMd_RI_.js +0 -1
- package/dist/web/assets/js/page-dashboard-CG60V_Z-.js.br +0 -0
- package/dist/web/assets/js/page-loading.tsx-wY8a9me3.js.br +0 -0
- package/dist/web/assets/js/page-login.tsx-B54ZOEZB.js.br +0 -0
- package/dist/web/assets/js/utils-C9nWTSuo.js +0 -2
- package/dist/web/assets/js/vendor-editor-BmqYP7lh.js.br +0 -0
- package/dist/web/assets/js/vendor-heroui-ClBCy2zk.js.br +0 -0
- package/dist/web/assets/js/vendor-others-6GiMrjd4.js.br +0 -0
- package/dist/web/assets/js/vendor-react-Dc9jdQiK.js.br +0 -0
- package/dist/web/assets/js/vendor-ui-utils-D0xkboLL.js.br +0 -0
- package/dist/web/assets/js/vendor-visual-saF8KLH_.js.br +0 -0
- package/dist/web/karin.png.br +0 -0
- package/dist/web/sha256.min.js.br +0 -0
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
//#region src/adapter/render/admin/cache.ts
|
|
2
|
+
let index = 0;
|
|
3
|
+
const cache = [];
|
|
4
|
+
/**
|
|
5
|
+
* @description 注册渲染器
|
|
6
|
+
* @param id 渲染器ID
|
|
7
|
+
* @param render 渲染函数
|
|
8
|
+
* @returns 渲染器索引
|
|
9
|
+
*/
|
|
10
|
+
const registerRender = (id, render) => {
|
|
11
|
+
const i = ++index;
|
|
12
|
+
cache.push({
|
|
13
|
+
index: i,
|
|
14
|
+
id,
|
|
15
|
+
render
|
|
16
|
+
});
|
|
17
|
+
logger.mark(`[render:${index}] ${logger.green("注册成功")}: ${id}`);
|
|
18
|
+
return i;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* @description 卸载渲染器
|
|
22
|
+
* @param index 渲染器索引
|
|
23
|
+
* @returns 是否卸载成功
|
|
24
|
+
*/
|
|
25
|
+
const unregisterRender = (index) => {
|
|
26
|
+
const app = cache.find((app) => app.index === index);
|
|
27
|
+
if (!app) {
|
|
28
|
+
logger.error(`[render] 卸载失败: 不存在索引 ${index}`);
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
cache.splice(cache.findIndex((app) => app.index === index), 1);
|
|
32
|
+
logger.mark(`[render] ${logger.yellow("卸载成功")}: ${app.id}`);
|
|
33
|
+
return true;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* @description 返回渲染器实例 未键入随机
|
|
37
|
+
* @param id 渲染器ID
|
|
38
|
+
* @returns 渲染器实例
|
|
39
|
+
*/
|
|
40
|
+
const getRender = (id) => {
|
|
41
|
+
if (cache.length === 0) throw new Error("渲染器列表为空: 请前往插件市场安装【@karinjs/plugin-puppeteer】插件");
|
|
42
|
+
if (!id) return cache[Math.floor(Math.random() * cache.length)];
|
|
43
|
+
if (typeof id === "number") {
|
|
44
|
+
/** 筛选出index一致的渲染器 */
|
|
45
|
+
const app = cache.find((app) => app.index === id);
|
|
46
|
+
if (!app) throw new Error(`未找到渲染器:${id}`);
|
|
47
|
+
return app;
|
|
48
|
+
}
|
|
49
|
+
/** 筛选出id一致的渲染器 */
|
|
50
|
+
const app = cache.find((app) => app.id === id);
|
|
51
|
+
if (!app) throw new Error(`未找到渲染器:${id}`);
|
|
52
|
+
return app;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* @description 调用标准渲染器
|
|
56
|
+
* @param options 渲染器参数
|
|
57
|
+
* @param id 指定渲染器ID
|
|
58
|
+
*/
|
|
59
|
+
const callRender = async (options, id) => {
|
|
60
|
+
return await getRender(id).render(Object.assign(options, { encoding: "base64" }));
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* @description 获取全部渲染器数量
|
|
64
|
+
* @returns 渲染器数量
|
|
65
|
+
*/
|
|
66
|
+
const getRenderCount = () => cache.length;
|
|
67
|
+
/**
|
|
68
|
+
* @description 获取全部渲染器列表
|
|
69
|
+
* @returns 渲染器列表
|
|
70
|
+
*/
|
|
71
|
+
const getRenderList = () => {
|
|
72
|
+
return cache.map((app) => app);
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* @description 快速渲染
|
|
76
|
+
* @param data html路径、http地址
|
|
77
|
+
* @returns 返回图片base64或数组
|
|
78
|
+
*/
|
|
79
|
+
const renderHtml = (data) => {
|
|
80
|
+
return callRender({
|
|
81
|
+
file: data,
|
|
82
|
+
name: "render",
|
|
83
|
+
encoding: "base64",
|
|
84
|
+
pageGotoParams: { waitUntil: "networkidle2" }
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* @description 快速分片渲染
|
|
89
|
+
* @param file html路径、http地址
|
|
90
|
+
* @param multiPage 分片高度 未传递为自动计算
|
|
91
|
+
*/
|
|
92
|
+
const renderMultiHtml = (file, multiPage) => {
|
|
93
|
+
if (!multiPage && multiPage !== 0) multiPage = true;
|
|
94
|
+
return callRender({
|
|
95
|
+
file,
|
|
96
|
+
name: "render",
|
|
97
|
+
encoding: "base64",
|
|
98
|
+
multiPage,
|
|
99
|
+
pageGotoParams: { waitUntil: "networkidle2" }
|
|
100
|
+
});
|
|
101
|
+
};
|
|
102
|
+
var RenderCache = class {
|
|
103
|
+
/**
|
|
104
|
+
* 注册渲染器
|
|
105
|
+
* @param data 渲染器数据
|
|
106
|
+
* @param data.id 渲染器ID
|
|
107
|
+
* @param data.type 渲染器类型
|
|
108
|
+
* @param ata.render 渲染器标准方法
|
|
109
|
+
* @returns 渲染器索引
|
|
110
|
+
*/
|
|
111
|
+
app(data) {
|
|
112
|
+
return registerRender(data.id, data.render);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* 卸载渲染器
|
|
116
|
+
* @param index 渲染器索引
|
|
117
|
+
* @returns 是否卸载成功
|
|
118
|
+
*/
|
|
119
|
+
unapp(index) {
|
|
120
|
+
return unregisterRender(index);
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* 返回渲染器实例 未键入id返回第一个
|
|
124
|
+
* @param id 渲染器ID
|
|
125
|
+
* @returns 渲染器实例
|
|
126
|
+
*/
|
|
127
|
+
App(id = "") {
|
|
128
|
+
return getRender(id);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* 调用标准渲染器
|
|
132
|
+
*/
|
|
133
|
+
async render(options, id) {
|
|
134
|
+
return callRender(options, id);
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* 快速渲染
|
|
138
|
+
* @param data html路径、http地址
|
|
139
|
+
* @returns 返回图片base64或数组
|
|
140
|
+
*/
|
|
141
|
+
async renderHtml(data) {
|
|
142
|
+
return renderHtml(data);
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* 快速分片渲染
|
|
146
|
+
* @param data html路径、http地址
|
|
147
|
+
* @param multiPage 分片高度 自动计算传true
|
|
148
|
+
*/
|
|
149
|
+
async renderMultiHtml(data, multiPage) {
|
|
150
|
+
return renderMultiHtml(data, multiPage);
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
/**
|
|
154
|
+
* 渲染器管理器
|
|
155
|
+
*/
|
|
156
|
+
const render = new RenderCache();
|
|
157
|
+
/**
|
|
158
|
+
* @description 即将废弃,请使用 `render`
|
|
159
|
+
*/
|
|
160
|
+
const Renderer = render;
|
|
161
|
+
|
|
162
|
+
//#endregion
|
|
163
|
+
export { getRenderList as a, renderHtml as c, getRenderCount as i, renderMultiHtml as l, callRender as n, registerRender as o, getRender as r, render as s, Renderer as t, unregisterRender as u };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { createRequire } from "node:module";
|
|
2
|
+
|
|
3
|
+
//#region \0rolldown/runtime.js
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __exportAll = (all, no_symbols) => {
|
|
6
|
+
let target = {};
|
|
7
|
+
for (var name in all) {
|
|
8
|
+
__defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
if (!no_symbols) {
|
|
14
|
+
__defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
15
|
+
}
|
|
16
|
+
return target;
|
|
17
|
+
};
|
|
18
|
+
var __require = /* @__PURE__ */ createRequire(import.meta.url);
|
|
19
|
+
|
|
20
|
+
//#endregion
|
|
21
|
+
export { __require as n, __exportAll as t };
|