@zhin.js/client 1.0.10 → 1.0.12

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.
@@ -2,7 +2,7 @@
2
2
  * WebSocket React Hooks
3
3
  * 提供在 React 组件中使用 WebSocket 功能的便捷接口
4
4
  */
5
- import type { UseConfigOptions, UseWebSocketOptions } from './types';
5
+ import type { UseConfigOptions, UseWebSocketOptions, FileTreeNode, DatabaseInfo, TableInfo, SelectResult, KvEntry } from './types';
6
6
  /**
7
7
  * WebSocket 连接状态和基础功能 Hook
8
8
  */
@@ -28,7 +28,10 @@ export declare function useConfig(pluginName: string, options?: UseConfigOptions
28
28
  error: string | null;
29
29
  connected: boolean;
30
30
  getConfig: () => Promise<any>;
31
- setConfig: (newConfig: any) => Promise<void>;
31
+ setConfig: (newConfig: any) => Promise<{
32
+ reloaded?: boolean;
33
+ message?: string;
34
+ }>;
32
35
  getSchema: () => Promise<any>;
33
36
  reload: () => Promise<void>;
34
37
  };
@@ -44,4 +47,82 @@ export declare function useAllConfigs(): {
44
47
  schemas: any;
45
48
  }>;
46
49
  };
50
+ export declare function useConfigYaml(): {
51
+ yaml: string;
52
+ pluginKeys: string[];
53
+ loading: boolean;
54
+ error: string | null;
55
+ load: () => Promise<{
56
+ yaml: string;
57
+ pluginKeys: string[];
58
+ }>;
59
+ save: (content: string) => Promise<{
60
+ success: boolean;
61
+ message?: string;
62
+ }>;
63
+ };
64
+ export declare function useEnvFiles(): {
65
+ files: {
66
+ name: string;
67
+ exists: boolean;
68
+ }[];
69
+ loading: boolean;
70
+ error: string | null;
71
+ listFiles: () => Promise<{
72
+ name: string;
73
+ exists: boolean;
74
+ }[]>;
75
+ getFile: (filename: string) => Promise<string>;
76
+ saveFile: (filename: string, content: string) => Promise<{
77
+ success: boolean;
78
+ message?: string;
79
+ }>;
80
+ };
81
+ export declare function useFiles(): {
82
+ tree: FileTreeNode[];
83
+ loading: boolean;
84
+ error: string | null;
85
+ loadTree: () => Promise<FileTreeNode[]>;
86
+ readFile: (filePath: string) => Promise<string>;
87
+ saveFile: (filePath: string, content: string) => Promise<{
88
+ success: boolean;
89
+ message?: string;
90
+ }>;
91
+ };
92
+ export declare function useDatabase(): {
93
+ info: DatabaseInfo | null;
94
+ tables: TableInfo[];
95
+ loading: boolean;
96
+ error: string | null;
97
+ loadInfo: () => Promise<DatabaseInfo>;
98
+ loadTables: () => Promise<TableInfo[]>;
99
+ dropTable: (table: string) => Promise<{
100
+ success: boolean;
101
+ }>;
102
+ select: (table: string, page?: number, pageSize?: number, where?: any) => Promise<SelectResult>;
103
+ insert: (table: string, row: any) => Promise<{
104
+ success: boolean;
105
+ }>;
106
+ update: (table: string, row: any, where: any) => Promise<{
107
+ success: boolean;
108
+ affected: number;
109
+ }>;
110
+ remove: (table: string, where: any) => Promise<{
111
+ success: boolean;
112
+ deleted: number;
113
+ }>;
114
+ kvGet: (table: string, key: string) => Promise<{
115
+ key: string;
116
+ value: any;
117
+ }>;
118
+ kvSet: (table: string, key: string, value: any, ttl?: number) => Promise<{
119
+ success: boolean;
120
+ }>;
121
+ kvDelete: (table: string, key: string) => Promise<{
122
+ success: boolean;
123
+ }>;
124
+ kvEntries: (table: string) => Promise<{
125
+ entries: KvEntry[];
126
+ }>;
127
+ };
47
128
  //# sourceMappingURL=hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../client/websocket/hooks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAiBH,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAMpE;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB;;;;;;oBAoBzB,GAAG;kBAIC,CAAC,iBAAiB,GAAG,KAAG,OAAO,CAAC,CAAC,CAAC;;;;EAuC1E;AAMD;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB;;;;;;;2BA+B1B,GAAG;;;EAmEpD;AAMD;;GAEG;AACH,wBAAgB,aAAa;;;;;;;;EA2B5B"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../client/websocket/hooks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAmBH,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAgB,MAAM,SAAS,CAAA;AAMhJ;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB;;;;;;oBAoBzB,GAAG;kBAIC,CAAC,iBAAiB,GAAG,KAAG,OAAO,CAAC,CAAC,CAAC;;;;EAuC1E;AAMD;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB;;;;;;;2BAgC1B,GAAG,KAAG,OAAO,CAAC;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;;;EAwExG;AAMD;;GAEG;AACH,wBAAgB,aAAa;;;;;;;;EA2B5B;AAMD,wBAAgB,aAAa;;;;;;;;;oBA0Bc,MAAM;;;;EAyBhD;AAMD,wBAAgB,WAAW;;cAIwB,MAAM;gBAAU,OAAO;;;;;;;;wBAoB3B,MAAM;yBAWL,MAAM,WAAW,MAAM;;;;EAuBtE;AAMD,wBAAgB,QAAQ;;;;;yBAwBwB,MAAM;yBAWN,MAAM,WAAW,MAAM;;;;EAuBtE;AAMD,wBAAgB,WAAW;;;;;;;uBAiFmB,MAAM;;;oBAxCT,MAAM,SAAS,MAAM,aAAa,MAAM,UAAU,GAAG;oBAUrD,MAAM,OAAO,GAAG;;;oBAUhB,MAAM,OAAO,GAAG,SAAS,GAAG;;;;oBAU5B,MAAM,SAAS,GAAG;;;;mBAsBnB,MAAM,OAAO,MAAM;;;;mBAUnB,MAAM,OAAO,MAAM,SAAS,GAAG,QAAQ,MAAM;;;sBAU1C,MAAM,OAAO,MAAM;;;uBAUlB,MAAM;;;EAuBnD"}
@@ -2,8 +2,8 @@
2
2
  * WebSocket React Hooks
3
3
  * 提供在 React 组件中使用 WebSocket 功能的便捷接口
4
4
  */
5
- import { useCallback, useEffect, useMemo } from 'react';
6
- import { useSelector, useDispatch, selectConfig, selectSchema, selectConfigLoading, selectConfigError, selectConfigConnected, selectAllConfigs, selectAllSchemas, setLoading, setError } from '../store';
5
+ import { useCallback, useEffect, useMemo, useState } from 'react';
6
+ import { useSelector, useDispatch, selectConfig, selectSchema, selectConfigLoading, selectConfigError, selectConfigConnected, selectAllConfigs, selectAllSchemas, setLoading, setError, updateConfig, updateSchema } from '../store';
7
7
  import { getWebSocketManager } from './instance';
8
8
  // ============================================================================
9
9
  // WebSocket 连接 Hook
@@ -85,6 +85,7 @@ export function useConfig(pluginName, options = {}) {
85
85
  dispatch(setError({ pluginName, error: null }));
86
86
  try {
87
87
  const result = await wsManager.getConfig(pluginName);
88
+ dispatch(updateConfig({ pluginName, config: result }));
88
89
  return result;
89
90
  }
90
91
  catch (error) {
@@ -101,7 +102,8 @@ export function useConfig(pluginName, options = {}) {
101
102
  dispatch(setLoading({ pluginName, loading: true }));
102
103
  dispatch(setError({ pluginName, error: null }));
103
104
  try {
104
- await wsManager.setConfig(pluginName, newConfig);
105
+ const result = await wsManager.setConfig(pluginName, newConfig);
106
+ return { reloaded: result?.reloaded, message: result?.message };
105
107
  }
106
108
  catch (error) {
107
109
  console.error('[useConfig] setConfig failed:', error);
@@ -115,13 +117,17 @@ export function useConfig(pluginName, options = {}) {
115
117
  }, [pluginName, wsManager, dispatch]);
116
118
  const getSchema = useCallback(async () => {
117
119
  try {
118
- return await wsManager.getSchema(pluginName);
120
+ const result = await wsManager.getSchema(pluginName);
121
+ if (result) {
122
+ dispatch(updateSchema({ pluginName, schema: result }));
123
+ }
124
+ return result;
119
125
  }
120
126
  catch (error) {
121
127
  console.error(`Failed to get schema for plugin ${pluginName}:`, error);
122
128
  throw error;
123
129
  }
124
- }, [pluginName, wsManager]);
130
+ }, [pluginName, wsManager, dispatch]);
125
131
  // 重新加载配置和 Schema
126
132
  const reload = useCallback(async () => {
127
133
  const promises = [];
@@ -189,4 +195,329 @@ export function useAllConfigs() {
189
195
  refreshAll
190
196
  }), [allConfigs, allSchemas, connected, refreshAll]);
191
197
  }
198
+ // ============================================================================
199
+ // 配置文件 YAML 读写 Hook
200
+ // ============================================================================
201
+ export function useConfigYaml() {
202
+ const wsManager = getWebSocketManager();
203
+ const connected = useSelector(selectConfigConnected);
204
+ const [yaml, setYaml] = useState('');
205
+ const [pluginKeys, setPluginKeys] = useState([]);
206
+ const [loading, setLoadingState] = useState(false);
207
+ const [error, setErrorState] = useState(null);
208
+ const load = useCallback(async () => {
209
+ setLoadingState(true);
210
+ setErrorState(null);
211
+ try {
212
+ const result = await wsManager.getConfigYaml();
213
+ setYaml(result.yaml);
214
+ setPluginKeys(result.pluginKeys);
215
+ return result;
216
+ }
217
+ catch (err) {
218
+ const msg = err instanceof Error ? err.message : 'Unknown error';
219
+ setErrorState(msg);
220
+ throw err;
221
+ }
222
+ finally {
223
+ setLoadingState(false);
224
+ }
225
+ }, [wsManager]);
226
+ const save = useCallback(async (content) => {
227
+ setLoadingState(true);
228
+ setErrorState(null);
229
+ try {
230
+ const result = await wsManager.saveConfigYaml(content);
231
+ setYaml(content);
232
+ return result;
233
+ }
234
+ catch (err) {
235
+ const msg = err instanceof Error ? err.message : 'Unknown error';
236
+ setErrorState(msg);
237
+ throw err;
238
+ }
239
+ finally {
240
+ setLoadingState(false);
241
+ }
242
+ }, [wsManager]);
243
+ useEffect(() => {
244
+ if (connected && !yaml && !loading) {
245
+ load().catch(() => { });
246
+ }
247
+ }, [connected, yaml, loading, load]);
248
+ return useMemo(() => ({
249
+ yaml, pluginKeys, loading, error, load, save
250
+ }), [yaml, pluginKeys, loading, error, load, save]);
251
+ }
252
+ // ============================================================================
253
+ // 环境变量文件管理 Hook
254
+ // ============================================================================
255
+ export function useEnvFiles() {
256
+ const wsManager = getWebSocketManager();
257
+ const connected = useSelector(selectConfigConnected);
258
+ const [files, setFiles] = useState([]);
259
+ const [loading, setLoadingState] = useState(false);
260
+ const [error, setErrorState] = useState(null);
261
+ const listFiles = useCallback(async () => {
262
+ setLoadingState(true);
263
+ setErrorState(null);
264
+ try {
265
+ const result = await wsManager.getEnvList();
266
+ setFiles(result.files);
267
+ return result.files;
268
+ }
269
+ catch (err) {
270
+ const msg = err instanceof Error ? err.message : 'Unknown error';
271
+ setErrorState(msg);
272
+ throw err;
273
+ }
274
+ finally {
275
+ setLoadingState(false);
276
+ }
277
+ }, [wsManager]);
278
+ const getFile = useCallback(async (filename) => {
279
+ try {
280
+ const result = await wsManager.getEnvFile(filename);
281
+ return result.content;
282
+ }
283
+ catch (err) {
284
+ const msg = err instanceof Error ? err.message : 'Unknown error';
285
+ setErrorState(msg);
286
+ throw err;
287
+ }
288
+ }, [wsManager]);
289
+ const saveFile = useCallback(async (filename, content) => {
290
+ setLoadingState(true);
291
+ setErrorState(null);
292
+ try {
293
+ return await wsManager.saveEnvFile(filename, content);
294
+ }
295
+ catch (err) {
296
+ const msg = err instanceof Error ? err.message : 'Unknown error';
297
+ setErrorState(msg);
298
+ throw err;
299
+ }
300
+ finally {
301
+ setLoadingState(false);
302
+ }
303
+ }, [wsManager]);
304
+ useEffect(() => {
305
+ if (connected && files.length === 0 && !loading) {
306
+ listFiles().catch(() => { });
307
+ }
308
+ }, [connected, files.length, loading, listFiles]);
309
+ return useMemo(() => ({
310
+ files, loading, error, listFiles, getFile, saveFile
311
+ }), [files, loading, error, listFiles, getFile, saveFile]);
312
+ }
313
+ // ============================================================================
314
+ // 文件管理 Hook
315
+ // ============================================================================
316
+ export function useFiles() {
317
+ const wsManager = getWebSocketManager();
318
+ const connected = useSelector(selectConfigConnected);
319
+ const [tree, setTree] = useState([]);
320
+ const [loading, setLoadingState] = useState(false);
321
+ const [error, setErrorState] = useState(null);
322
+ const loadTree = useCallback(async () => {
323
+ setLoadingState(true);
324
+ setErrorState(null);
325
+ try {
326
+ const result = await wsManager.getFileTree();
327
+ setTree(result.tree);
328
+ return result.tree;
329
+ }
330
+ catch (err) {
331
+ const msg = err instanceof Error ? err.message : 'Unknown error';
332
+ setErrorState(msg);
333
+ throw err;
334
+ }
335
+ finally {
336
+ setLoadingState(false);
337
+ }
338
+ }, [wsManager]);
339
+ const readFile = useCallback(async (filePath) => {
340
+ try {
341
+ const result = await wsManager.readFile(filePath);
342
+ return result.content;
343
+ }
344
+ catch (err) {
345
+ const msg = err instanceof Error ? err.message : 'Unknown error';
346
+ setErrorState(msg);
347
+ throw err;
348
+ }
349
+ }, [wsManager]);
350
+ const saveFile = useCallback(async (filePath, content) => {
351
+ setLoadingState(true);
352
+ setErrorState(null);
353
+ try {
354
+ return await wsManager.saveFile(filePath, content);
355
+ }
356
+ catch (err) {
357
+ const msg = err instanceof Error ? err.message : 'Unknown error';
358
+ setErrorState(msg);
359
+ throw err;
360
+ }
361
+ finally {
362
+ setLoadingState(false);
363
+ }
364
+ }, [wsManager]);
365
+ useEffect(() => {
366
+ if (connected && tree.length === 0 && !loading) {
367
+ loadTree().catch(() => { });
368
+ }
369
+ }, [connected, tree.length, loading, loadTree]);
370
+ return useMemo(() => ({
371
+ tree, loading, error, loadTree, readFile, saveFile
372
+ }), [tree, loading, error, loadTree, readFile, saveFile]);
373
+ }
374
+ // ============================================================================
375
+ // 数据库管理 Hook
376
+ // ============================================================================
377
+ export function useDatabase() {
378
+ const wsManager = getWebSocketManager();
379
+ const connected = useSelector(selectConfigConnected);
380
+ const [info, setInfo] = useState(null);
381
+ const [tables, setTables] = useState([]);
382
+ const [loading, setLoadingState] = useState(false);
383
+ const [error, setErrorState] = useState(null);
384
+ const loadInfo = useCallback(async () => {
385
+ setLoadingState(true);
386
+ setErrorState(null);
387
+ try {
388
+ const result = await wsManager.getDbInfo();
389
+ setInfo(result);
390
+ return result;
391
+ }
392
+ catch (err) {
393
+ const msg = err instanceof Error ? err.message : 'Unknown error';
394
+ setErrorState(msg);
395
+ throw err;
396
+ }
397
+ finally {
398
+ setLoadingState(false);
399
+ }
400
+ }, [wsManager]);
401
+ const loadTables = useCallback(async () => {
402
+ setLoadingState(true);
403
+ setErrorState(null);
404
+ try {
405
+ const result = await wsManager.getDbTables();
406
+ setTables(result.tables);
407
+ return result.tables;
408
+ }
409
+ catch (err) {
410
+ const msg = err instanceof Error ? err.message : 'Unknown error';
411
+ setErrorState(msg);
412
+ throw err;
413
+ }
414
+ finally {
415
+ setLoadingState(false);
416
+ }
417
+ }, [wsManager]);
418
+ const select = useCallback(async (table, page, pageSize, where) => {
419
+ try {
420
+ return await wsManager.dbSelect(table, page, pageSize, where);
421
+ }
422
+ catch (err) {
423
+ const msg = err instanceof Error ? err.message : 'Unknown error';
424
+ setErrorState(msg);
425
+ throw err;
426
+ }
427
+ }, [wsManager]);
428
+ const insert = useCallback(async (table, row) => {
429
+ try {
430
+ return await wsManager.dbInsert(table, row);
431
+ }
432
+ catch (err) {
433
+ const msg = err instanceof Error ? err.message : 'Unknown error';
434
+ setErrorState(msg);
435
+ throw err;
436
+ }
437
+ }, [wsManager]);
438
+ const update = useCallback(async (table, row, where) => {
439
+ try {
440
+ return await wsManager.dbUpdate(table, row, where);
441
+ }
442
+ catch (err) {
443
+ const msg = err instanceof Error ? err.message : 'Unknown error';
444
+ setErrorState(msg);
445
+ throw err;
446
+ }
447
+ }, [wsManager]);
448
+ const remove = useCallback(async (table, where) => {
449
+ try {
450
+ return await wsManager.dbDelete(table, where);
451
+ }
452
+ catch (err) {
453
+ const msg = err instanceof Error ? err.message : 'Unknown error';
454
+ setErrorState(msg);
455
+ throw err;
456
+ }
457
+ }, [wsManager]);
458
+ const dropTable = useCallback(async (table) => {
459
+ try {
460
+ const result = await wsManager.dbDropTable(table);
461
+ await loadTables();
462
+ return result;
463
+ }
464
+ catch (err) {
465
+ const msg = err instanceof Error ? err.message : 'Unknown error';
466
+ setErrorState(msg);
467
+ throw err;
468
+ }
469
+ }, [wsManager, loadTables]);
470
+ const kvGet = useCallback(async (table, key) => {
471
+ try {
472
+ return await wsManager.kvGet(table, key);
473
+ }
474
+ catch (err) {
475
+ const msg = err instanceof Error ? err.message : 'Unknown error';
476
+ setErrorState(msg);
477
+ throw err;
478
+ }
479
+ }, [wsManager]);
480
+ const kvSet = useCallback(async (table, key, value, ttl) => {
481
+ try {
482
+ return await wsManager.kvSet(table, key, value, ttl);
483
+ }
484
+ catch (err) {
485
+ const msg = err instanceof Error ? err.message : 'Unknown error';
486
+ setErrorState(msg);
487
+ throw err;
488
+ }
489
+ }, [wsManager]);
490
+ const kvDelete = useCallback(async (table, key) => {
491
+ try {
492
+ return await wsManager.kvDelete(table, key);
493
+ }
494
+ catch (err) {
495
+ const msg = err instanceof Error ? err.message : 'Unknown error';
496
+ setErrorState(msg);
497
+ throw err;
498
+ }
499
+ }, [wsManager]);
500
+ const kvEntries = useCallback(async (table) => {
501
+ try {
502
+ return await wsManager.kvGetEntries(table);
503
+ }
504
+ catch (err) {
505
+ const msg = err instanceof Error ? err.message : 'Unknown error';
506
+ setErrorState(msg);
507
+ throw err;
508
+ }
509
+ }, [wsManager]);
510
+ useEffect(() => {
511
+ if (connected && !info && !loading) {
512
+ loadInfo().catch(() => { });
513
+ loadTables().catch(() => { });
514
+ }
515
+ }, [connected, info, loading, loadInfo, loadTables]);
516
+ return useMemo(() => ({
517
+ info, tables, loading, error,
518
+ loadInfo, loadTables, dropTable,
519
+ select, insert, update, remove,
520
+ kvGet, kvSet, kvDelete, kvEntries,
521
+ }), [info, tables, loading, error, loadInfo, loadTables, dropTable, select, insert, update, remove, kvGet, kvSet, kvDelete, kvEntries]);
522
+ }
192
523
  //# sourceMappingURL=hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../client/websocket/hooks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AACvD,OAAO,EACL,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,QAAQ,EACT,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGhD,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,UAA+B,EAAE;IAC5D,MAAM,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;IAEtC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAA;IAEvC,eAAe;IACf,MAAM,SAAS,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAAA;IACpD,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,CAAA;IACxE,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,aAAa,IAAI,EAAE,CAAC,CAAA;IAEpF,OAAO;IACP,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,SAAS,CAAC,OAAO,EAAE,CAAA;IACrB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,SAAS,CAAC,UAAU,EAAE,CAAA;IACxB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,OAAO;IACP,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,OAAY,EAAE,EAAE;QACxC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,EAAW,OAAY,EAAc,EAAE;QAC1E,eAAe;QACf,OAAQ,SAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,OAAO;IACP,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,OAAO,SAAS,CAAC,WAAW,EAAE,CAAA;IAChC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAChC,gBAAgB;QAChB,OAAO,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAA;IAC/D,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,OAAO;IACP,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,WAAW,IAAI,CAAC,SAAS,EAAE,CAAC;YAC9B,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IAErC,OAAO;QACL,KAAK;QACL,SAAS;QACT,OAAO;QACP,aAAa;QAEb,KAAK;QACL,OAAO;QACP,UAAU;QACV,IAAI;QACJ,WAAW;QACX,WAAW;QACX,QAAQ;QAER,qBAAqB;QACrB,OAAO,EAAE,SAAS;KACnB,CAAA;AACH,CAAC;AAED,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,UAAkB,EAAE,UAA4B,EAAE;IAC1E,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,cAAc,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;IAE1D,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAA;IAEvC,QAAQ;IACR,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;IAC3E,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;IAC3E,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;IACnF,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;IAC/E,MAAM,SAAS,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAAA;IAEpD,OAAO;IACP,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QAE/C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;YACpD,OAAO,MAAM,CAAA;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAA;YACrD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAA;YAC7E,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAA;YACvD,MAAM,KAAK,CAAA;QACb,CAAC;gBAAS,CAAC;YACT,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;QACtD,CAAC;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;IAErC,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,SAAc,EAAE,EAAE;QACrD,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QAE/C,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAA;YACrD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAA;YAC7E,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAA;YACvD,MAAM,KAAK,CAAA;QACb,CAAC;gBAAS,CAAC;YACT,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;QACtD,CAAC;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;IAErC,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACvC,IAAI,CAAC;YACH,OAAO,MAAM,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mCAAmC,UAAU,GAAG,EAAE,KAAK,CAAC,CAAA;YACtE,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAA;IAE3B,iBAAiB;IACjB,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACpC,MAAM,QAAQ,GAAG,EAAE,CAAA;QAEnB,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;QAC5B,CAAC;QAED,IAAI,cAAc,EAAE,CAAC;YACnB,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;QAC5B,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;IAEpD,OAAO;IACP,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,IAAI,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACjD,SAAS,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAClC,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;IAErD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,IAAI,cAAc,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3C,SAAS,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAClC,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;IAElD,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACpB,KAAK;QACL,MAAM;QACN,MAAM;QACN,OAAO;QACP,KAAK;QACL,SAAS;QAET,KAAK;QACL,SAAS;QACT,SAAS;QACT,SAAS;QACT,MAAM;KACP,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;AAC3F,CAAC;AAED,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAA;IAEvC,MAAM,UAAU,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAA;IAChD,MAAM,UAAU,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAAA;IAEpD,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACxC,IAAI,CAAC;YACH,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC1C,SAAiB,CAAC,aAAa,EAAE;gBACjC,SAAiB,CAAC,aAAa,EAAE;aACnC,CAAC,CAAA;YAEF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAA;YACtD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACpB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,UAAU;QACnB,SAAS;QACT,UAAU;KACX,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAA;AACtD,CAAC"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../client/websocket/hooks.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export * from './types';
6
6
  export { WebSocketManager } from './manager';
7
7
  export { MessageHandler } from './messageHandler';
8
8
  export { getWebSocketManager, destroyWebSocketManager, resetWebSocketManager } from './instance';
9
- export { useWebSocket, useConfig, useAllConfigs } from './hooks';
9
+ export { useWebSocket, useConfig, useAllConfigs, useConfigYaml, useEnvFiles, useFiles, useDatabase } from './hooks';
10
10
  import { getWebSocketManager } from './instance';
11
11
  export default getWebSocketManager;
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../client/websocket/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,cAAc,SAAS,CAAA;AAKvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAKjD,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,YAAY,CAAA;AAKnB,OAAO,EACL,YAAY,EACZ,SAAS,EACT,aAAa,EACd,MAAM,SAAS,CAAA;AAKhB,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,eAAe,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../client/websocket/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,cAAc,SAAS,CAAA;AAKvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAKjD,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,YAAY,CAAA;AAKnB,OAAO,EACL,YAAY,EACZ,SAAS,EACT,aAAa,EACb,aAAa,EACb,WAAW,EACX,QAAQ,EACR,WAAW,EACZ,MAAM,SAAS,CAAA;AAKhB,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,eAAe,mBAAmB,CAAA"}
@@ -18,7 +18,7 @@ export { getWebSocketManager, destroyWebSocketManager, resetWebSocketManager } f
18
18
  // ============================================================================
19
19
  // React Hooks
20
20
  // ============================================================================
21
- export { useWebSocket, useConfig, useAllConfigs } from './hooks';
21
+ export { useWebSocket, useConfig, useAllConfigs, useConfigYaml, useEnvFiles, useFiles, useDatabase } from './hooks';
22
22
  // ============================================================================
23
23
  // 默认导出
24
24
  // ============================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../client/websocket/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAC/E,cAAc,SAAS,CAAA;AAEvB,+EAA+E;AAC/E,MAAM;AACN,+EAA+E;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAC/E,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,YAAY,CAAA;AAEnB,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAC/E,OAAO,EACL,YAAY,EACZ,SAAS,EACT,aAAa,EACd,MAAM,SAAS,CAAA;AAEhB,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,eAAe,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../client/websocket/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAC/E,cAAc,SAAS,CAAA;AAEvB,+EAA+E;AAC/E,MAAM;AACN,+EAA+E;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAC/E,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,YAAY,CAAA;AAEnB,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAC/E,OAAO,EACL,YAAY,EACZ,SAAS,EACT,aAAa,EACb,aAAa,EACb,WAAW,EACX,QAAQ,EACR,WAAW,EACZ,MAAM,SAAS,CAAA;AAEhB,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,eAAe,mBAAmB,CAAA"}
@@ -2,7 +2,7 @@
2
2
  * WebSocket 核心管理器
3
3
  * 负责 WebSocket 连接管理、消息发送、重连逻辑等核心功能
4
4
  */
5
- import type { WebSocketConfig, WebSocketCallbacks } from './types';
5
+ import type { WebSocketConfig, WebSocketCallbacks, FileTreeNode, DatabaseInfo, TableInfo, SelectResult, KvEntry } from './types';
6
6
  import { ConnectionState } from './types';
7
7
  export declare class WebSocketManager {
8
8
  private ws;
@@ -45,7 +45,11 @@ export declare class WebSocketManager {
45
45
  /**
46
46
  * 设置插件配置
47
47
  */
48
- setConfig(pluginName: string, config: any): Promise<void>;
48
+ setConfig(pluginName: string, config: any): Promise<{
49
+ success?: boolean;
50
+ reloaded?: boolean;
51
+ message?: string;
52
+ }>;
49
53
  /**
50
54
  * 获取插件 Schema
51
55
  */
@@ -58,6 +62,70 @@ export declare class WebSocketManager {
58
62
  * 获取所有 Schema
59
63
  */
60
64
  getAllSchemas(): Promise<Record<string, any>>;
65
+ getConfigYaml(): Promise<{
66
+ yaml: string;
67
+ pluginKeys: string[];
68
+ }>;
69
+ saveConfigYaml(yaml: string): Promise<{
70
+ success: boolean;
71
+ message?: string;
72
+ }>;
73
+ getEnvList(): Promise<{
74
+ files: Array<{
75
+ name: string;
76
+ exists: boolean;
77
+ }>;
78
+ }>;
79
+ getEnvFile(filename: string): Promise<{
80
+ content: string;
81
+ }>;
82
+ saveEnvFile(filename: string, content: string): Promise<{
83
+ success: boolean;
84
+ message?: string;
85
+ }>;
86
+ getFileTree(): Promise<{
87
+ tree: FileTreeNode[];
88
+ }>;
89
+ readFile(filePath: string): Promise<{
90
+ content: string;
91
+ size: number;
92
+ }>;
93
+ saveFile(filePath: string, content: string): Promise<{
94
+ success: boolean;
95
+ message?: string;
96
+ }>;
97
+ getDbInfo(): Promise<DatabaseInfo>;
98
+ getDbTables(): Promise<{
99
+ tables: TableInfo[];
100
+ }>;
101
+ dbSelect(table: string, page?: number, pageSize?: number, where?: any): Promise<SelectResult>;
102
+ dbInsert(table: string, row: any): Promise<{
103
+ success: boolean;
104
+ }>;
105
+ dbUpdate(table: string, row: any, where: any): Promise<{
106
+ success: boolean;
107
+ affected: number;
108
+ }>;
109
+ dbDelete(table: string, where: any): Promise<{
110
+ success: boolean;
111
+ deleted: number;
112
+ }>;
113
+ dbDropTable(table: string): Promise<{
114
+ success: boolean;
115
+ }>;
116
+ kvGet(table: string, key: string): Promise<{
117
+ key: string;
118
+ value: any;
119
+ }>;
120
+ kvSet(table: string, key: string, value: any, ttl?: number): Promise<{
121
+ success: boolean;
122
+ }>;
123
+ kvDelete(table: string, key: string): Promise<{
124
+ success: boolean;
125
+ }>;
126
+ kvGetEntries(table: string): Promise<{
127
+ entries: KvEntry[];
128
+ }>;
61
129
  /**
62
130
  * 构建 WebSocket URL
63
131
  */