vome-core 0.0.17 → 0.0.18
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/admin/api/client.js +2 -0
- package/dist/admin/config/plugin-dev.js +1 -1
- package/dist/admin/crud/config.js +1 -1
- package/dist/admin/crud/confirm.js +1 -1
- package/dist/admin/crud/dict.js +1 -1
- package/dist/admin/crud/index.js +1 -1
- package/dist/admin/crud/key.js +1 -1
- package/dist/admin/crud/mitt.js +1 -1
- package/dist/admin/crud/plugins.js +1 -1
- package/dist/admin/crud/span.js +1 -1
- package/dist/admin/crud/style.js +1 -1
- package/dist/admin/crud/validate.js +1 -1
- package/dist/admin/directives/perm.js +1 -1
- package/dist/admin/hooks/useUpload.js +1 -1
- package/dist/admin/hooks/useVome.d.ts +3 -1
- package/dist/admin/lib/browser.js +1 -1
- package/dist/admin/lib/cn.js +1 -1
- package/dist/admin/lib/dialog-float.js +1 -1
- package/dist/admin/lib/eps.d.ts +2 -11
- package/dist/admin/lib/eps.js +7 -33
- package/dist/admin/lib/menu.js +1 -1
- package/dist/admin/lib/tree.js +1 -1
- package/dist/admin/lib/upload.js +1 -1
- package/dist/admin/service/base.d.ts +2 -27
- package/dist/admin/service/base.js +1 -76
- package/dist/admin/service/index.d.ts +10 -16
- package/dist/admin/service/index.js +31 -259
- package/dist/client/base.d.ts +28 -0
- package/dist/client/base.js +77 -0
- package/dist/client/configure.d.ts +9 -0
- package/dist/client/configure.js +10 -0
- package/dist/client/eps.d.ts +12 -0
- package/dist/client/eps.js +42 -0
- package/dist/client/index.d.ts +4 -0
- package/dist/client/index.js +22 -0
- package/dist/client/service.d.ts +31 -0
- package/dist/client/service.js +299 -0
- package/dist/client/vite-plugin-eps.d.ts +42 -0
- package/dist/client/vite-plugin-eps.js +266 -0
- package/dist/index.js +1 -1
- package/dist/server/index.js +1 -1
- package/dist/shared/index.js +1 -1
- package/dist/shared/tree.js +1 -1
- package/package.json +18 -4
- package/typings/admin/comm/eps.d.ts +48 -0
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
function toCamel(str) {
|
|
4
|
+
return str.replace(/([^-])(?:-+([^-]))/g, (_m, a, b) => a + String(b).toUpperCase());
|
|
5
|
+
}
|
|
6
|
+
function toPascal(str) {
|
|
7
|
+
const c = toCamel(str);
|
|
8
|
+
return c ? c[0].toUpperCase() + c.slice(1) : "Entity";
|
|
9
|
+
}
|
|
10
|
+
function methodName(p) {
|
|
11
|
+
return p.replace(/^\//, "").replace(/[:,\s/-]/g, "");
|
|
12
|
+
}
|
|
13
|
+
function tsType(col) {
|
|
14
|
+
const t = String(col.type || "string").toLowerCase();
|
|
15
|
+
if (["int", "integer", "bigint", "number", "float", "double", "decimal"].some((x) => t.includes(x)))
|
|
16
|
+
return "number";
|
|
17
|
+
if (["bool", "boolean"].some((x) => t.includes(x)))
|
|
18
|
+
return "boolean";
|
|
19
|
+
if (t.includes("json") || t.includes("array"))
|
|
20
|
+
return "any";
|
|
21
|
+
return "string";
|
|
22
|
+
}
|
|
23
|
+
export function buildEpsDts(map, side) {
|
|
24
|
+
const list = Object.values(map).flat().filter((e) => e.prefix);
|
|
25
|
+
const entityBlocks = [];
|
|
26
|
+
const serviceBlocks = [];
|
|
27
|
+
const tree = {};
|
|
28
|
+
const sideRe = new RegExp(`^${side}/?`);
|
|
29
|
+
for (const e of list) {
|
|
30
|
+
const prefix = e.prefix.replace(/^\//, "");
|
|
31
|
+
const parts = prefix.replace(sideRe, "").split("/").filter(Boolean);
|
|
32
|
+
const leaf = parts[parts.length - 1] || "index";
|
|
33
|
+
const entityName = e.name && e.name.endsWith("Entity") ? e.name : `${toPascal(parts.join("_") || leaf)}Entity`;
|
|
34
|
+
const serviceName = toPascal(parts.join("_") || leaf);
|
|
35
|
+
const cols = [...e.columns || [], ...e.pageColumns || []];
|
|
36
|
+
const seen = new Set;
|
|
37
|
+
const fields = cols.filter((c) => c.propertyName && !seen.has(c.propertyName) && seen.add(c.propertyName)).map((c) => {
|
|
38
|
+
const comment = c.comment ? ` /** ${c.comment} */
|
|
39
|
+
` : "";
|
|
40
|
+
return `${comment} ${c.propertyName}?: ${tsType(c)};`;
|
|
41
|
+
}).join(`
|
|
42
|
+
|
|
43
|
+
`);
|
|
44
|
+
entityBlocks.push(` interface ${entityName} {
|
|
45
|
+
${fields || "\t\tid?: number;"}
|
|
46
|
+
|
|
47
|
+
[key: string]: any;
|
|
48
|
+
}`);
|
|
49
|
+
const apis = e.api || [];
|
|
50
|
+
const methods = new Map;
|
|
51
|
+
for (const a of apis) {
|
|
52
|
+
const n = methodName(a.path || "");
|
|
53
|
+
if (!n || /[-:]/.test(n))
|
|
54
|
+
continue;
|
|
55
|
+
const sum = a.summary ? ` /** ${a.summary} */
|
|
56
|
+
` : "";
|
|
57
|
+
if (n === "page") {
|
|
58
|
+
methods.set(n, `${sum} page(data?: any): Promise<{ list: ${entityName}[]; pagination: { page: number; size: number; total: number } }>;`);
|
|
59
|
+
} else if (n === "list") {
|
|
60
|
+
methods.set(n, `${sum} list(data?: any): Promise<${entityName}[]>;`);
|
|
61
|
+
} else if (n === "info") {
|
|
62
|
+
methods.set(n, `${sum} info(data?: { id: number | string }): Promise<${entityName}>;`);
|
|
63
|
+
} else {
|
|
64
|
+
methods.set(n, `${sum} ${n}(data?: any): Promise<any>;`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
for (const n of ["page", "list", "info", "add", "update", "delete", "restore"]) {
|
|
68
|
+
if (methods.has(n))
|
|
69
|
+
continue;
|
|
70
|
+
if (n === "page")
|
|
71
|
+
methods.set(n, ` page(data?: any): Promise<{ list: ${entityName}[]; pagination: { page: number; size: number; total: number } }>;`);
|
|
72
|
+
else if (n === "list")
|
|
73
|
+
methods.set(n, ` list(data?: any): Promise<${entityName}[]>;`);
|
|
74
|
+
else if (n === "info")
|
|
75
|
+
methods.set(n, ` info(data?: { id: number | string }): Promise<${entityName}>;`);
|
|
76
|
+
else
|
|
77
|
+
methods.set(n, ` ${n}(data?: any): Promise<any>;`);
|
|
78
|
+
}
|
|
79
|
+
const permKeys = [...methods.keys()];
|
|
80
|
+
serviceBlocks.push(` interface ${serviceName} {
|
|
81
|
+
${[...methods.values()].join(`
|
|
82
|
+
|
|
83
|
+
`)}
|
|
84
|
+
|
|
85
|
+
namespace: string;
|
|
86
|
+
permission: { ${permKeys.map((k) => `${k}: string`).join("; ")} };
|
|
87
|
+
_permission: { ${permKeys.map((k) => `${k}: boolean`).join("; ")} };
|
|
88
|
+
request: Eps.Request;
|
|
89
|
+
}`);
|
|
90
|
+
let node = tree;
|
|
91
|
+
for (let i = 0;i < parts.length; i++) {
|
|
92
|
+
const key = toCamel(parts[i]);
|
|
93
|
+
if (i === parts.length - 1) {
|
|
94
|
+
node[key] = serviceName;
|
|
95
|
+
} else {
|
|
96
|
+
if (!node[key] || typeof node[key] === "string")
|
|
97
|
+
node[key] = {};
|
|
98
|
+
node = node[key];
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
function renderTree(n, indent = 2) {
|
|
103
|
+
const pad = "\t".repeat(indent);
|
|
104
|
+
return Object.entries(n).map(([k, v]) => {
|
|
105
|
+
if (typeof v === "string")
|
|
106
|
+
return `${pad}${k}: ${v};`;
|
|
107
|
+
return `${pad}${k}: {
|
|
108
|
+
${renderTree(v, indent + 1)}
|
|
109
|
+
${pad}};`;
|
|
110
|
+
}).join(`
|
|
111
|
+
`);
|
|
112
|
+
}
|
|
113
|
+
return `declare namespace Eps {
|
|
114
|
+
type RequestOptions = {
|
|
115
|
+
url?: string;
|
|
116
|
+
method?: string;
|
|
117
|
+
data?: any;
|
|
118
|
+
params?: any;
|
|
119
|
+
[key: string]: any;
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
type Request = (options?: RequestOptions) => Promise<any>;
|
|
123
|
+
|
|
124
|
+
${entityBlocks.join(`
|
|
125
|
+
|
|
126
|
+
`)}
|
|
127
|
+
|
|
128
|
+
${serviceBlocks.join(`
|
|
129
|
+
|
|
130
|
+
`)}
|
|
131
|
+
|
|
132
|
+
type Service = {
|
|
133
|
+
request: Request;
|
|
134
|
+
${renderTree(tree)}
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
`;
|
|
138
|
+
}
|
|
139
|
+
async function fetchEps(apiUrl) {
|
|
140
|
+
try {
|
|
141
|
+
const res = await fetch(apiUrl, { signal: AbortSignal.timeout(5000) });
|
|
142
|
+
const json = await res.json();
|
|
143
|
+
if (json?.code === 1000 && json.data && Object.keys(json.data).length) {
|
|
144
|
+
return json.data;
|
|
145
|
+
}
|
|
146
|
+
} catch {}
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
const SKIP_HOT = ["eps.json", "eps.d.ts", "node_modules", "/dist/", "/build/"];
|
|
150
|
+
export function createEpsVitePlugin(options = {}) {
|
|
151
|
+
const sideMode = options.side ?? "app";
|
|
152
|
+
const dtsSide = options.dtsSide ?? (sideMode === "both" ? "admin" : sideMode);
|
|
153
|
+
const apiBase = (options.apiBase || "http://127.0.0.1:3001").replace(/\/$/, "");
|
|
154
|
+
let root = "";
|
|
155
|
+
let bootOk = false;
|
|
156
|
+
let bootTried = false;
|
|
157
|
+
let timer = null;
|
|
158
|
+
let running = null;
|
|
159
|
+
async function generate(reason = "start") {
|
|
160
|
+
if (!root)
|
|
161
|
+
return { changed: false };
|
|
162
|
+
if (bootTried && reason === "start")
|
|
163
|
+
return { changed: false };
|
|
164
|
+
const distDir = path.resolve(root, options.dist || "build");
|
|
165
|
+
const dtsPath = path.resolve(root, options.dts || "typings/eps.d.ts");
|
|
166
|
+
const jsonPath = path.join(distDir, "eps.json");
|
|
167
|
+
const needAdmin = sideMode === "admin" || sideMode === "both";
|
|
168
|
+
const needApp = sideMode === "app" || sideMode === "both";
|
|
169
|
+
const [adminMap, appMap] = await Promise.all([
|
|
170
|
+
needAdmin ? fetchEps(`${apiBase}/admin/base/open/eps`) : Promise.resolve(null),
|
|
171
|
+
needApp ? fetchEps(`${apiBase}/app/base/open/eps`) : Promise.resolve(null)
|
|
172
|
+
]);
|
|
173
|
+
let bundle = null;
|
|
174
|
+
if (adminMap || appMap) {
|
|
175
|
+
bundle = { admin: adminMap || {}, app: appMap || {} };
|
|
176
|
+
} else if (reason !== "hot") {
|
|
177
|
+
try {
|
|
178
|
+
const raw = JSON.parse(fs.readFileSync(jsonPath, "utf8"));
|
|
179
|
+
if (raw.admin || raw.app) {
|
|
180
|
+
bundle = { admin: raw.admin || {}, app: raw.app || {} };
|
|
181
|
+
} else {
|
|
182
|
+
bundle = {
|
|
183
|
+
admin: dtsSide === "admin" ? raw : {},
|
|
184
|
+
app: dtsSide === "app" ? raw : {}
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
} catch {
|
|
188
|
+
bundle = null;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
const mapForDts = dtsSide === "admin" ? bundle?.admin : bundle?.app;
|
|
192
|
+
if (!bundle || !mapForDts || !Object.keys(mapForDts).length) {
|
|
193
|
+
if (reason === "start") {
|
|
194
|
+
console.warn("[vome-eps] skip generate (no data), will retry once");
|
|
195
|
+
} else if (reason === "retry") {
|
|
196
|
+
console.warn("[vome-eps] skip generate (no data)");
|
|
197
|
+
}
|
|
198
|
+
if (reason === "start" || reason === "retry")
|
|
199
|
+
bootTried = true;
|
|
200
|
+
return { changed: false };
|
|
201
|
+
}
|
|
202
|
+
const dts = buildEpsDts(mapForDts, dtsSide);
|
|
203
|
+
const json = JSON.stringify(bundle, null, 2);
|
|
204
|
+
fs.mkdirSync(distDir, { recursive: true });
|
|
205
|
+
fs.mkdirSync(path.dirname(dtsPath), { recursive: true });
|
|
206
|
+
let changed = true;
|
|
207
|
+
try {
|
|
208
|
+
changed = fs.readFileSync(dtsPath, "utf8") !== dts || fs.readFileSync(jsonPath, "utf8") !== json;
|
|
209
|
+
} catch {
|
|
210
|
+
changed = true;
|
|
211
|
+
}
|
|
212
|
+
if (changed) {
|
|
213
|
+
fs.writeFileSync(jsonPath, json);
|
|
214
|
+
fs.writeFileSync(dtsPath, dts);
|
|
215
|
+
console.log(`[vome-eps] updated ${options.dts || "typings/eps.d.ts"} (${dtsSide})`);
|
|
216
|
+
}
|
|
217
|
+
bootOk = true;
|
|
218
|
+
bootTried = true;
|
|
219
|
+
return { changed };
|
|
220
|
+
}
|
|
221
|
+
function scheduleHot(send) {
|
|
222
|
+
if (timer)
|
|
223
|
+
clearTimeout(timer);
|
|
224
|
+
timer = setTimeout(() => {
|
|
225
|
+
timer = null;
|
|
226
|
+
const run = running ??= generate("hot").finally(() => {
|
|
227
|
+
running = null;
|
|
228
|
+
});
|
|
229
|
+
run.then(({ changed }) => {
|
|
230
|
+
if (!changed)
|
|
231
|
+
return;
|
|
232
|
+
send({ type: "custom", event: "eps-update", data: { changed: true } });
|
|
233
|
+
});
|
|
234
|
+
}, 400);
|
|
235
|
+
}
|
|
236
|
+
return {
|
|
237
|
+
name: "vome-eps",
|
|
238
|
+
configResolved(cfg) {
|
|
239
|
+
root = cfg.root;
|
|
240
|
+
},
|
|
241
|
+
async buildStart() {
|
|
242
|
+
await generate("start");
|
|
243
|
+
},
|
|
244
|
+
async configureServer(server) {
|
|
245
|
+
if (!bootOk) {
|
|
246
|
+
setTimeout(() => void generate("retry"), 3000);
|
|
247
|
+
}
|
|
248
|
+
server.middlewares.use((req, _res, next) => {
|
|
249
|
+
if (req.url === "/@vite/client") {
|
|
250
|
+
scheduleHot((payload) => {
|
|
251
|
+
(server.hot || server.ws).send(payload);
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
next();
|
|
255
|
+
});
|
|
256
|
+
},
|
|
257
|
+
handleHotUpdate({ file, server }) {
|
|
258
|
+
const f = file.replace(/\\/g, "/");
|
|
259
|
+
if (SKIP_HOT.some((x) => f.includes(x)))
|
|
260
|
+
return;
|
|
261
|
+
scheduleHot((payload) => {
|
|
262
|
+
(server.hot || server.ws).send(payload);
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
};
|
|
266
|
+
}
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x844adb=_0x3d5a;function _0x48fd(){const _0x409a3d=['C29YDa','mJqXnJe3nJbvDMj5D0m','xJaUms4Xma','C3jJl3nOyxjLza','CMvWBgfJzq','lI9KAxn0l3nLCNzLCI9PBMrLEc5QCW','zw50CMLLCW','DMfSDwvZ','lI9KAxn0l2fKBwLUlYOUANm','yNvUihnJCMLWDhmVB2jMDxnJyxrLlNrZ','yxnJ','xJeZlJeUmW','zgLZDa','pJ0Xmc4WlJa','pJ0ZlJaUma','oxD3tvHTEq','odq3nti4ogLHyMj1tG','lI9KAxn0l2fKBwLUl3n0EwXLCY9IyxnLlMnZCW','lI9KAxn0l2LUzgv4lMqUDhm','lI9KAxn0l2fKBwLUl2LUzgv4lMPZ','B3jKzxjoDw0','w29IAMvJDcbpyMPLy3rD','pJ0WlJuUma','ovLSz1ruEG','DMvYC2LVBG','CgfYzw50swq','nZaZmJC2ExLtrNnL','xJuUnc43','lI9KAxn0l2fKBwLUl2nYDwqVAw5KzxGUzc50CW','AgfZ','ndmWnduXnfH2vffcua','y2HPBgrYzw4','yNvUihnJCMLWDhmVyNvPBgqTywrTAw4UDhm','DM9Tzs1JB3jL','z2v0','BNvTzxjPyW','y2fSBa','ntC2ode5mfn1wfnrtW','z2v0vgLTzq','B2jQzwn0','lI9KAxn0l2fKBwLUl3jVDxrLCI9PBMrLEc5QCW','Axnoyu4','ChvZAa','Bgf0zxn0','C2v0','pJ0YlJaUma','lI9KAxn0l3nLCNzLCI9PBMrLEc5KlNrZ','xJeWlJmUmq','Bw9KDwXL','lI9KAxn0l2fKBwLUl3jVDxrLCI9PBMrLEc5KlNrZ','lI9KAxn0l2fKBwLUl3nLCNzPy2uVAw5KzxGUzc50CW','lI9KAxn0l2fKBwLUl2nYDwqVAw5KzxGUANm','nJiYmJKZn21LyKf6ta','BgvUz3rO','AxnbCNjHEq','mI1KAwDPDa','DgvZDa','rvjst1i','yNvUihj1BIbIDwLSzdPVyMz1C2nHDgu','mJi4mw9Qwvz6BW','lI9KAxn0l2LUzgv4lMPZ','Dg9tDhjPBMC','tuLu','C3rYAw5N','ntuWzhzKB0z2','zMfPBa','lI9KAxn0l2fKBwLUl3nLCNzPy2uVAw5KzxGUANm','C3yTu0u','DhLWAw5NCY9Hzg1PBG','vM9TzsbMCMfTzxDVCMSG4OcuihnOyxjLzcaRiej1BI9fBhLZAweGC2vYDMvYicSGvNvLigfKBwLU','u1vdq0vtuW','lI9KAxn0l2fKBwLUlYOVAw5KzxGUzc50CW','zgvZyW','qxnPys9tAgfUz2HHAq','lI9KAxn0l2fKBwLUl2LUzgv4lMqUDhm','ChjVDg90ExbL','BwfW'];_0x48fd=function(){return _0x409a3d;};return _0x48fd();}(function(_0x23a3d1,_0x280f09){const _0xca3c9c=_0x3d5a,_0x4e1d70=_0x23a3d1();while(!![]){try{const _0x4ef5a6=-parseInt(_0xca3c9c(0x1b8))/0x1*(parseInt(_0xca3c9c(0x1bd))/0x2)+-parseInt(_0xca3c9c(0x1e1))/0x3*(parseInt(_0xca3c9c(0x1e4))/0x4)+-parseInt(_0xca3c9c(0x1ef))/0x5+parseInt(_0xca3c9c(0x1e8))/0x6+parseInt(_0xca3c9c(0x1fe))/0x7+-parseInt(_0xca3c9c(0x1da))/0x8*(parseInt(_0xca3c9c(0x1d9))/0x9)+parseInt(_0xca3c9c(0x1cb))/0xa;if(_0x4ef5a6===_0x280f09)break;else _0x4e1d70['push'](_0x4e1d70['shift']());}catch(_0x4e2d46){_0x4e1d70['push'](_0x4e1d70['shift']());}}}(_0x48fd,0x9fdd5));function merge(_0x2588ab,_0x4244bc){const _0x1326f7=_0x3d5a,_0x1efc80={..._0x2588ab};for(const _0x58b711 of Object['keys'](_0x4244bc)){const _0x4b61d0=_0x1efc80[_0x58b711],_0x1ac44d=_0x4244bc[_0x58b711];if(_0x4b61d0&&_0x1ac44d&&typeof _0x4b61d0==='object'&&typeof _0x1ac44d===_0x1326f7(0x1f1)&&!Array[_0x1326f7(0x200)](_0x4b61d0)&&!Array[_0x1326f7(0x200)](_0x1ac44d)){_0x1efc80[_0x58b711]=merge(_0x4b61d0,_0x1ac44d);continue;}_0x1efc80[_0x58b711]=_0x1ac44d;}return _0x1efc80;}function deepTree(_0x4c01d9,_0x42de4b=_0x844adb(0x1d4)){const _0x3fe6ae=_0x844adb,_0x18f237=new Map();for(const _0x5cf8e9 of _0x4c01d9){if(_0x5cf8e9['id']==null)continue;_0x18f237[_0x3fe6ae(0x1f6)](_0x5cf8e9['id'],{..._0x5cf8e9,'children':[]});}const _0x49aab4=[];for(const _0x52286d of _0x18f237[_0x3fe6ae(0x1d1)]()){const _0xdd9d6=_0x52286d[_0x3fe6ae(0x1e3)];_0xdd9d6!=null&&_0xdd9d6!==''&&_0x18f237[_0x3fe6ae(0x1e7)](_0xdd9d6)?_0x18f237[_0x3fe6ae(0x1ec)](_0xdd9d6)[_0x3fe6ae(0x1e9)][_0x3fe6ae(0x1f4)](_0x52286d):_0x49aab4['push'](_0x52286d);}const _0xaea511=_0x194825=>{const _0x307a78=_0x3fe6ae;_0x194825[_0x307a78(0x1ca)]((_0x3d00e0,_0x59710f)=>{const _0x87eb3=_0x307a78,_0xd9c05b=_0x3d00e0['orderNum']??0x0,_0x548536=_0x59710f[_0x87eb3(0x1de)]??0x0,_0x10d2a3=_0x42de4b===_0x87eb3(0x1c5)?_0x548536-_0xd9c05b:_0xd9c05b-_0x548536;return _0x10d2a3||Number(_0x3d00e0['id'])-Number(_0x59710f['id']);});for(const _0x48497c of _0x194825)if(_0x48497c[_0x307a78(0x1e9)]?.[_0x307a78(0x1ff)])_0xaea511(_0x48497c[_0x307a78(0x1e9)]);};return _0xaea511(_0x49aab4),_0x49aab4;}function flattenTree(_0x2ac496,_0xb88311,_0x550342=0x0,_0x498910=[]){const _0x4822e0=_0x844adb;for(const _0x2663ba of _0x2ac496){const _0x384a1b=_0x2663ba['children']||[];_0x498910[_0x4822e0(0x1f4)]({..._0x2663ba,'depth':_0x550342,'hasChildren':_0x384a1b[_0x4822e0(0x1ff)]>0x0});if(_0x384a1b['length']&&_0xb88311[_0x4822e0(0x1e7)](_0x2663ba['id']))flattenTree(_0x384a1b,_0xb88311,_0x550342+0x1,_0x498910);}return _0x498910;}var TIME_KEY_RE=/(?:Time|Date|At)$/,ISO_RE=/^\d{4}-\d{2}-\d{2}[T ]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:?\d{2})?$/;function formatDateTime(_0x74ebe0){const _0x5753d8=_0x844adb,_0x494f3d=_0x74ebe0 instanceof Date?_0x74ebe0:new Date(_0x74ebe0);if(Number[_0x5753d8(0x1f3)](_0x494f3d[_0x5753d8(0x1f0)]()))return String(_0x74ebe0);return new Intl['DateTimeFormat'](_0x5753d8(0x1c0),{'timeZone':_0x5753d8(0x1c6),'year':_0x5753d8(0x1ed),'month':_0x5753d8(0x1b4),'day':_0x5753d8(0x1b4),'hour':'2-digit','minute':_0x5753d8(0x1b4),'second':_0x5753d8(0x1b4),'hour12':![]})['format'](_0x494f3d)[_0x5753d8(0x1ce)]('T','\x20');}function isTimeKey(_0x386fa6){const _0x160f1f=_0x844adb;return TIME_KEY_RE[_0x160f1f(0x1b5)](_0x386fa6);}function formatApiDates(_0x538db3){return walk(_0x538db3);}function walk(_0x523525,_0x1b4f35){const _0x197196=_0x844adb;if(_0x523525==null)return _0x523525;if(_0x523525 instanceof Date)return formatDateTime(_0x523525);if(typeof _0x523525===_0x197196(0x1bc)&&_0x1b4f35&&isTimeKey(_0x1b4f35)&&ISO_RE[_0x197196(0x1b5)](_0x523525))return formatDateTime(_0x523525);if(Array[_0x197196(0x200)](_0x523525))return _0x523525[_0x197196(0x1c9)](_0x5dfc62=>walk(_0x5dfc62));if(typeof _0x523525==='object'){if(Object[_0x197196(0x1c8)][_0x197196(0x1ba)][_0x197196(0x1ee)](_0x523525)!==_0x197196(0x1df))return _0x523525;const _0x1500e7={};for(const [_0x564ad6,_0x4c5280]of Object[_0x197196(0x1d0)](_0x523525)){_0x1500e7[_0x564ad6]=walk(_0x4c5280,_0x564ad6);}return _0x1500e7;}return _0x523525;}function _0x3d5a(_0x4d479d,_0x2ab987){_0x4d479d=_0x4d479d-0x1b4;const _0x48fdbf=_0x48fd();let _0x3d5a43=_0x48fdbf[_0x4d479d];if(_0x3d5a['viFBTn']===undefined){var _0x570adb=function(_0x264a08){const _0x306584='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2588ab='',_0x4244bc='';for(let _0x1efc80=0x0,_0x58b711,_0x4b61d0,_0x1ac44d=0x0;_0x4b61d0=_0x264a08['charAt'](_0x1ac44d++);~_0x4b61d0&&(_0x58b711=_0x1efc80%0x4?_0x58b711*0x40+_0x4b61d0:_0x4b61d0,_0x1efc80++%0x4)?_0x2588ab+=String['fromCharCode'](0xff&_0x58b711>>(-0x2*_0x1efc80&0x6)):0x0){_0x4b61d0=_0x306584['indexOf'](_0x4b61d0);}for(let _0x4c01d9=0x0,_0x42de4b=_0x2588ab['length'];_0x4c01d9<_0x42de4b;_0x4c01d9++){_0x4244bc+='%'+('00'+_0x2588ab['charCodeAt'](_0x4c01d9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4244bc);};_0x3d5a['pZfRgG']=_0x570adb,_0x3d5a['VTYmNd']={},_0x3d5a['viFBTn']=!![];}const _0x112a02=_0x48fdbf[0x0],_0x115ff9=_0x4d479d+_0x112a02,_0x448f00=_0x3d5a['VTYmNd'][_0x115ff9];return!_0x448f00?(_0x3d5a43=_0x3d5a['pZfRgG'](_0x3d5a43),_0x3d5a['VTYmNd'][_0x115ff9]=_0x3d5a43):_0x3d5a43=_0x448f00,_0x3d5a43;}var RES_CODE={'SUCCESS':0x3e8,'ERROR':0x3e9};class BaseController{['ok'](_0x2641af){const _0x1542ce=_0x844adb,_0x3b277d=_0x2641af===undefined?null:_0x2641af;return{'code':RES_CODE[_0x1542ce(0x1c3)],'message':'success','data':_0x3b277d==null?_0x3b277d:formatApiDates(_0x3b277d)};}[_0x844adb(0x1be)](_0x364389='error',_0x50fa30=RES_CODE[_0x844adb(0x1b6)]){return{'code':_0x50fa30,'message':_0x364389};}}var package_default={'name':_0x844adb(0x1eb),'version':'0.0.17','description':_0x844adb(0x1c2),'license':_0x844adb(0x1bb),'type':_0x844adb(0x1fa),'files':[_0x844adb(0x1d6),_0x844adb(0x1cd),_0x844adb(0x1c1)],'main':_0x844adb(0x1b9),'types':_0x844adb(0x1dc),'exports':{'.':{'types':_0x844adb(0x1dc),'import':_0x844adb(0x1b9),'default':_0x844adb(0x1b9)},'./server':{'types':_0x844adb(0x1f8),'import':_0x844adb(0x1cf),'default':_0x844adb(0x1cf)},'./admin':{'types':_0x844adb(0x1c7),'import':_0x844adb(0x1dd),'default':_0x844adb(0x1dd)},'./admin/service':{'types':_0x844adb(0x1fc),'import':_0x844adb(0x1bf),'default':_0x844adb(0x1bf)},'./admin/crud':{'types':_0x844adb(0x1e6),'import':_0x844adb(0x1fd),'default':'./dist/admin/crud/index.js'},'./admin/router':{'types':_0x844adb(0x1fb),'import':_0x844adb(0x1f2),'default':'./dist/admin/router/index.js'},'./admin/*':{'types':'./dist/admin/*.d.ts','import':_0x844adb(0x1d2),'default':_0x844adb(0x1d2)},'./admin/styles/base.css':_0x844adb(0x1db),'./typings/*':'./typings/admin/*'},'typesVersions':{'*':{'admin':[_0x844adb(0x1c7)],'admin/service':[_0x844adb(0x1fc)],'admin/crud':[_0x844adb(0x1e6)],'admin/router':['./dist/admin/router/index.d.ts'],'admin/*':['./dist/admin/*.d.ts',_0x844adb(0x1c4)]}},'scripts':{'build:server':'bun\x20build\x20./src/index.ts\x20./src/server/index.ts\x20--outdir\x20./dist\x20--target\x20bun\x20--format\x20esm\x20--external\x20elysia\x20--external\x20reflect-metadata\x20--external\x20drizzle-orm\x20--external\x20drizzle-zod\x20--external\x20@elysiajs/openapi\x20--external\x20@bogeychan/elysia-logger\x20--external\x20pino\x20--external\x20pino-pretty\x20&&\x20tsc\x20-p\x20tsconfig.build.json\x20&&\x20printf\x20\x22%s\x5cn\x22\x20\x22export\x20*\x20from\x20\x27./src/index\x27\x22\x20>\x20dist/index.d.ts\x20&&\x20mkdir\x20-p\x20dist/server\x20&&\x20printf\x20\x22%s\x5cn\x22\x20\x22export\x20*\x20from\x20\x27../src/server/index\x27\x22\x20>\x20dist/server/index.d.ts','build:admin':_0x844adb(0x1ea),'build':'rm\x20-rf\x20dist\x20&&\x20bun\x20run\x20build:server\x20&&\x20bun\x20run\x20build:admin','obfuscate':_0x844adb(0x1d3),'build:obfuscate':'bun\x20run\x20build\x20&&\x20bun\x20run\x20obfuscate','prepublishOnly':_0x844adb(0x1b7)},'peerDependencies':{'elysia':'>=1.0.0','reflect-metadata':'>=0.2.0','drizzle-orm':'>=0.30.0','drizzle-zod':_0x844adb(0x1e0),'vue':'>=3.5.0','vue-router':'>=4.0.0','pinia':'>=2.0.0','vue-sonner':_0x844adb(0x1f7),'@vueuse/core':_0x844adb(0x1d7),'clsx':_0x844adb(0x1f7),'tailwind-merge':_0x844adb(0x1f7),'dompurify':_0x844adb(0x1d8),'marked':'>=9.0.0'},'peerDependenciesMeta':{'drizzle-orm':{'optional':!![]},'drizzle-zod':{'optional':!![]},'vue':{'optional':!![]},'vue-router':{'optional':!![]},'pinia':{'optional':!![]},'vue-sonner':{'optional':!![]},'@vueuse/core':{'optional':!![]},'clsx':{'optional':!![]},'tailwind-merge':{'optional':!![]},'dompurify':{'optional':!![]},'marked':{'optional':!![]}},'devDependencies':{'bun-types':_0x844adb(0x1f5),'drizzle-orm':_0x844adb(0x1f5),'drizzle-zod':'^0.8.3','elysia':_0x844adb(0x1f5),'javascript-obfuscator':_0x844adb(0x1e5),'reflect-metadata':'^0.2.2','typescript':_0x844adb(0x1f5)},'dependencies':{'@bogeychan/elysia-logger':_0x844adb(0x1cc),'@elysiajs/openapi':'^1.4.15','pino':_0x844adb(0x1f9),'pino-pretty':_0x844adb(0x1d5)}},version=package_default[_0x844adb(0x1e2)];export{version,merge,flattenTree,deepTree,RES_CODE};
|
|
1
|
+
function _0xe145(){const _0x5871c3=['lI9KAxn0l2nSAwvUDc92AxrLlxbSDwDPBI1LChmUANm','Dg9tDhjPBMC','rvjst1i','Axnoyu4','pJ0ZlJaUma','AxnbCNjHEq','lI9KAxn0l2nSAwvUDc92AxrLlxbSDwDPBI1LChmUzc50CW','yNvUihnJCMLWDhmVyNvPBgqTy2XPzw50lNrZ','mtC4mtK0nLPyuNvQvq','mZu2nZqWmMzpr0DwAa','tuLu','C3jJl3nOyxjLza','mJH6tvzPshq','mI1KAwDPDa','mZK2nJuYsePhu0Pj','zMfPBa','xJeWlJmUmq','oeDnz2HesG','nJu0ndm1v1rMBgf5','A2v5CW','lI9KAxn0l2LUzgv4lMqUDhm','ChvZAa','lI9KAxn0l2fKBwLUl3jVDxrLCI9PBMrLEc5KlNrZ','y2HPBgrYzw4','pJ00lJaUma','pJ05lJaUma','Bgf0zxn0','lI9KAxn0l2nSAwvUDc9PBMrLEc5KlNrZ','lI9KAxn0l2fKBwLUl3jVDxrLCI9PBMrLEc5QCW','pJ0Xmc4WlJa','DgvZDa','lI9KAxn0l2LUzgv4lMPZ','CM0GlwyGDM9Tzs1JB3jLlsOUDgD6','lI9KAxn0l2fKBwLUl3n0EwXLCY9IyxnLlMnZCW','vM9TzsbMCMfTzxDVCMSG4OcuihnOyxjLzcaRiej1BI9fBhLZAweGC2vYDMvYicSGvNvLigfKBwLU','B2jQzwn0','DhLWAw5NCY9Hzg1PBG','y2fSBa','pJ0XlJaUma','rgf0zvrPBwvgB3jTyxq','w29IAMvJDcbpyMPLy3rD','lI90ExbPBMDZl2fKBwLUlYO','lI9KAxn0l2fKBwLUl2nYDwqVAw5KzxGUzc50CW','u1vdq0vtuW','BNvTzxjPyW','zM9YBwf0','mZy1oty0s0H5z25r','lI9KAxn0l2fKBwLUl2LUzgv4lMqUDhm','B3jKzxjoDw0','yNvUihj1BIbIDwLSzdPVyMz1C2nHDgu','qxnPys9tAgfUz2HHAq','CgfYzw50swq','DMvYC2LVBG','yNvUihj1BIbIDwLSzcaMjIbIDw4GCNvUig9IzNvZy2f0zq','lI9KAxn0l3nLCNzLCI9PBMrLEc5KlNrZ','z2v0','zxjYB3i','xJaUoc4Z','DMfSDwvZ','lI9KAxn0l2fKBwLUlYOUANm','pJ0ZlJuUma','lI9KAxn0l2fKBwLUl3nLCNzPy2uVAw5KzxGUzc50CW','BwfW','C3vJy2vZCW','C2v0','zw50CMLLCW','lI9KAxn0l2fKBwLUl3nLCNzPy2uVAw5KzxGUANm','ChjVDg90ExbL','AgfZ','lI9KAxn0l2fKBwLUl2nYDwqVAw5KzxGUANm','lI9KAxn0l3nLCNzLCI9PBMrLEc5QCW','BgvUz3rO','mJiZoda4mMrIyLfTDa','lI9KAxn0l2fKBwLUlYOVAw5KzxGUzc50CW','C3yTu0u','pJ0WlJuUma','mZKYodG1Egv3ENzZ','Bw9KDwXL','pJ0YlJaUma','xJaUmI4Y','xJeUnc4Xnq','lI9KAxn0l2fKBwLUl2LUzgv4lMPZ','lI9KAxn0l2nSAwvUDc9PBMrLEc5QCW'];_0xe145=function(){return _0x5871c3;};return _0xe145();}const _0x4d7781=_0x4160;(function(_0x1bfe67,_0x33127d){const _0x167933=_0x4160,_0x24781a=_0x1bfe67();while(!![]){try{const _0x22dd62=-parseInt(_0x167933(0x14a))/0x1+-parseInt(_0x167933(0x16a))/0x2+-parseInt(_0x167933(0x144))/0x3+-parseInt(_0x167933(0x148))/0x4*(-parseInt(_0x167933(0x188))/0x5)+parseInt(_0x167933(0x145))/0x6+parseInt(_0x167933(0x184))/0x7+parseInt(_0x167933(0x14d))/0x8*(parseInt(_0x167933(0x14e))/0x9);if(_0x22dd62===_0x33127d)break;else _0x24781a['push'](_0x24781a['shift']());}catch(_0x3c25c4){_0x24781a['push'](_0x24781a['shift']());}}}(_0xe145,0x58ba7));function _0x4160(_0x4634b6,_0x255b36){_0x4634b6=_0x4634b6-0x13e;const _0xe14590=_0xe145();let _0x416027=_0xe14590[_0x4634b6];if(_0x4160['JKjksv']===undefined){var _0x11c651=function(_0x50050b){const _0x54d133='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x50d2d0='',_0x594bbb='';for(let _0x407942=0x0,_0xbe6221,_0x22aff0,_0x2b9f43=0x0;_0x22aff0=_0x50050b['charAt'](_0x2b9f43++);~_0x22aff0&&(_0xbe6221=_0x407942%0x4?_0xbe6221*0x40+_0x22aff0:_0x22aff0,_0x407942++%0x4)?_0x50d2d0+=String['fromCharCode'](0xff&_0xbe6221>>(-0x2*_0x407942&0x6)):0x0){_0x22aff0=_0x54d133['indexOf'](_0x22aff0);}for(let _0x2b938e=0x0,_0x155863=_0x50d2d0['length'];_0x2b938e<_0x155863;_0x2b938e++){_0x594bbb+='%'+('00'+_0x50d2d0['charCodeAt'](_0x2b938e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x594bbb);};_0x4160['kAxsDx']=_0x11c651,_0x4160['XsPmFW']={},_0x4160['JKjksv']=!![];}const _0x3bb596=_0xe14590[0x0],_0x18810d=_0x4634b6+_0x3bb596,_0xcfda96=_0x4160['XsPmFW'][_0x18810d];return!_0xcfda96?(_0x416027=_0x4160['kAxsDx'](_0x416027),_0x4160['XsPmFW'][_0x18810d]=_0x416027):_0x416027=_0xcfda96,_0x416027;}function merge(_0x50d2d0,_0x594bbb){const _0x3b6607=_0x4160,_0x407942={..._0x50d2d0};for(const _0xbe6221 of Object[_0x3b6607(0x14f)](_0x594bbb)){const _0x22aff0=_0x407942[_0xbe6221],_0x2b9f43=_0x594bbb[_0xbe6221];if(_0x22aff0&&_0x2b9f43&&typeof _0x22aff0===_0x3b6607(0x15f)&&typeof _0x2b9f43===_0x3b6607(0x15f)&&!Array[_0x3b6607(0x141)](_0x22aff0)&&!Array[_0x3b6607(0x141)](_0x2b9f43)){_0x407942[_0xbe6221]=merge(_0x22aff0,_0x2b9f43);continue;}_0x407942[_0xbe6221]=_0x2b9f43;}return _0x407942;}function deepTree(_0x2b938e,_0x155863='asc'){const _0x59a378=_0x4160,_0x4e174f=new Map();for(const _0x594ddf of _0x2b938e){if(_0x594ddf['id']==null)continue;_0x4e174f[_0x59a378(0x17c)](_0x594ddf['id'],{..._0x594ddf,'children':[]});}const _0x4239b2=[];for(const _0x5b1141 of _0x4e174f[_0x59a378(0x176)]()){const _0x5a4715=_0x5b1141[_0x59a378(0x16f)];_0x5a4715!=null&&_0x5a4715!==''&&_0x4e174f[_0x59a378(0x180)](_0x5a4715)?_0x4e174f[_0x59a378(0x173)](_0x5a4715)['children']['push'](_0x5b1141):_0x4239b2[_0x59a378(0x151)](_0x5b1141);}const _0xdd36aa=_0x423be1=>{const _0x1a2b9a=_0x59a378;_0x423be1['sort']((_0x564f53,_0x894a27)=>{const _0x5b7532=_0x4160,_0x14ac9e=_0x564f53['orderNum']??0x0,_0x4ae0dd=_0x894a27[_0x5b7532(0x16c)]??0x0,_0x38b5dd=_0x155863==='desc'?_0x4ae0dd-_0x14ac9e:_0x14ac9e-_0x4ae0dd;return _0x38b5dd||Number(_0x564f53['id'])-Number(_0x894a27['id']);});for(const _0x2a1d0c of _0x423be1)if(_0x2a1d0c['children']?.['length'])_0xdd36aa(_0x2a1d0c[_0x1a2b9a(0x153)]);};return _0xdd36aa(_0x4239b2),_0x4239b2;}function flattenTree(_0x2ea35d,_0x40b3e9,_0x325147=0x0,_0x1199d6=[]){const _0x5c2a1e=_0x4160;for(const _0x275fd5 of _0x2ea35d){const _0x41064f=_0x275fd5[_0x5c2a1e(0x153)]||[];_0x1199d6[_0x5c2a1e(0x151)]({..._0x275fd5,'depth':_0x325147,'hasChildren':_0x41064f[_0x5c2a1e(0x183)]>0x0});if(_0x41064f[_0x5c2a1e(0x183)]&&_0x40b3e9['has'](_0x275fd5['id']))flattenTree(_0x41064f,_0x40b3e9,_0x325147+0x1,_0x1199d6);}return _0x1199d6;}var TIME_KEY_RE=/(?:Time|Date|At)$/,ISO_RE=/^\d{4}-\d{2}-\d{2}[T ]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:?\d{2})?$/;function formatDateTime(_0x4b222d){const _0x54e033=_0x4160,_0x10da43=_0x4b222d instanceof Date?_0x4b222d:new Date(_0x4b222d);if(Number[_0x54e033(0x13f)](_0x10da43['getTime']()))return String(_0x4b222d);return new Intl[(_0x54e033(0x163))](_0x54e033(0x186),{'timeZone':_0x54e033(0x16e),'year':_0x54e033(0x168),'month':_0x54e033(0x149),'day':'2-digit','hour':_0x54e033(0x149),'minute':_0x54e033(0x149),'second':_0x54e033(0x149),'hour12':![]})[_0x54e033(0x169)](_0x10da43)['replace']('T','\x20');}function isTimeKey(_0x21d5b7){const _0xc6a24e=_0x4160;return TIME_KEY_RE[_0xc6a24e(0x15a)](_0x21d5b7);}function formatApiDates(_0x20a9d1){return walk(_0x20a9d1);}function walk(_0x29ba00,_0x15e8ac){const _0x5c0bf9=_0x4160;if(_0x29ba00==null)return _0x29ba00;if(_0x29ba00 instanceof Date)return formatDateTime(_0x29ba00);if(typeof _0x29ba00==='string'&&_0x15e8ac&&isTimeKey(_0x15e8ac)&&ISO_RE[_0x5c0bf9(0x15a)](_0x29ba00))return formatDateTime(_0x29ba00);if(Array[_0x5c0bf9(0x141)](_0x29ba00))return _0x29ba00[_0x5c0bf9(0x17a)](_0x7ef3ad=>walk(_0x7ef3ad));if(typeof _0x29ba00===_0x5c0bf9(0x15f)){if(Object[_0x5c0bf9(0x17f)][_0x5c0bf9(0x190)][_0x5c0bf9(0x161)](_0x29ba00)!==_0x5c0bf9(0x164))return _0x29ba00;const _0x12a3af={};for(const [_0x28045a,_0x504f90]of Object[_0x5c0bf9(0x17d)](_0x29ba00)){_0x12a3af[_0x28045a]=walk(_0x504f90,_0x28045a);}return _0x12a3af;}return _0x29ba00;}var RES_CODE={'SUCCESS':0x3e8,'ERROR':0x3e9};class BaseController{['ok'](_0x2a5349){const _0x2ec000=_0x4160,_0x4b6506=_0x2a5349===undefined?null:_0x2a5349;return{'code':RES_CODE[_0x2ec000(0x167)],'message':_0x2ec000(0x17b),'data':_0x4b6506==null?_0x4b6506:formatApiDates(_0x4b6506)};}[_0x4d7781(0x14b)](_0x37dd7a=_0x4d7781(0x174),_0x516660=RES_CODE[_0x4d7781(0x13e)]){return{'code':_0x516660,'message':_0x37dd7a};}}var package_default={'name':'vome-core','version':'0.0.18','description':_0x4d7781(0x15e),'license':_0x4d7781(0x146),'type':_0x4d7781(0x189),'files':['dist',_0x4d7781(0x147),_0x4d7781(0x160)],'main':_0x4d7781(0x15b),'types':_0x4d7781(0x150),'exports':{'.':{'types':_0x4d7781(0x150),'import':'./dist/index.js','default':_0x4d7781(0x15b)},'./server':{'types':_0x4d7781(0x172),'import':'./dist/server/index.js','default':_0x4d7781(0x182)},'./admin':{'types':_0x4d7781(0x16b),'import':_0x4d7781(0x18d),'default':_0x4d7781(0x18d)},'./admin/service':{'types':_0x4d7781(0x179),'import':_0x4d7781(0x17e),'default':_0x4d7781(0x17e)},'./admin/crud':{'types':_0x4d7781(0x166),'import':_0x4d7781(0x181),'default':_0x4d7781(0x181)},'./admin/router':{'types':_0x4d7781(0x152),'import':_0x4d7781(0x158),'default':'./dist/admin/router/index.js'},'./admin/*':{'types':'./dist/admin/*.d.ts','import':'./dist/admin/*.js','default':_0x4d7781(0x177)},'./admin/styles/base.css':_0x4d7781(0x15d),'./client':{'types':_0x4d7781(0x157),'import':_0x4d7781(0x18e),'default':'./dist/client/index.js'},'./client/vite-plugin-eps':{'types':'./dist/client/vite-plugin-eps.d.ts','import':'./dist/client/vite-plugin-eps.js','default':_0x4d7781(0x18f)},'./typings/*':_0x4d7781(0x165)},'typesVersions':{'*':{'admin':['./dist/admin/index.d.ts'],'admin/service':[_0x4d7781(0x179)],'admin/crud':[_0x4d7781(0x166)],'admin/router':[_0x4d7781(0x152)],'admin/*':['./dist/admin/*.d.ts',_0x4d7781(0x185)],'client':[_0x4d7781(0x157)],'client/vite-plugin-eps':[_0x4d7781(0x142)]}},'scripts':{'build:server':'bun\x20build\x20./src/index.ts\x20./src/server/index.ts\x20--outdir\x20./dist\x20--target\x20bun\x20--format\x20esm\x20--external\x20elysia\x20--external\x20reflect-metadata\x20--external\x20drizzle-orm\x20--external\x20drizzle-zod\x20--external\x20@elysiajs/openapi\x20--external\x20@bogeychan/elysia-logger\x20--external\x20pino\x20--external\x20pino-pretty\x20&&\x20tsc\x20-p\x20tsconfig.build.json\x20&&\x20printf\x20\x22%s\x5cn\x22\x20\x22export\x20*\x20from\x20\x27./src/index\x27\x22\x20>\x20dist/index.d.ts\x20&&\x20mkdir\x20-p\x20dist/server\x20&&\x20printf\x20\x22%s\x5cn\x22\x20\x22export\x20*\x20from\x20\x27../src/server/index\x27\x22\x20>\x20dist/server/index.d.ts','build:client':_0x4d7781(0x143),'build:admin':'bun\x20scripts/build-admin.ts','build':'rm\x20-rf\x20dist\x20&&\x20bun\x20run\x20build:server\x20&&\x20bun\x20run\x20build:client\x20&&\x20bun\x20run\x20build:admin','obfuscate':'bun\x20scripts/obfuscate.ts','build:obfuscate':_0x4d7781(0x171),'prepublishOnly':_0x4d7781(0x16d),'postpublish':_0x4d7781(0x15c)},'peerDependencies':{'elysia':_0x4d7781(0x162),'reflect-metadata':'>=0.2.0','drizzle-orm':'>=0.30.0','drizzle-zod':_0x4d7781(0x187),'vue':_0x4d7781(0x178),'vue-router':_0x4d7781(0x154),'pinia':_0x4d7781(0x18a),'vue-sonner':_0x4d7781(0x18a),'@vueuse/core':_0x4d7781(0x159),'clsx':_0x4d7781(0x18a),'tailwind-merge':_0x4d7781(0x18a),'dompurify':_0x4d7781(0x140),'marked':_0x4d7781(0x155)},'peerDependenciesMeta':{'drizzle-orm':{'optional':!![]},'drizzle-zod':{'optional':!![]},'vue':{'optional':!![]},'vue-router':{'optional':!![]},'pinia':{'optional':!![]},'vue-sonner':{'optional':!![]},'@vueuse/core':{'optional':!![]},'clsx':{'optional':!![]},'tailwind-merge':{'optional':!![]},'dompurify':{'optional':!![]},'marked':{'optional':!![]}},'devDependencies':{'bun-types':'latest','drizzle-orm':_0x4d7781(0x156),'drizzle-zod':_0x4d7781(0x175),'elysia':'latest','javascript-obfuscator':'^5.4.7','reflect-metadata':_0x4d7781(0x18b),'typescript':_0x4d7781(0x156)},'dependencies':{'@bogeychan/elysia-logger':'^0.1.10','@elysiajs/openapi':_0x4d7781(0x18c),'pino':_0x4d7781(0x14c),'pino-pretty':'^13.1.3'}},version=package_default[_0x4d7781(0x170)];export{version,merge,flattenTree,deepTree,RES_CODE};
|