@jsbot-tellus/core 2.8.0 → 2.9.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.
Files changed (64) hide show
  1. package/dist/app/runtime.d.ts +1 -0
  2. package/dist/app/runtime.d.ts.map +1 -1
  3. package/dist/app/runtime.js +1 -0
  4. package/dist/app/runtime.js.map +1 -1
  5. package/dist/app.js +6 -1
  6. package/dist/app.js.map +1 -1
  7. package/dist/core/web/config-store.d.ts.map +1 -1
  8. package/dist/core/web/config-store.js +14 -10
  9. package/dist/core/web/config-store.js.map +1 -1
  10. package/dist/core/web/routes/plugins.d.ts.map +1 -1
  11. package/dist/core/web/routes/plugins.js +73 -15
  12. package/dist/core/web/routes/plugins.js.map +1 -1
  13. package/dist/core/web/types.d.ts +6 -0
  14. package/dist/core/web/types.d.ts.map +1 -1
  15. package/dist/webui/assets/ActionsView-CdRiwzyc.css +1 -0
  16. package/dist/webui/assets/{ActionsView-B3Q3rh2X.js → ActionsView-DpOwcpkP.js} +1 -1
  17. package/dist/webui/assets/ConfigView-BwDaxNs6.css +1 -0
  18. package/dist/webui/assets/ConfigView-C8W7Taes.js +1 -0
  19. package/dist/webui/assets/DashboardView-FAQEqfkT.css +1 -0
  20. package/dist/webui/assets/DashboardView-XR4MljXP.js +1 -0
  21. package/dist/webui/assets/EventsView-D6uxp8iJ.css +1 -0
  22. package/dist/webui/assets/EventsView-dsacXF6v.js +1 -0
  23. package/dist/webui/assets/KvView-ClHfDapd.css +1 -0
  24. package/dist/webui/assets/KvView-CleDcxJm.js +1 -0
  25. package/dist/webui/assets/LoginView-auw7iDds.js +1 -0
  26. package/dist/webui/assets/LoginView-rwItauSQ.css +1 -0
  27. package/dist/webui/assets/LogsView-Crns4wd2.css +1 -0
  28. package/dist/webui/assets/{LogsView-K7nWoSFe.js → LogsView-D94DH0eL.js} +1 -1
  29. package/dist/webui/assets/MainLayout-BLJl7wIh.css +1 -0
  30. package/dist/webui/assets/MainLayout-BSmZGVVc.js +1 -0
  31. package/dist/webui/assets/PluginsView-BrrSON7o.js +1 -0
  32. package/dist/webui/assets/PluginsView-BwP5MkvC.css +1 -0
  33. package/dist/webui/assets/SessionsView-CboU4cCN.js +1 -0
  34. package/dist/webui/assets/SessionsView-DOUCUUrw.css +1 -0
  35. package/dist/webui/assets/index-BX3-wbu2.css +1 -0
  36. package/dist/webui/assets/{index-CFz4VL67.js → index-BjnuYVEl.js} +2 -2
  37. package/dist/webui/assets/use-ui-scale-DvdJkOwB.js +1 -0
  38. package/dist/webui/index.html +8 -7
  39. package/docs/webui.md +1 -1
  40. package/package.json +1 -1
  41. package/src/app/runtime.ts +2 -0
  42. package/src/app.ts +6 -1
  43. package/src/core/web/config-store.ts +18 -12
  44. package/src/core/web/routes/plugins.ts +101 -21
  45. package/src/core/web/types.ts +7 -0
  46. package/dist/webui/assets/ActionsView-Ciib5lC6.css +0 -1
  47. package/dist/webui/assets/ConfigView-Baeqfi8s.js +0 -1
  48. package/dist/webui/assets/ConfigView-CrEpss2y.css +0 -1
  49. package/dist/webui/assets/DashboardView-DLKD8DqF.js +0 -1
  50. package/dist/webui/assets/DashboardView-DR6yCaqs.css +0 -1
  51. package/dist/webui/assets/EventsView-CGUPPvRI.js +0 -1
  52. package/dist/webui/assets/EventsView-PMkYKxZ-.css +0 -1
  53. package/dist/webui/assets/KvView-CaMvbxUz.css +0 -1
  54. package/dist/webui/assets/KvView-CeovApuA.js +0 -1
  55. package/dist/webui/assets/LoginView-BVnFkwSW.css +0 -1
  56. package/dist/webui/assets/LoginView-C2cfmXmS.js +0 -1
  57. package/dist/webui/assets/LogsView-NR4L1-XY.css +0 -1
  58. package/dist/webui/assets/MainLayout-bySbvMWB.js +0 -1
  59. package/dist/webui/assets/MainLayout-qhsp--2k.css +0 -1
  60. package/dist/webui/assets/PluginsView-DL9OxGph.css +0 -1
  61. package/dist/webui/assets/PluginsView-DQZu8in1.js +0 -1
  62. package/dist/webui/assets/SessionsView-C0vTCqqE.js +0 -1
  63. package/dist/webui/assets/SessionsView-p-u3JGTV.css +0 -1
  64. package/dist/webui/assets/index-Cs8jafCm.css +0 -1
@@ -106,6 +106,7 @@ export interface WebUiDepsOptions {
106
106
  events: EventFeed;
107
107
  store: ConfigStore;
108
108
  getCurrentConfig: () => AppConfig;
109
+ getPlugins: () => AnyPluginDefinition[];
109
110
  getRuntime: () => Runtime | null;
110
111
  getGeneration: () => number;
111
112
  restart: () => Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/app/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/app/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAGlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAOzD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AACzD,OAAO,EAKH,KAAK,MAAM,EACd,MAAM,2BAA2B,CAAA;AAGlC,OAAO,KAAK,EACR,mBAAmB,EACnB,eAAe,EAClB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,KAAK,EACR,YAAY,EACZ,SAAS,EAEZ,MAAM,sBAAsB,CAAA;AAG7B,eAAO,MAAM,gBAAgB,YAAY,CAAA;AAEzC,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,mBAAmB,EAAE,CAAA;CACjC;AAED,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,SAAS,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,mBAAmB,EAAE,CAAA;CACjC;AAED,MAAM,WAAW,OAAO;IACpB,IAAI,EAAE,WAAW,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,QAAQ,CAAA;IAClB,SAAS,EAAE,eAAe,CAAA;CAC7B;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,SAAS,CAAA;IACf,MAAM,EAAE,SAAS,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAA;CAC5C;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CAkBzE;AAED,MAAM,WAAW,6BAA6B;IAC1C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;CACzB;AAED,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,6BAA6B,GACvC,eAAe,CAgBjB;AAED,wBAAgB,YAAY,CACxB,OAAO,EAAE,YAAY,EAAE,EACvB,MAAM,EAAE,MAAM,GACf,mBAAmB,EAAE,CAqBvB;AAED,wBAAsB,eAAe,CACjC,QAAQ,EAAE,eAAe,GAC1B,OAAO,CAAC,WAAW,CAAC,CAgCtB;AAED,wBAAgB,aAAa,CACzB,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,MAAM,IAAI,EACrB,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GACxC,OAAO,CA+BT;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAMpD;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAI7D;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWjE;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAWrD;AAED,wBAAgB,qBAAqB,IAAI,CAAC,CAAC,EACvC,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KACrB,OAAO,CAAC,CAAC,CAAC,CAad;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,GAAG,MAAM,CAIpE;AAED,MAAM,WAAW,0BAA0B;IACvC,IAAI,EAAE,WAAW,CAAA;IACjB,QAAQ,EAAE,eAAe,CAAA;IACzB,cAAc,EAAE,MAAM,IAAI,CAAA;IAC1B,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAA;IACvC,gBAAgB,EAAE,MAAM,SAAS,CAAA;IACjC,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAA;IAC7C,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,oBAAoB;IACjC,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,WAAW,EAAE,MAAM,CAAA;CACtB;AAED,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,0BAA0B,GACpC,OAAO,CAAC,oBAAoB,CAAC,CAwC/B;AAED,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,MAAM,OAAO,CAAA;IAC7B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,UAAU,EAAE,MAAM,OAAO,GAAG,IAAI,CAAA;IAChC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAClC;AAED,wBAAgB,cAAc,CAC1B,OAAO,EAAE,eAAe,GACzB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAiBtD;AAED,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAC/D,IAAI,CAQN;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAa7E;AAED,MAAM,WAAW,uBAAuB;IACpC,cAAc,EAAE,MAAM,OAAO,CAAA;IAC7B,YAAY,EAAE,MAAM,OAAO,CAAA;IAC3B,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,IAAI,IAAI,CAAA;IACf,KAAK,IAAI,IAAI,CAAA;CAChB;AAED,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,uBAAuB,GACjC,gBAAgB,CA0BlB;AAED,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,SAAS,CAAA;IACf,MAAM,EAAE,SAAS,CAAA;IACjB,KAAK,EAAE,WAAW,CAAA;IAClB,gBAAgB,EAAE,MAAM,SAAS,CAAA;IACjC,UAAU,EAAE,MAAM,mBAAmB,EAAE,CAAA;IACvC,UAAU,EAAE,MAAM,OAAO,GAAG,IAAI,CAAA;IAChC,aAAa,EAAE,MAAM,MAAM,CAAA;IAC3B,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/B,cAAc,EAAE,MAAM,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,YAAY,GAAG,IAAI,CAAA;IACvC,kBAAkB,EAAE,MAAM,IAAI,CAAA;IAC9B,YAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IACvD,YAAY,EAAE,MAAM,OAAO,CAAA;IAC3B,eAAe,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IACpC,aAAa,EAAE,MAAM,aAAa,GAAG,IAAI,CAAA;CAC5C;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAsDpE"}
@@ -256,6 +256,7 @@ export function createWebUiDeps(options) {
256
256
  logs: options.logs,
257
257
  events: options.events,
258
258
  getWebUiConfig: () => options.getCurrentConfig().webui,
259
+ getPlugins: () => options.getPlugins(),
259
260
  readConfig: () => options.store.read(),
260
261
  validateConfig: (value) => options.store.validate(value),
261
262
  applyConfig: (value, baseHash) => options.store.apply(value, baseHash),
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/app/runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEzC,OAAO,EACH,UAAU,EACV,iBAAiB,EACjB,cAAc,GACjB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AACzD,OAAO,EACH,YAAY,EACZ,cAAc,EACd,aAAa,GAGhB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAK3D,OAAO,EAAE,YAAY,EAAiB,MAAM,6BAA6B,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAMrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAAA;AAuCzC,MAAM,UAAU,gBAAgB,CAAC,QAA4B;IACzD,MAAM,IAAI,GAAG,IAAI,SAAS,EAAE,CAAA;IAC5B,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;IAC9B,MAAM,SAAS,GAAG,CAAC,KAAoB,EAAQ,EAAE;QAC7C,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACrB,CAAC,CAAA;IACD,MAAM,IAAI,GAAY,CAAC,MAAM,EAAE,EAAE;QAC7B,cAAc,CAAC,MAAM,CAAC,CAAA;QACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,MAAM,GAAG,YAAY,CAAC;QACxB,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC;QAC9B,KAAK,EAAE,KAAK;QACZ,IAAI;KACP,CAAC,CAAA;IAEF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;AAC9C,CAAC;AAQD,MAAM,UAAU,sBAAsB,CAClC,MAAc,EACd,OAAsC;IAEtC,MAAM,UAAU,GAAG,iBAAiB,CAAC;QACjC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG,EAAE,OAAO,CAAC,GAAG;KACnB,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,cAAc,CAAC;QAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,GAAG,EAAE,OAAO,CAAC,GAAG;KACnB,CAAC,CAAA;IAEF,OAAO;QACH,MAAM;QACN,UAAU;QACV,OAAO;KACV,CAAA;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CACxB,OAAuB,EACvB,MAAc;IAEd,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,OAAO,GAA0B,EAAE,CAAA;IAEzC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAA;YAE7B,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CACP,YAAY,MAAM,CAAC,KAAK,WAAW,EAAE,4BAA4B,CACpE,CAAA;gBACD,SAAQ;YACZ,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACZ,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACxB,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAA;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACjC,QAAyB;IAEzB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;IAE3B,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;IAElD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IACpD,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAE3C,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAA;IAE9C,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE;QAC3D,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,SAAS;KAC7C,CAAC,CAAA;IAEF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,UAAU,YAAY,CAAC,MAAM,mBAAmB,SAAS,EAAE,CAAC,CAAA;IAC5E,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CACxB;QACI,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE;QAC9C,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE;KAC9C,EACD,MAAM,CACT,CAAA;IAED,OAAO;QACH,MAAM;QACN,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,SAAS;QACT,OAAO;KACV,CAAA;AACL,CAAC;AAED,MAAM,UAAU,aAAa,CACzB,IAAiB,EACjB,QAAyB,EACzB,SAAqB,EACrB,OAAuC;IAEvC,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;IAC3B,MAAM,SAAS,GAAG,IAAI,kBAAkB,CAAC;QACrC,GAAG,EAAE,IAAI,CAAC,SAAS;QACnB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;QAC7B,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;QACjC,WAAW,EAAE,GAAG,EAAE,CACd,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7D,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACvE,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IAExD,MAAM,MAAM,GAAG,eAAe,CAAC;QAC3B,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;QACpB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW;YACvB,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAC1C,CAAC,CAAC,EAAE,CAAC;KACZ,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;QACtB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM;QACN,MAAM;QACN,QAAQ;QACR,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,SAAS;QACT,SAAS;QACT,OAAO;KACV,CAAC,CAAA;IAEF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAc;IACxC,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAA;IAC3D,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAiB;IACjD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;IAE1B,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAC9C,MAAM,UAAU,GAAG;QACf,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;QACxB,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC;KACvC,CAAA;IAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACjC,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;YAAE,OAAO,SAAS,CAAA;IACnE,CAAC;IAED,OAAO,IAAI,CAAA;AACf,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,SAAiB;IACzC,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAA;QACrD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAEnD,CAAA;QAED,OAAO,GAAG,CAAC,OAAO,IAAI,SAAS,CAAA;IACnC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,SAAS,CAAA;IACpB,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB;IAGjC,IAAI,IAAI,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAA;IAE9C,OAAO,CAAI,IAAsB,EAAc,EAAE;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAEjC,IAAI,GAAG,GAAG,CAAC,IAAI,CACX,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAClB,CAAA;QAED,OAAO,GAAG,CAAA;IACd,CAAC,CAAA;AACL,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAwB;IACxD,MAAM,cAAc,GAAG,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,IAAI,KAAK,CAAA;IAEzE,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AACtD,CAAC;AAqBD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,OAAmC;IAEnC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAC/D,OAAO,CAAA;IACX,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;IAE3B,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAA;QAEtE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAE3B,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QAE5B,MAAM,WAAW,GAAG,mBAAmB,CAAC,gBAAgB,EAAE,CAAC,CAAA;QAE3D,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAE9B,OAAO;YACH,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,IAAI;YAClB,WAAW;SACd,CAAA;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAExB,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAA;QAE7C,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,OAAO,CAAC,SAAS,EAAE,CAAA;QAC7B,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,IAAI,CACP,sFAAsF,CACzF,CAAA;QACL,CAAC;QAED,OAAO;YACH,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,YAAY,EAAE,aAAa,CAAC,KAAK,CAAC;YAClC,WAAW,EAAE,OAAO,CAAC,WAAW;SACnC,CAAA;IACL,CAAC;AACL,CAAC;AAUD,MAAM,UAAU,cAAc,CAC1B,OAAwB;IAExB,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAG,CAAC,EAAE,EAAE;QAClC,IAAI,OAAO,CAAC,cAAc,EAAE;YAAE,OAAM;QAEpC,OAAO,CAAC,OAAO,EAAE,CAAA;QAEjB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,iBAAiB,CAAC,CAAA;QAExD,IAAI,CAAC;YACD,MAAM,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,CAAA;YACzC,MAAM,OAAO,CAAC,UAAU,EAAE,CAAA;YAC1B,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC,CAAA;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB,CACnC,QAA8D;IAE9D,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,KAAK,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,KAAK,QAAQ,CAAC,SAAS,CAAC,CAAA;IAC5B,CAAC,CAAC,CAAA;AACN,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAI,GAAqB;IACvD,IAAI,IAAI,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAA;IAE9C,OAAO,GAAG,EAAE;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAElC,IAAI,GAAG,MAAM,CAAC,IAAI,CACd,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAClB,CAAA;QAED,OAAO,MAAM,CAAA;IACjB,CAAC,CAAA;AACL,CAAC;AAcD,MAAM,UAAU,sBAAsB,CAClC,OAAgC;IAEhC,IAAI,KAAK,GAA0B,IAAI,CAAA;IAEvC,OAAO;QACH,OAAO,EAAE,GAAG,EAAE;YACV,IAAI,OAAO,CAAC,cAAc,EAAE;gBAAE,OAAM;YAEpC,IAAI,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;gBACzB,OAAO,CAAC,WAAW,EAAE,CAAA;gBACrB,OAAM;YACV,CAAC;YAED,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAM;YAE1B,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBACpB,KAAK,GAAG,IAAI,CAAA;gBACZ,KAAK,OAAO,CAAC,OAAO,EAAE,CAAA;YAC1B,CAAC,EAAE,GAAG,CAAC,CAAA;QACX,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACR,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAM;YAE1B,YAAY,CAAC,KAAK,CAAC,CAAA;YACnB,KAAK,GAAG,IAAI,CAAA;QAChB,CAAC;KACJ,CAAA;AACL,CAAC;AAyBD,MAAM,UAAU,eAAe,CAAC,OAAyB;IACrD,OAAO;QACH,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;QACrC,KAAK,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC/B;QACD,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,cAAc,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,KAAK;QACtD,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;QACtC,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;QACxD,WAAW,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC;QACtE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QAChC,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,KAAK,EAAE;QACjD,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE;QACnD,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE;QAC1C,kBAAkB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE;QACtD,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC;QAClD,UAAU,EAAE,GAAwB,EAAE;YAClC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAA;YAEpC,OAAO,OAAO,KAAK,IAAI;gBACnB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC;oBACI,UAAU,EAAE,OAAO,CAAC,aAAa,EAAE;oBACnC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;oBAC3B,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG;oBACvB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;iBAChC,CAAA;QACX,CAAC;QACD,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE;QAC1C,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE;QAChD,yBAAyB,EAAE,GAAG,EAAE;YAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAA;YAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAA;YAE1C,IAAI,UAAU,KAAK,IAAI;gBAAE,OAAO,KAAK,CAAC,OAAO,CAAA;YAE7C,IAAI,CAAC,KAAK,CAAC,OAAO;gBAAE,OAAO,IAAI,CAAA;YAE/B,OAAO,CACH,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CACnE,CAAA;QACL,CAAC;KACJ,CAAA;AACL,CAAC"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/app/runtime.ts"],"names":[],"mappings":"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"}
package/dist/app.js CHANGED
@@ -23,6 +23,9 @@ async function main() {
23
23
  // Config file errors remain fatal: there is nothing the WebUI can restore
24
24
  // from when the config cannot even be parsed.
25
25
  const initialSpec = await loadRuntimeSpec(settings);
26
+ // Keep the last successfully loaded definitions even when the kernel fails
27
+ // to start, so the WebUI can still render and validate plugin configs.
28
+ let latestSpec = initialSpec;
26
29
  let runtime = null;
27
30
  let currentConfig = initialSpec.config;
28
31
  let generation = 0;
@@ -55,6 +58,7 @@ async function main() {
55
58
  if (shuttingDown)
56
59
  return false;
57
60
  const spec = await loadRuntimeSpec(settings);
61
+ latestSpec = spec;
58
62
  currentConfig = spec.config;
59
63
  const next = createRuntime(spec, settings, requestRestart, tapEvents);
60
64
  runtime = next;
@@ -95,7 +99,7 @@ async function main() {
95
99
  const requestRestart = restartRequester.request;
96
100
  const store = new ConfigStore({
97
101
  configPath,
98
- getPlugins: () => runtime?.spec.plugins ?? [],
102
+ getPlugins: () => latestSpec.plugins,
99
103
  restart: () => restartRuntime(),
100
104
  });
101
105
  const runExclusive = createExclusiveRunner();
@@ -110,6 +114,7 @@ async function main() {
110
114
  events,
111
115
  store,
112
116
  getCurrentConfig: () => currentConfig,
117
+ getPlugins: () => latestSpec.plugins,
113
118
  getRuntime: () => runtime,
114
119
  getGeneration: () => generation,
115
120
  restart: () => restartRuntime(),
package/dist/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EACH,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,WAAW,EACX,uBAAuB,EACvB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GAGtB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAGlD,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAE1D,KAAK,UAAU,IAAI;IACf,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAA;IAEtB,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC3B,OAAM;IACV,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,gBAAgB,CACxD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAClD,CAAA;IAED,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,EAAE;QAC5C,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QACxB,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;QAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;KACnB,CAAC,CAAA;IAEF,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAA;IAExC,0EAA0E;IAC1E,8CAA8C;IAC9C,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAA;IAEnD,2EAA2E;IAC3E,uEAAuE;IACvE,IAAI,UAAU,GAAG,WAAW,CAAA;IAC5B,IAAI,OAAO,GAAmB,IAAI,CAAA;IAClC,IAAI,aAAa,GAAc,WAAW,CAAC,MAAM,CAAA;IACjD,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,IAAI,YAAY,GAAkB,IAAI,CAAA;IACtC,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,IAAI,UAAU,GAAG,KAAK,CAAA;IACtB,IAAI,cAAc,GAAG,KAAK,CAAA;IAC1B,IAAI,UAAU,GAAyB,IAAI,CAAA;IAC3C,IAAI,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAEzD,MAAM,kBAAkB,GAAG,KAAK,IAAsB,EAAE;QACpD,IAAI,YAAY;YAAE,OAAO,KAAK,CAAA;QAE9B,UAAU,GAAG,IAAI,CAAA;QACjB,cAAc,GAAG,KAAK,CAAA;QAEtB,MAAM,QAAQ,GAAG,OAAO,CAAA;QAExB,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;QAEjC,IAAI,CAAC;YACD,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,CAAA;YAExB,MAAM,YAAY,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAA;YAElD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACpB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;gBAEzD,IAAI,CAAC,OAAO,EAAE,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAA;gBAC9D,CAAC;gBAED,cAAc,GAAG,KAAK,CAAA;gBAEtB,IAAI,YAAY;oBAAE,OAAO,KAAK,CAAA;gBAE9B,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;YAChC,CAAC;YAED,IAAI,YAAY;gBAAE,OAAO,KAAK,CAAA;YAE9B,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAA;YAE5C,UAAU,GAAG,IAAI,CAAA;YACjB,aAAa,GAAG,IAAI,CAAC,MAAM,CAAA;YAE3B,MAAM,IAAI,GAAG,aAAa,CACtB,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,SAAS,CACZ,CAAA;YAED,OAAO,GAAG,IAAI,CAAA;YACd,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;YAEzB,UAAU,IAAI,CAAC,CAAA;YACf,YAAY,GAAG,IAAI,CAAA;YAEnB,MAAM,SAAS,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAA;YAEpD,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;gBAC5B,WAAW,GAAG,SAAS,CAAA;gBACvB,MAAM,CAAC,kBAAkB,EAAE,CAAA;YAC/B,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;YAEhC,OAAO,IAAI,CAAA;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,IAAI,CAAA;YACd,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;YACnC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAA;YAE7C,OAAO,KAAK,CAAA;QAChB,CAAC;gBAAS,CAAC;YACP,UAAU,GAAG,KAAK,CAAA;YAElB,IAAI,cAAc,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClC,cAAc,GAAG,KAAK,CAAA;gBACtB,cAAc,EAAE,CAAA;YACpB,CAAC;QACL,CAAC;IACL,CAAC,CAAA;IAED,MAAM,cAAc,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAAA;IAE7D,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;QAC5C,cAAc,EAAE,GAAG,EAAE,CAAC,YAAY;QAClC,YAAY,EAAE,GAAG,EAAE,CAAC,UAAU;QAC9B,WAAW,EAAE,GAAG,EAAE;YACd,cAAc,GAAG,IAAI,CAAA;QACzB,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE;KAClC,CAAC,CAAA;IAEF,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAA;IAE/C,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC;QAC1B,UAAU;QACV,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO;QACpC,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE;KAClC,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,qBAAqB,EAAE,CAAA;IAE5C,MAAM,IAAI,GAAG,eAAe,CAAC;QACzB,MAAM;QACN,UAAU;QACV,OAAO;QACP,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,SAAS,EAAE,gBAAgB,CAAC,UAAU,CAAC;QACvC,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC;QAChC,IAAI;QACJ,MAAM;QACN,KAAK;QACL,gBAAgB,EAAE,GAAG,EAAE,CAAC,aAAa;QACrC,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO;QACpC,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO;QACzB,aAAa,EAAE,GAAG,EAAE,CAAC,UAAU;QAC/B,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE;QAC/B,cAAc;QACd,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO;QAClC,kBAAkB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,EAAE;QACrD,YAAY;QACZ,YAAY,EAAE,GAAG,EAAE,CAAC,UAAU;QAC9B,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY;QACnC,aAAa,EAAE,GAAG,EAAE,CAAC,UAAU;KAClC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC;QAC3B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK;QAChC,IAAI;KACP,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC5B,MAAM;QACN,cAAc,EAAE,GAAG,EAAE,CAAC,YAAY;QAClC,OAAO,EAAE,GAAG,EAAE;YACV,YAAY,GAAG,IAAI,CAAA;YACnB,gBAAgB,CAAC,KAAK,EAAE,CAAA;QAC5B,CAAC;QACD,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO;QACzB,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE;KAClC,CAAC,CAAA;IAEF,uBAAuB,CAAC,QAAQ,CAAC,CAAA;IAEjC,2EAA2E;IAC3E,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,OAAO,GAAwB,MAAM,MAAM,CAAC,KAAK,CACnD,WAAW,CAAC,MAAM,CAAC,KAAK,CAC3B,CAAA;QAED,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACnB,UAAU,GAAG;gBACT,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;aACrB,CAAA;QACL,CAAC;IACL,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC;QACtC,IAAI,EAAE,WAAW;QACjB,QAAQ;QACR,cAAc;QACd,OAAO,EAAE,SAAS;QAClB,gBAAgB,EAAE,GAAG,EAAE,CAAC,aAAa;QACrC,QAAQ,EAAE,UAAU,KAAK,IAAI;QAC7B,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC/C,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;YAClB,OAAO,GAAG,KAAK,CAAA;QACnB,CAAC;QACD,UAAU;QACV,WAAW;KACd,CAAC,CAAA;IAEF,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;IAC/B,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;IACnC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;AACrC,CAAC;AAED,MAAM,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAClC,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAChC,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CACT,KAAK,YAAY,KAAK;YAClB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC;YAChC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACtB,CAAA;IACL,CAAC;IAED,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;AACxB,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"config-store.d.ts","sourceRoot":"","sources":["../../../src/core/web/config-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAGH,KAAK,SAAS,EAEjB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,KAAK,EACR,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACzB,MAAM,YAAY,CAAA;AAEnB,qBAAa,gBAAiB,SAAQ,KAAK;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;IAExC,YACI,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,qBAAqB,EAAO,EAMvC;CACJ;AAED,MAAM,WAAW,kBAAkB;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,IAAI,mBAAmB,EAAE,CAAA;IACnC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9B;AAUD,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAiC3E;AAED,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,cAAc,EAAE,OAAO,CAAA;IACvB,gBAAgB,EAAE,OAAO,CAAA;CAC5B;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,YAAY,CAkB1D;AA4FD,qBAAa,WAAW;IAGR,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,OAAO,CAAC,IAAI,CAAsC;IAElD,YAA6B,OAAO,EAAE,kBAAkB,EAAI;IAEtD,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC,CAwCpC;IAEK,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAiB9D;IAED,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAwDnE;IAED,OAAO,CAAC,SAAS;CAUpB"}
1
+ {"version":3,"file":"config-store.d.ts","sourceRoot":"","sources":["../../../src/core/web/config-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAGH,KAAK,SAAS,EAEjB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,KAAK,EACR,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACzB,MAAM,YAAY,CAAA;AAEnB,qBAAa,gBAAiB,SAAQ,KAAK;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;IAExC,YACI,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,qBAAqB,EAAO,EAMvC;CACJ;AAED,MAAM,WAAW,kBAAkB;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,IAAI,mBAAmB,EAAE,CAAA;IACnC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9B;AAUD,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAiC3E;AAED,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,cAAc,EAAE,OAAO,CAAA;IACvB,gBAAgB,EAAE,OAAO,CAAA;CAC5B;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,YAAY,CAkB1D;AA6FD,qBAAa,WAAW;IAGR,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,OAAO,CAAC,IAAI,CAAsC;IAElD,YAA6B,OAAO,EAAE,kBAAkB,EAAI;IAEtD,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC,CAwCpC;IAEK,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAsB9D;IAED,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAwDnE;IAED,OAAO,CAAC,SAAS;CAUpB"}
@@ -78,21 +78,24 @@ function issuesFrom(zodIssues) {
78
78
  function validatePlugins(config, definitions) {
79
79
  const issues = [];
80
80
  const byId = new Map(definitions.map((definition) => [definition.manifest.id, definition]));
81
- for (const [id, envelope] of Object.entries(config.plugins)) {
82
- const definition = byId.get(id);
83
- if (!definition) {
81
+ for (const id of Object.keys(config.plugins)) {
82
+ if (!byId.has(id)) {
84
83
  issues.push({
85
84
  path: `plugins.${id}`,
86
85
  message: `unknown plugin id: ${id}`,
87
86
  });
88
- continue;
89
87
  }
90
- const enabled = envelope.enabled ??
91
- definition.manifest.defaultEnabled ??
92
- false;
88
+ }
89
+ // Validate every enabled plugin, not only the ones already present in the
90
+ // config file. A newly installed plugin has no envelope yet; validating it
91
+ // here surfaces missing required options before the runtime is restarted.
92
+ for (const definition of definitions) {
93
+ const id = definition.manifest.id;
94
+ const envelope = config.plugins[id];
95
+ const enabled = envelope?.enabled ?? definition.manifest.defaultEnabled ?? false;
93
96
  if (!enabled)
94
97
  continue;
95
- const result = definition.manifest.configSchema.safeParse(stripPluginEnvelope(envelope));
98
+ const result = definition.manifest.configSchema.safeParse(stripPluginEnvelope(envelope ?? {}));
96
99
  if (!result.success) {
97
100
  issues.push(...issuesFrom(result.error.issues).map((issue) => ({
98
101
  path: `plugins.${id}${issue.path.length > 0 ? `.${issue.path}` : ''}`,
@@ -170,9 +173,10 @@ export class ConfigStore {
170
173
  issues: issuesFrom(parsed.error.issues),
171
174
  };
172
175
  }
176
+ const pluginIssues = validatePlugins(parsed.data, this.options.getPlugins());
173
177
  return {
174
- ok: true,
175
- issues: validatePlugins(parsed.data, this.options.getPlugins()),
178
+ ok: pluginIssues.length === 0,
179
+ issues: pluginIssues,
176
180
  config: parsed.data,
177
181
  };
178
182
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config-store.js","sourceRoot":"","sources":["../../../src/core/web/config-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-store.js","sourceRoot":"","sources":["../../../src/core/web/config-store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../../../src/core/web/routes/plugins.ts"],"names":[],"mappings":"AAEA,OAAO,EAA4B,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AAIvE,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAsCtE;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA0D1E;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA4C1E"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../../../src/core/web/routes/plugins.ts"],"names":[],"mappings":"AAKA,OAAO,EAA4B,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AAqCvE,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAqDtE;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAuF1E;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA4C1E"}
@@ -1,34 +1,73 @@
1
+ import { z } from 'zod';
2
+ import { formatConfigIssues } from '../../config/schema.js';
1
3
  import { stripPluginEnvelope } from '../../plugin/host.js';
2
4
  import { HttpError, isRecord, readJsonBody, sendData } from '../http.js';
3
5
  import { asRecord, requireRuntime } from './shared.js';
4
6
  const ENVELOPE_KEYS = new Set(['enabled', 'private', 'groups']);
7
+ /**
8
+ * JSON Schema for a plugin's options, derived from its Zod input schema once
9
+ * per definition. `null` means the schema cannot be represented and the WebUI
10
+ * falls back to raw JSON editing.
11
+ */
12
+ const jsonSchemaCache = new WeakMap();
13
+ function pluginJsonSchema(definition) {
14
+ if (jsonSchemaCache.has(definition)) {
15
+ return jsonSchemaCache.get(definition) ?? null;
16
+ }
17
+ let result = null;
18
+ try {
19
+ result = z.toJSONSchema(definition.manifest.configSchema, {
20
+ io: 'input',
21
+ unrepresentable: 'any',
22
+ });
23
+ }
24
+ catch {
25
+ result = null;
26
+ }
27
+ jsonSchemaCache.set(definition, result);
28
+ return result;
29
+ }
5
30
  export async function handlePluginsList(ctx) {
6
- const runtime = requireRuntime(ctx.deps);
7
- const statuses = new Map(runtime.kernel.listPlugins().map((entry) => [entry.id, entry]));
8
- const plugins = runtime.plugins.map((definition) => {
31
+ const runtime = ctx.deps.getRuntime();
32
+ // The kernel can fail to start (for example when a plugin has no config
33
+ // yet). Keep serving the last loaded definitions so the WebUI can still
34
+ // edit plugin configs and recover without touching the file by hand.
35
+ const definitions = runtime?.plugins ?? ctx.deps.getPlugins();
36
+ const statuses = new Map((runtime?.kernel.listPlugins() ?? []).map((entry) => [entry.id, entry]));
37
+ const document = await ctx.deps.readConfig();
38
+ const plugins = definitions.map((definition) => {
9
39
  const id = definition.manifest.id;
10
40
  const status = statuses.get(id);
11
- const envelope = asRecord(runtime.config.plugins[id]);
41
+ const envelope = asRecord(document.config.plugins[id]);
42
+ // `safeStringify` treats shared references as circular; cloning keeps
43
+ // `config` and `options` from aliasing the same nested objects.
44
+ const options = structuredClone(stripPluginEnvelope(envelope));
45
+ const enabled = status?.enabled ??
46
+ (typeof envelope['enabled'] === 'boolean'
47
+ ? envelope['enabled']
48
+ : (definition.manifest.defaultEnabled ?? false));
12
49
  return {
13
50
  id,
14
51
  version: definition.manifest.version,
15
52
  description: definition.manifest.description,
16
53
  dependencies: definition.manifest.dependencies ?? [],
17
54
  defaultEnabled: definition.manifest.defaultEnabled ?? false,
18
- enabled: status?.enabled ?? false,
55
+ enabled,
19
56
  loaded: status?.loaded ?? false,
20
57
  config: envelope,
21
- options: stripPluginEnvelope(envelope),
58
+ options,
59
+ configSchema: pluginJsonSchema(definition),
22
60
  };
23
61
  });
24
- const installed = runtime.installer.enabled
25
- ? await runtime.installer.list()
62
+ const installer = runtime?.installer;
63
+ const installed = installer !== undefined && installer.enabled
64
+ ? await installer.list()
26
65
  : [];
27
66
  sendData(ctx.res, 200, {
28
67
  plugins,
29
68
  installed,
30
- installerEnabled: runtime.installer.enabled,
31
- configHash: (await ctx.deps.readConfig()).hash,
69
+ installerEnabled: installer?.enabled ?? false,
70
+ configHash: document.hash,
32
71
  });
33
72
  }
34
73
  export async function handlePluginConfigPut(ctx) {
@@ -37,10 +76,13 @@ export async function handlePluginConfigPut(ctx) {
37
76
  const document = await ctx.deps.readConfig();
38
77
  if (id === undefined)
39
78
  throw new HttpError(404, 'unknown plugin');
40
- if (!isRecord(document.config.plugins[id])) {
79
+ const runtime = ctx.deps.getRuntime();
80
+ const definition = (runtime?.plugins ?? ctx.deps.getPlugins()).find((plugin) => plugin.manifest.id === id);
81
+ const entry = document.config.plugins[id];
82
+ if (definition === undefined && entry === undefined) {
41
83
  throw new HttpError(404, `unknown plugin: ${id}`);
42
84
  }
43
- const existing = asRecord(document.config.plugins[id]);
85
+ const existing = asRecord(entry);
44
86
  const next = { ...existing };
45
87
  if (typeof body['enabled'] === 'boolean') {
46
88
  next['enabled'] = body['enabled'];
@@ -54,13 +96,29 @@ export async function handlePluginConfigPut(ctx) {
54
96
  if (!isRecord(body['options'])) {
55
97
  throw new HttpError(400, 'options must be an object');
56
98
  }
99
+ const options = {};
100
+ for (const [key, value] of Object.entries(body['options'])) {
101
+ if (!ENVELOPE_KEYS.has(key))
102
+ options[key] = value;
103
+ }
57
104
  for (const key of Object.keys(next)) {
58
105
  if (!ENVELOPE_KEYS.has(key))
59
106
  delete next[key];
60
107
  }
61
- for (const [key, value] of Object.entries(body['options'])) {
62
- if (!ENVELOPE_KEYS.has(key))
63
- next[key] = value;
108
+ if (definition === undefined) {
109
+ // Without a live runtime there is no schema to enforce; the config
110
+ // store still owns envelope validation.
111
+ Object.assign(next, options);
112
+ }
113
+ else {
114
+ const parsed = definition.manifest.configSchema.safeParse(options);
115
+ if (!parsed.success) {
116
+ throw new HttpError(400, formatConfigIssues(parsed.error, `plugins.${id}`));
117
+ }
118
+ if (!isRecord(parsed.data)) {
119
+ throw new HttpError(400, `plugins.${id}: config schema must produce an object`);
120
+ }
121
+ Object.assign(next, parsed.data);
64
122
  }
65
123
  }
66
124
  const config = {
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../../src/core/web/routes/plugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../../src/core/web/routes/plugins.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,12 @@ export interface WebUiDeps {
54
54
  events: EventFeed;
55
55
  /** Current webui settings; picked up after runtime restarts. */
56
56
  getWebUiConfig(): WebUiConfig;
57
+ /**
58
+ * Plugin definitions from the last successfully loaded runtime spec.
59
+ * Unlike `getRuntime()`, this stays available when the kernel fails to
60
+ * start, so plugin configs can still be edited from the WebUI.
61
+ */
62
+ getPlugins(): AnyPluginDefinition[];
57
63
  readConfig(): Promise<ConfigDocument>;
58
64
  validateConfig(value: unknown): Promise<ConfigValidationResult>;
59
65
  applyConfig(value: unknown, baseHash?: string | undefined): Promise<ConfigApplyResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/web/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/web/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ .block[data-v-c0ee4f70]{margin-bottom:1rem}.result[data-v-c0ee4f70]{background:var(--app-bg);border:1px solid var(--app-border);color:var(--app-text);white-space:pre-wrap;border-radius:.625rem;min-height:5rem;margin:0;padding:.75rem;font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:.75rem}
@@ -1 +1 @@
1
- import{Ai as e,Ci as t,Ei as n,_a as r,ai as i,c as a,ci as o,d as s,f as c,li as l,ni as u,p as d,qi as f,r as p,ui as m,zi as h}from"./api-Bm2KUKXH.js";var g={class:`result`},_=c(m({__name:`ActionsView`,setup(c){let m=f(`get_login_info`),_=f(`{}`),v=f(``),y=f(!1),b=f(!0),x=async()=>{let e={};if(_.value.trim().length>0&&_.value.trim()!==`{}`)try{e=JSON.parse(_.value)}catch{d.error(`params 必须是合法 JSON`);return}y.value=!0;try{let t=await p(`/api/actions`,{action:m.value,params:e});v.value=JSON.stringify(t.result,void 0,2)}catch(e){s(e)}finally{y.value=!1}};return t(()=>{a().then(e=>{b.value=e.runtime===null}).catch(()=>{b.value=!0})}),(t,a)=>{let s=e(`el-alert`),c=e(`el-input`),d=e(`el-form-item`),f=e(`el-button`),p=e(`el-form`),S=e(`el-divider`),C=e(`el-card`);return n(),i(`div`,null,[l(s,{title:`直接向 OneBot 调用任意 action。此功能等同完全特权接口,请谨慎使用。`,type:`warning`,closable:!1,class:`block`}),l(C,{class:`block`},{default:h(()=>[l(p,{"label-width":`100px`,size:`small`},{default:h(()=>[l(d,{label:`action`},{default:h(()=>[l(c,{modelValue:m.value,"onUpdate:modelValue":a[0]||=e=>m.value=e,placeholder:`如 get_login_info / send_private_msg`,style:{width:`320px`}},null,8,[`modelValue`])]),_:1}),l(d,{label:`params (JSON)`},{default:h(()=>[l(c,{modelValue:_.value,"onUpdate:modelValue":a[1]||=e=>_.value=e,type:`textarea`,rows:5,spellcheck:`false`,placeholder:`{}`},null,8,[`modelValue`])]),_:1}),l(d,null,{default:h(()=>[l(f,{type:`primary`,loading:y.value,disabled:b.value,onClick:x},{default:h(()=>[...a[2]||=[o(` 调用 `,-1)]]),_:1},8,[`loading`,`disabled`])]),_:1})]),_:1}),l(S,null,{default:h(()=>[...a[3]||=[o(`结果`,-1)]]),_:1}),u(`pre`,g,r(v.value),1)]),_:1})])}}}),[[`__scopeId`,`data-v-ceeaf662`]]);export{_ as default};
1
+ import{Ai as e,Ci as t,Ei as n,_a as r,ai as i,c as a,ci as o,d as s,f as c,li as l,ni as u,p as d,qi as f,r as p,ui as m,zi as h}from"./api-Bm2KUKXH.js";var g={class:`result`},_=c(m({__name:`ActionsView`,setup(c){let m=f(`get_login_info`),_=f(`{}`),v=f(``),y=f(!1),b=f(!0),x=async()=>{let e={};if(_.value.trim().length>0&&_.value.trim()!==`{}`)try{e=JSON.parse(_.value)}catch{d.error(`params 必须是合法 JSON`);return}y.value=!0;try{let t=await p(`/api/actions`,{action:m.value,params:e});v.value=JSON.stringify(t.result,void 0,2)}catch(e){s(e)}finally{y.value=!1}};return t(()=>{a().then(e=>{b.value=e.runtime===null}).catch(()=>{b.value=!0})}),(t,a)=>{let s=e(`el-alert`),c=e(`el-input`),d=e(`el-form-item`),f=e(`el-button`),p=e(`el-form`),S=e(`el-divider`),C=e(`el-card`);return n(),i(`div`,null,[l(s,{title:`直接向 OneBot 调用任意 action。此功能等同完全特权接口,请谨慎使用。`,type:`warning`,closable:!1,class:`block`}),l(C,{class:`block`},{default:h(()=>[l(p,{"label-width":`6.25rem`,size:`small`},{default:h(()=>[l(d,{label:`action`},{default:h(()=>[l(c,{modelValue:m.value,"onUpdate:modelValue":a[0]||=e=>m.value=e,placeholder:`如 get_login_info / send_private_msg`,style:{width:`20rem`}},null,8,[`modelValue`])]),_:1}),l(d,{label:`params (JSON)`},{default:h(()=>[l(c,{modelValue:_.value,"onUpdate:modelValue":a[1]||=e=>_.value=e,type:`textarea`,rows:5,spellcheck:`false`,placeholder:`{}`},null,8,[`modelValue`])]),_:1}),l(d,null,{default:h(()=>[l(f,{type:`primary`,loading:y.value,disabled:b.value,onClick:x},{default:h(()=>[...a[2]||=[o(` 调用 `,-1)]]),_:1},8,[`loading`,`disabled`])]),_:1})]),_:1}),l(S,null,{default:h(()=>[...a[3]||=[o(`结果`,-1)]]),_:1}),u(`pre`,g,r(v.value),1)]),_:1})])}}}),[[`__scopeId`,`data-v-c0ee4f70`]]);export{_ as default};
@@ -0,0 +1 @@
1
+ .form[data-v-5964f422]{max-width:40rem}.block[data-v-5964f422]{margin-top:.75rem}.json-editor[data-v-5964f422]{font-family:monospace}.issues[data-v-5964f422]{margin:0;padding-left:1.125rem;font-size:.75rem}
@@ -0,0 +1 @@
1
+ import{Ai as e,Ci as t,Ei as n,Oi as r,Zr as i,_a as a,ai as o,ci as s,d as c,f as l,i as u,ii as d,li as f,n as p,ni as m,p as h,qi as g,r as _,ri as v,ui as y,zi as b}from"./api-Bm2KUKXH.js";var x={class:`block`},S={class:`issues`},C=l(y({__name:`ConfigView`,setup(l){let y=g(`form`),C=g({url:``,accessToken:``,roles:{superadmin:[],admin:[]},message:{charThreshold:50,lineThreshold:3},webui:{enabled:!1,host:`127.0.0.1`,port:8787,username:``,password:``,sessionTtlHours:12,trustProxy:!1},installer:{enabled:!1,registry:`https://registry.npmjs.org/`,allowedPackages:[],allowScripts:!1,timeoutMs:12e4}}),w=g(``),T=g({path:``,hash:``,accessTokenSet:!1,webuiPasswordSet:!1}),E=g(``),D=g([]),O=g(!1),k=()=>{let e=JSON.parse(JSON.stringify(C.value)),t=e.webui;return w.value===``?delete t.password:t.password=w.value,e.accessToken===``&&delete e.accessToken,e},A=()=>{E.value=JSON.stringify(k(),null,4)},j=()=>{try{let e=JSON.parse(E.value),t=e.webui??{};typeof t.password==`string`&&(w.value=t.password===``?``:`00000000`),typeof e.accessToken==`string`&&e.accessToken===``?e.accessToken=``:typeof e.accessToken==`string`&&(e.accessToken=`00000000`),C.value=e,h.success(`已应用到表单`)}catch(e){h.error(`JSON 格式错误`),console.warn(e)}},M=async e=>{let t=await _(`/api/config/validate`,{config:e});return D.value=t.issues,t.ok},N=async()=>{O.value=!0;try{await M(k())&&h.success(`校验通过`)}catch(e){c(e)}finally{O.value=!1}},P=async()=>{let e;try{e=JSON.parse(E.value)}catch{h.error(`JSON 格式错误`);return}await I(e,w.value)},F=async()=>{let e=k();w.value=e.webui.password,await I(e,w.value),D.value=[]},I=async(e,t)=>{O.value=!0;try{if(!await M(e)&&D.value.length>0){h.error(`校验失败`);return}let t=await u(`/api/config`,{config:e,baseHash:T.value.hash});if(!t.ok){h.error(t.error??`保存失败`);return}h.success(`已保存并重启运行时`),await L()}catch(e){c(e)}finally{O.value=!1}},L=async()=>{try{let e=await p(`/api/config`);C.value=e.config,T.value=e.meta,w.value=(e.meta.webuiPasswordSet&&e.config.webui.password,``),E.value=JSON.stringify(e.config,null,4)}catch(e){c(e)}},R=e=>e.join(`, `);function z(e,t,n,r){let i=n.split(/[,,]/).map(e=>e.trim()).filter(e=>e.length>0);e[t]=r?i.map(r):i}return t(()=>void L()),(t,c)=>{let l=e(`el-divider`),u=e(`el-input`),p=e(`el-form-item`),h=e(`el-switch`),g=e(`el-input-number`),_=e(`el-space`),k=e(`el-button`),M=e(`el-form`),I=e(`el-tab-pane`),L=e(`el-tabs`),B=e(`el-alert`);return n(),o(`div`,null,[f(L,{modelValue:y.value,"onUpdate:modelValue":c[19]||=e=>y.value=e},{default:b(()=>[f(I,{label:`常用设置`,name:`form`},{default:b(()=>[f(M,{"label-width":`8.75rem`,size:`small`,class:`form`},{default:b(()=>[f(l,{"content-position":`left`},{default:b(()=>[...c[20]||=[s(`连接`,-1)]]),_:1}),f(p,{label:`ws url`},{default:b(()=>[f(u,{modelValue:C.value.url,"onUpdate:modelValue":c[0]||=e=>C.value.url=e},null,8,[`modelValue`])]),_:1}),f(p,{label:`accessToken`},{default:b(()=>[f(u,{modelValue:C.value.accessToken,"onUpdate:modelValue":c[1]||=e=>C.value.accessToken=e,placeholder:T.value.accessTokenSet?`留空保持不变`:`未设置`},null,8,[`modelValue`,`placeholder`])]),_:1}),f(l,{"content-position":`left`},{default:b(()=>[...c[21]||=[s(`WebUI`,-1)]]),_:1}),f(p,{label:`enabled`},{default:b(()=>[f(h,{modelValue:C.value.webui.enabled,"onUpdate:modelValue":c[2]||=e=>C.value.webui.enabled=e},null,8,[`modelValue`])]),_:1}),f(p,{label:`host / port`},{default:b(()=>[f(_,null,{default:b(()=>[f(u,{modelValue:C.value.webui.host,"onUpdate:modelValue":c[3]||=e=>C.value.webui.host=e,style:{width:`10rem`}},null,8,[`modelValue`]),f(g,{modelValue:C.value.webui.port,"onUpdate:modelValue":c[4]||=e=>C.value.webui.port=e,min:1,max:65535},null,8,[`modelValue`])]),_:1})]),_:1}),f(p,{label:`username`},{default:b(()=>[f(u,{modelValue:C.value.webui.username,"onUpdate:modelValue":c[5]||=e=>C.value.webui.username=e,style:{width:`12.5rem`}},null,8,[`modelValue`])]),_:1}),f(p,{label:`password`},{default:b(()=>[f(u,{modelValue:w.value,"onUpdate:modelValue":c[6]||=e=>w.value=e,"show-password":``,placeholder:T.value.webuiPasswordSet?`留空保持不变`:`未设置`,style:{width:`15rem`}},null,8,[`modelValue`,`placeholder`])]),_:1}),f(p,{label:`sessionTtlHours`},{default:b(()=>[f(g,{modelValue:C.value.webui.sessionTtlHours,"onUpdate:modelValue":c[7]||=e=>C.value.webui.sessionTtlHours=e,min:1,max:720},null,8,[`modelValue`])]),_:1}),f(p,{label:`trustProxy`},{default:b(()=>[f(h,{modelValue:C.value.webui.trustProxy,"onUpdate:modelValue":c[8]||=e=>C.value.webui.trustProxy=e},null,8,[`modelValue`])]),_:1}),f(l,{"content-position":`left`},{default:b(()=>[...c[22]||=[s(`消息聚合`,-1)]]),_:1}),f(p,{label:`charThreshold`},{default:b(()=>[f(g,{modelValue:C.value.message.charThreshold,"onUpdate:modelValue":c[9]||=e=>C.value.message.charThreshold=e,min:1},null,8,[`modelValue`])]),_:1}),f(p,{label:`lineThreshold`},{default:b(()=>[f(g,{modelValue:C.value.message.lineThreshold,"onUpdate:modelValue":c[10]||=e=>C.value.message.lineThreshold=e,min:1},null,8,[`modelValue`])]),_:1}),f(l,{"content-position":`left`},{default:b(()=>[...c[23]||=[s(`安装器`,-1)]]),_:1}),f(p,{label:`enabled`},{default:b(()=>[f(h,{modelValue:C.value.installer.enabled,"onUpdate:modelValue":c[11]||=e=>C.value.installer.enabled=e},null,8,[`modelValue`])]),_:1}),f(p,{label:`registry`},{default:b(()=>[f(u,{modelValue:C.value.installer.registry,"onUpdate:modelValue":c[12]||=e=>C.value.installer.registry=e},null,8,[`modelValue`])]),_:1}),f(p,{label:`allowedPackages`},{default:b(()=>[f(u,{"model-value":R(C.value.installer.allowedPackages),"onUpdate:modelValue":c[13]||=e=>z(C.value.installer,`allowedPackages`,e)},null,8,[`model-value`])]),_:1}),f(p,{label:`allowScripts`},{default:b(()=>[f(h,{modelValue:C.value.installer.allowScripts,"onUpdate:modelValue":c[14]||=e=>C.value.installer.allowScripts=e},null,8,[`modelValue`])]),_:1}),f(p,{label:`timeoutMs`},{default:b(()=>[f(g,{modelValue:C.value.installer.timeoutMs,"onUpdate:modelValue":c[15]||=e=>C.value.installer.timeoutMs=e,min:1e3,max:6e5},null,8,[`modelValue`])]),_:1}),f(l,{"content-position":`left`},{default:b(()=>[...c[24]||=[s(`角色`,-1)]]),_:1}),f(p,{label:`superadmin`},{default:b(()=>[f(u,{"model-value":R(C.value.roles.superadmin),placeholder:`逗号分隔的 QQ 号`,"onUpdate:modelValue":c[16]||=e=>z(C.value.roles,`superadmin`,e,Number)},null,8,[`model-value`])]),_:1}),f(p,{label:`admin`},{default:b(()=>[f(u,{"model-value":R(C.value.roles.admin),placeholder:`逗号分隔的 QQ 号`,"onUpdate:modelValue":c[17]||=e=>z(C.value.roles,`admin`,e,Number)},null,8,[`model-value`])]),_:1}),f(p,null,{default:b(()=>[f(_,null,{default:b(()=>[f(k,{type:`primary`,loading:O.value,onClick:F},{default:b(()=>[...c[25]||=[s(` 校验并保存 `,-1)]]),_:1},8,[`loading`]),f(k,{onClick:N},{default:b(()=>[...c[26]||=[s(` 仅校验 `,-1)]]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),f(I,{label:`JSON 编辑器`,name:`json`},{default:b(()=>[f(u,{modelValue:E.value,"onUpdate:modelValue":c[18]||=e=>E.value=e,type:`textarea`,rows:24,spellcheck:`false`,class:`json-editor`},null,8,[`modelValue`]),m(`div`,x,[f(_,null,{default:b(()=>[f(k,{onClick:A},{default:b(()=>[...c[27]||=[s(`从表单生成`,-1)]]),_:1}),f(k,{onClick:j},{default:b(()=>[...c[28]||=[s(`应用到表单`,-1)]]),_:1}),f(k,{type:`primary`,loading:O.value,onClick:P},{default:b(()=>[...c[29]||=[s(` 校验并保存 `,-1)]]),_:1},8,[`loading`])]),_:1})])]),_:1})]),_:1},8,[`modelValue`]),D.value.length>0?(n(),v(B,{key:0,type:`error`,closable:!1,class:`block`},{default:b(()=>[m(`ul`,S,[(n(!0),o(i,null,r(D.value,(e,t)=>(n(),o(`li`,{key:t},a(e.path?e.path+`: `:``)+a(e.message),1))),128))])]),_:1})):d(``,!0)])}}}),[[`__scopeId`,`data-v-5964f422`]]);export{C as default};
@@ -0,0 +1 @@
1
+ .block[data-v-e2972061]{margin-bottom:1rem}.stat-grid[data-v-e2972061]{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1rem;display:grid}.stat-grid[data-v-e2972061] .el-col{flex:none;width:auto;max-width:none;padding:0}.stat[data-v-e2972061]{align-items:flex-start;gap:.875rem;display:flex}.chip[data-v-e2972061]{border-radius:.6875rem;flex:none;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex}.chip.sky[data-v-e2972061]{color:color-mix(in oklab, var(--app-accent) 85%, black);background:color-mix(in oklab, var(--app-accent) 12%, transparent)}.chip.emerald[data-v-e2972061]{color:var(--app-ok);background:color-mix(in oklab, var(--app-ok) 12%, transparent)}.chip.violet[data-v-e2972061]{color:var(--app-violet);background:color-mix(in oklab, var(--app-violet) 12%, transparent)}.chip.amber[data-v-e2972061]{color:var(--app-warn);background:color-mix(in oklab, var(--app-warn) 12%, transparent)}.label[data-v-e2972061]{color:var(--app-muted);margin:0;font-size:.78125rem}.value[data-v-e2972061]{color:var(--app-text);margin:.375rem 0 0;font-size:1.3125rem;font-weight:700;line-height:1.25}.value.small[data-v-e2972061]{font-size:1rem}.unit[data-v-e2972061]{color:var(--app-muted);font-size:.75rem;font-weight:500}.sub[data-v-e2972061]{color:var(--app-muted);word-break:break-all;margin:.25rem 0 0;font-size:.71875rem}.warn-text[data-v-e2972061]{color:var(--app-warn)}.error-text[data-v-e2972061]{white-space:pre-wrap;margin:.5rem 0 0;font-size:.75rem}
@@ -0,0 +1 @@
1
+ import{$ as e,Ai as t,Ci as n,Ei as r,L as i,M as a,_a as o,a as s,ai as c,c as l,ci as u,d,f,ii as p,l as m,li as h,ni as g,qi as _,r as v,ri as y,s as b,ta as x,ti as S,u as C,ui as w,wi as T,xt as ee,zi as E}from"./api-Bm2KUKXH.js";import{t as D}from"./use-ui-scale-DvdJkOwB.js";var O={class:`error-text`},te={class:`stat`},ne={class:`chip sky`},re={class:`value small`},k={class:`sub`},A={class:`stat`},j={class:`chip emerald`},M={class:`value`},N={class:`sub`},P={class:`stat`},F={class:`chip violet`},I={class:`value`},L={class:`unit`},R={class:`sub`},z={class:`stat`},B={class:`chip amber`},V={class:`value`},H={class:`unit`},U={class:`sub`},W={key:0,class:`sub warn-text`},G=f(w({__name:`DashboardView`,setup(f){let w=_(null),G=_([]),K=_([]),q=_(!1),J=S(()=>w.value?.runtime??null),Y=S(()=>J.value?C(J.value.uptimeMs):`-`),X=async()=>{try{w.value=await l()}catch(e){d(e)}},Z=async()=>{q.value=!0;try{await v(`/api/runtime/restart`),await X()}catch(e){d(e)}finally{q.value=!1}},ie=async()=>{try{await v(`/api/runtime/pause`),await X()}catch(e){d(e)}},ae=async()=>{try{await v(`/api/runtime/resume`),await X()}catch(e){d(e)}},Q=null,$=null;return n(async()=>{await X(),G.value=await b().catch(()=>[]),Q=s(`/api/events/stream?limit=20`,e=>{K.value.unshift(e),K.value.length>30&&K.value.pop()});let e=setInterval(()=>void X(),1e4);$=()=>clearInterval(e)}),T(()=>{Q?.(),$?.()}),(n,s)=>{let l=t(`el-alert`),d=t(`el-icon`),f=t(`el-card`),_=t(`el-col`),v=t(`el-row`),b=t(`el-button`),S=t(`el-space`),C=t(`el-table-column`),T=t(`el-table`);return r(),c(`div`,null,[w.value?.startupError?(r(),y(l,{key:0,title:`运行时启动失败`,type:`error`,closable:!1,class:`block`},{default:E(()=>[g(`pre`,O,o(w.value.startupError),1)]),_:1})):w.value?.restarting?(r(),y(l,{key:1,title:`运行时正在重启…`,type:`warning`,closable:!1,class:`block`})):p(``,!0),h(v,{class:`stat-grid block`},{default:E(()=>[h(_,{span:6},{default:E(()=>[h(f,{class:`stat-card`},{default:E(()=>[g(`div`,te,[g(`div`,ne,[h(d,{size:`1.125rem`},{default:E(()=>[h(x(e))]),_:1})]),g(`div`,null,[s[0]||=g(`p`,{class:`label`},`连接状态`,-1),g(`p`,re,o(J.value?.connected?`已连接`:`未连接`),1),g(`p`,k,o(J.value?.login?`${J.value.login.nickname} · ${J.value.login.userId}`:`—`),1)])])]),_:1})]),_:1}),h(_,{span:6},{default:E(()=>[h(f,{class:`stat-card`},{default:E(()=>[g(`div`,A,[g(`div`,j,[h(d,{size:`1.125rem`},{default:E(()=>[h(x(ee))]),_:1})]),g(`div`,null,[s[1]||=g(`p`,{class:`label`},`运行时长`,-1),g(`p`,M,o(Y.value),1),g(`p`,N,` state: `+o(J.value?.state??`—`)+` · gen `+o(J.value?.generation??`—`),1)])])]),_:1})]),_:1}),h(_,{span:6},{default:E(()=>[h(f,{class:`stat-card`},{default:E(()=>[g(`div`,P,[g(`div`,F,[h(d,{size:`1.125rem`},{default:E(()=>[h(x(a))]),_:1})]),g(`div`,null,[s[2]||=g(`p`,{class:`label`},`插件`,-1),g(`p`,I,[u(o(J.value?.counts.loadedPlugins??`—`),1),g(`span`,L,` / `+o(J.value?.counts.plugins??`—`)+` 已加载`,1)]),g(`p`,R,` 启用 `+o(J.value?.counts.enabledPlugins??`—`),1)])])]),_:1})]),_:1}),h(_,{span:6},{default:E(()=>[h(f,{class:`stat-card`},{default:E(()=>[g(`div`,z,[g(`div`,B,[h(d,{size:`1.125rem`},{default:E(()=>[h(x(i))]),_:1})]),g(`div`,null,[s[3]||=g(`p`,{class:`label`},`会话`,-1),g(`p`,V,[u(o(J.value?.counts.sessions??`—`),1),g(`span`,H,` · `+o(J.value?.counts.kvPlugins??`—`)+` KV 插件`,1)]),s[4]||=g(`p`,{class:`sub`},`session 记录数`,-1)])])]),_:1})]),_:1})]),_:1}),h(f,{class:`block`},{header:E(()=>[...s[5]||=[u(`运行时控制`,-1)]]),default:E(()=>[h(S,null,{default:E(()=>[h(b,{type:`danger`,loading:q.value,onClick:Z},{default:E(()=>[...s[6]||=[u(` 重启运行时 `,-1)]]),_:1},8,[`loading`]),h(b,{onClick:ie},{default:E(()=>[...s[7]||=[u(`暂停`,-1)]]),_:1}),h(b,{onClick:ae},{default:E(()=>[...s[8]||=[u(`恢复`,-1)]]),_:1})]),_:1}),g(`p`,U,` version: `+o(w.value?.version??`-`)+` · paths: `+o(w.value?.paths.config),1),w.value?.webui.requiresProcessRestart?(r(),c(`p`,W,` webui 绑定配置已修改,需要重启进程生效。 `)):p(``,!0)]),_:1}),h(f,{class:`block`},{header:E(()=>[...s[9]||=[u(`命令列表`,-1)]]),default:E(()=>[h(T,{data:G.value,size:`small`,"max-height":`320`},{default:E(()=>[h(C,{prop:`name`,label:`命令`,width:x(D)(220)},null,8,[`width`]),h(C,{label:`别名`,width:x(D)(200)},{default:E(({row:e})=>[u(o((e.aliases??[]).join(`, `)||`—`),1)]),_:1},8,[`width`]),h(C,{prop:`pluginId`,label:`插件`,width:x(D)(220)},null,8,[`width`]),h(C,{label:`说明 / 用法`,"min-width":x(D)(240)},{default:E(({row:e})=>[u(o(e.description||e.usage||`—`),1)]),_:1},8,[`min-width`])]),_:1},8,[`data`])]),_:1}),h(f,{class:`block`},{header:E(()=>[...s[10]||=[u(`最近事件`,-1)]]),default:E(()=>[h(T,{data:K.value,size:`small`,"max-height":`320`},{default:E(()=>[h(C,{label:`时间`,width:x(D)(170)},{default:E(({row:e})=>[u(o(x(m)(e.time)),1)]),_:1},8,[`width`]),h(C,{prop:`type`,label:`类型`,width:x(D)(100)},null,8,[`width`]),h(C,{prop:`summary`,label:`摘要`,"min-width":x(D)(240)},null,8,[`min-width`])]),_:1},8,[`data`])]),_:1})])}}}),[[`__scopeId`,`data-v-e2972061`]]);export{G as default};
@@ -0,0 +1 @@
1
+ .block[data-v-200a56d6]{margin-bottom:1rem}.json[data-v-200a56d6]{white-space:pre-wrap;font-size:.75rem}
@@ -0,0 +1 @@
1
+ import{Ai as e,Ci as t,Ei as n,Li as r,_a as i,a,ai as o,ci as s,d as c,f as l,l as u,li as d,n as f,ni as p,qi as m,ta as h,ui as g,wi as _,zi as v}from"./api-Bm2KUKXH.js";import{t as y}from"./use-ui-scale-DvdJkOwB.js";var b={class:`json`},x=l(g({__name:`EventsView`,setup(l){let g=m(``),x=m(`on`),S=m([]),C=m(!1),w=m(``),T=async()=>{try{let e=new URLSearchParams({limit:`300`});g.value&&e.set(`type`,g.value),S.value=await f(`/api/events?${e.toString()}`)}catch(e){c(e)}},E=null,D=()=>{E?.(),E=null,x.value===`on`&&(E=a(`/api/events/stream`,e=>{let t=e;g.value&&t.type!==g.value||(S.value.unshift(t),S.value.length>500&&(S.value.length=500))}))};r(x,D),r(g,async()=>{await T(),D()});let O=e=>{w.value=JSON.stringify(e.event,void 0,2),C.value=!0};return t(async()=>{await T(),D()}),_(()=>{E?.()}),(t,r)=>{let a=e(`el-option`),c=e(`el-select`),l=e(`el-button`),f=e(`el-space`),m=e(`el-card`),_=e(`el-table-column`),E=e(`el-table`),D=e(`el-drawer`);return n(),o(`div`,null,[d(m,{class:`block`},{default:v(()=>[d(f,null,{default:v(()=>[d(c,{modelValue:g.value,"onUpdate:modelValue":r[0]||=e=>g.value=e,placeholder:`全部类型`,style:{width:`8.75rem`},clearable:``},{default:v(()=>[d(a,{label:`message`,value:`message`}),d(a,{label:`notice`,value:`notice`}),d(a,{label:`request`,value:`request`}),d(a,{label:`meta`,value:`meta`}),d(a,{label:`other`,value:`other`})]),_:1},8,[`modelValue`]),d(c,{modelValue:x.value,"onUpdate:modelValue":r[1]||=e=>x.value=e,style:{width:`5.625rem`}},{default:v(()=>[d(a,{label:`实时`,value:`on`}),d(a,{label:`暂停`,value:`off`})]),_:1},8,[`modelValue`]),d(l,{type:`primary`,onClick:T},{default:v(()=>[...r[3]||=[s(`刷新`,-1)]]),_:1})]),_:1})]),_:1}),d(m,null,{default:v(()=>[d(E,{data:S.value,size:`small`,"max-height":`640`},{default:v(()=>[d(_,{label:`时间`,width:h(y)(170)},{default:v(({row:e})=>[s(i(h(u)(e.time)),1)]),_:1},8,[`width`]),d(_,{prop:`type`,label:`类型`,width:h(y)(100)},null,8,[`width`]),d(_,{prop:`summary`,label:`摘要`,"min-width":h(y)(240),"show-overflow-tooltip":``},null,8,[`min-width`]),d(_,{label:`详情`,width:h(y)(90)},{default:v(({row:e})=>[d(l,{size:`small`,onClick:t=>O(e)},{default:v(()=>[...r[4]||=[s(` 查看 `,-1)]]),_:1},8,[`onClick`])]),_:1},8,[`width`])]),_:1},8,[`data`])]),_:1}),d(D,{modelValue:C.value,"onUpdate:modelValue":r[2]||=e=>C.value=e,title:`事件详情`,size:`50%`},{default:v(()=>[p(`pre`,b,i(w.value),1)]),_:1},8,[`modelValue`])])}}}),[[`__scopeId`,`data-v-200a56d6`]]);export{x as default};
@@ -0,0 +1 @@
1
+ .block[data-v-0e01a2ea]{margin-bottom:.75rem}.pager[data-v-0e01a2ea]{margin-top:.75rem}
@@ -0,0 +1 @@
1
+ import{Ai as e,Bi as t,Ci as n,Ei as r,Jr as i,Oi as a,Zr as o,_a as s,ai as c,ci as l,d as u,f as d,i as f,ii as p,ji as m,l as h,li as g,n as _,p as v,qi as y,ri as b,t as x,ta as S,ui as C,zi as w}from"./api-Bm2KUKXH.js";import{t as T}from"./use-ui-scale-DvdJkOwB.js";var E=50,D=d(C({__name:`KvView`,setup(d){let C=y([]),D=y(``),O=y(``),k=y([]),A=y(0),j=y(1),M=y(!1),N=y(!1),P=y(``),F=y(``),I=y(`create`),L=async()=>{if(D.value){M.value=!0;try{let e=(j.value-1)*E,t=new URLSearchParams({pluginId:D.value,limit:String(E),offset:String(e)});O.value&&t.set(`prefix`,O.value);let n=await _(`/api/kv?${t.toString()}`);k.value=n.items,A.value=n.total}catch(e){u(e)}finally{M.value=!1}}},R=e=>{j.value=e,L()},z=()=>{I.value=`create`,P.value=``,F.value=`null`,N.value=!0},B=e=>{I.value=`update`,P.value=e.key,F.value=JSON.stringify(e.value,void 0,2),N.value=!0},V=async()=>{let e;try{e=JSON.parse(F.value)}catch{v.error(`不是合法的 JSON`);return}try{await f(`/api/kv`,{pluginId:D.value,key:P.value,value:e}),N.value=!1,await L()}catch(e){u(e)}},H=async e=>{try{await x(`/api/kv?pluginId=${encodeURIComponent(D.value)}&key=${encodeURIComponent(e.key)}`),await L()}catch(e){u(e)}},U=e=>typeof e==`string`?e.length>120?e.slice(0,120)+`…`:e:JSON.stringify(e)?.slice(0,120)??``;return n(async()=>{try{C.value=await _(`/api/kv/plugins`),C.value.length>0&&(D.value=C.value[0]?.pluginId??``,await L())}catch(e){u(e)}}),(n,u)=>{let d=e(`el-option`),f=e(`el-select`),_=e(`el-card`),v=e(`el-input`),y=e(`el-button`),x=e(`el-space`),W=e(`el-table-column`),G=e(`el-table`),K=e(`el-pagination`),q=e(`el-form-item`),J=e(`el-form`),Y=e(`el-dialog`),X=m(`loading`);return r(),c(`div`,null,[g(_,{class:`block`},{default:w(()=>[g(f,{modelValue:D.value,"onUpdate:modelValue":u[0]||=e=>D.value=e,placeholder:`选择插件`,style:{width:`15rem`},onChange:L},{default:w(()=>[(r(!0),c(o,null,a(C.value,e=>(r(),b(d,{key:e.pluginId,label:`${e.pluginId} (${e.count})`,value:e.pluginId},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1}),D.value?(r(),b(_,{key:0},{default:w(()=>[g(x,{class:`block`},{default:w(()=>[g(v,{modelValue:O.value,"onUpdate:modelValue":u[1]||=e=>O.value=e,placeholder:`key 前缀过滤`,style:{width:`12.5rem`},onKeyup:i(L,[`enter`])},null,8,[`modelValue`]),g(y,{onClick:L},{default:w(()=>[...u[6]||=[l(`过滤`,-1)]]),_:1}),g(y,{type:`primary`,onClick:z},{default:w(()=>[...u[7]||=[l(`新增 KV`,-1)]]),_:1})]),_:1}),t((r(),b(G,{data:k.value,size:`small`},{default:w(()=>[g(W,{prop:`key`,label:`Key`,"min-width":S(T)(200),"show-overflow-tooltip":``},null,8,[`min-width`]),g(W,{label:`Value`,"min-width":S(T)(240),"show-overflow-tooltip":``},{default:w(({row:e})=>[l(s(U(e.value)),1)]),_:1},8,[`min-width`]),g(W,{label:`更新时间`,width:S(T)(180)},{default:w(({row:e})=>[l(s(S(h)(e.updatedAt)),1)]),_:1},8,[`width`]),g(W,{label:`操作`,width:S(T)(150)},{default:w(({row:e})=>[g(y,{size:`small`,onClick:t=>B(e)},{default:w(()=>[...u[8]||=[l(`编辑`,-1)]]),_:1},8,[`onClick`]),g(y,{size:`small`,type:`danger`,onClick:t=>H(e)},{default:w(()=>[...u[9]||=[l(`删除`,-1)]]),_:1},8,[`onClick`])]),_:1},8,[`width`])]),_:1},8,[`data`])),[[X,M.value]]),g(K,{class:`pager`,layout:`total, prev, pager, next`,total:A.value,"page-size":E,"current-page":j.value,onCurrentChange:R},null,8,[`total`,`current-page`])]),_:1})):p(``,!0),g(Y,{modelValue:N.value,"onUpdate:modelValue":u[5]||=e=>N.value=e,title:`KV 编辑`,width:`min(92vw, 35rem)`},{footer:w(()=>[g(y,{onClick:u[4]||=e=>N.value=!1},{default:w(()=>[...u[10]||=[l(`取消`,-1)]]),_:1}),g(y,{type:`primary`,onClick:V},{default:w(()=>[...u[11]||=[l(`保存`,-1)]]),_:1})]),default:w(()=>[g(J,{"label-width":`5rem`},{default:w(()=>[g(q,{label:`key`},{default:w(()=>[g(v,{modelValue:P.value,"onUpdate:modelValue":u[2]||=e=>P.value=e,disabled:I.value===`update`},null,8,[`modelValue`,`disabled`])]),_:1}),g(q,{label:`value (JSON)`},{default:w(()=>[g(v,{modelValue:F.value,"onUpdate:modelValue":u[3]||=e=>F.value=e,type:`textarea`,rows:6,spellcheck:`false`},null,8,[`modelValue`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])])}}}),[[`__scopeId`,`data-v-0e01a2ea`]]);export{D as default};
@@ -0,0 +1 @@
1
+ import{Ai as e,Ei as t,Jr as n,Yr as r,ai as i,ci as a,d as o,f as s,li as c,ni as l,qi as u,r as d,si as f,ui as p,zi as m}from"./api-Bm2KUKXH.js";import{n as h}from"./index-BjnuYVEl.js";var g={class:`login-page`},_=s(p({__name:`LoginView`,setup(s){let p=h(),_=u(``),v=u(``),y=u(!1),b=async()=>{if(!y.value){y.value=!0;try{await d(`/api/auth/login`,{username:_.value,password:v.value}),await p.push({name:`dashboard`})}catch(e){o(e)}finally{y.value=!1}}};return(o,s)=>{let u=e(`el-input`),d=e(`el-form-item`),p=e(`el-button`),h=e(`el-form`),x=e(`el-card`);return t(),i(`div`,g,[s[5]||=f(`<svg class="login-waves" viewBox="0 0 1440 900" preserveAspectRatio="xMidYMid slice" aria-hidden="true" data-v-a3fb53fb><path d="M-40 250 C 180 180, 360 320, 620 250 S 1080 180, 1480 260" data-v-a3fb53fb></path><path d="M-40 420 C 200 340, 420 480, 700 410 S 1120 330, 1480 430" data-v-a3fb53fb></path><path d="M-40 580 C 220 500, 400 640, 660 570 S 1100 490, 1480 590" data-v-a3fb53fb></path><path d="M-40 730 C 180 660, 380 790, 640 725 S 1080 650, 1480 740" data-v-a3fb53fb></path><path d="M-40 130 C 240 70, 440 190, 720 125 S 1120 40, 1480 140" data-v-a3fb53fb></path></svg>`,1),c(x,{class:`login-card`,"body-style":{padding:`2.25rem 2rem 2rem`}},{default:m(()=>[s[4]||=l(`div`,{class:`brand`},[l(`div`,{class:`logo`},`J`),l(`h2`,null,`JsBot 控制台`),l(`p`,null,`Tellus 管理后台`)],-1),c(h,{"label-position":`top`,size:`large`,onSubmit:s[2]||=r(()=>{},[`prevent`])},{default:m(()=>[c(d,{label:`用户名`},{default:m(()=>[c(u,{modelValue:_.value,"onUpdate:modelValue":s[0]||=e=>_.value=e,autocomplete:`username`},null,8,[`modelValue`])]),_:1}),c(d,{label:`密码`},{default:m(()=>[c(u,{modelValue:v.value,"onUpdate:modelValue":s[1]||=e=>v.value=e,type:`password`,autocomplete:`current-password`,"show-password":``,onKeyup:n(b,[`enter`])},null,8,[`modelValue`])]),_:1}),c(p,{type:`primary`,size:`large`,class:`submit`,loading:y.value,onClick:b},{default:m(()=>[...s[3]||=[a(` 登 录 `,-1)]]),_:1},8,[`loading`])]),_:1})]),_:1})])}}}),[[`__scopeId`,`data-v-a3fb53fb`]]);export{_ as default};
@@ -0,0 +1 @@
1
+ .login-page[data-v-a3fb53fb]{background:var(--app-bg);justify-content:center;align-items:center;height:100%;min-height:100%;display:flex;position:relative;overflow:hidden}.login-card[data-v-a3fb53fb]{z-index:1;background:var(--app-glass);-webkit-backdrop-filter:blur(1.125rem);backdrop-filter:blur(1.125rem);width:23.25rem;box-shadow:var(--card-shadow), 0 32px 80px -40px oklch(0% 0 0/.35);position:relative}.brand[data-v-a3fb53fb]{text-align:center;margin-bottom:1.625rem}.logo[data-v-a3fb53fb]{width:3.25rem;height:3.25rem;color:var(--app-accent-fg);background:linear-gradient(135deg,oklch(68.5% .155 230),oklch(56% .15 250));border-radius:.9375rem;justify-content:center;align-items:center;margin-bottom:1rem;font-size:1.375rem;font-weight:700;display:inline-flex;box-shadow:inset 0 1px oklch(100% 0 0/.22),0 12px 28px oklch(68.5% .155 230/.4)}.brand h2[data-v-a3fb53fb]{color:var(--app-text);letter-spacing:.02em;margin:0;font-size:1.125rem}.brand p[data-v-a3fb53fb]{color:var(--app-muted);margin:.375rem 0 0;font-size:.8125rem}.submit[data-v-a3fb53fb]{letter-spacing:.35em;width:100%;margin-top:.375rem;font-weight:600}
@@ -0,0 +1 @@
1
+ .term-content[data-v-21e2770a]{--app-bg:oklch(13% .012 250);--app-panel:oklch(17% .02 250);--app-panel-2:oklch(21% .02 250);--app-field:oklch(19% .015 250);--app-text:oklch(95% .01 240);--app-muted:oklch(65% .02 240);--app-border:oklch(27% .02 250);--app-border-strong:oklch(33% .022 250);--app-field-border:oklch(25% .02 250);--app-field-border-hover:oklch(35% .022 250);--app-accent:oklch(75% .14 230);--app-accent-fg:oklch(15% .02 250);--app-accent-soft:oklch(30% .06 230);--app-accent-ring:oklch(75% .14 230/.25);--app-ok:oklch(72% .15 160);--app-warn:oklch(80% .16 80);--app-danger:oklch(62% .2 27);--app-violet:oklch(74% .11 295);--app-log-info:oklch(75% .14 230);--app-log-success:oklch(72% .15 160);--app-log-warn:oklch(80% .16 80);--app-log-error:oklch(62% .2 27);--app-dot-off:oklch(40% .015 250);--card-shadow:0 1px 2px oklch(0% 0 0/.36), 0 16px 38px -24px oklch(0% 0 0/.72), inset 0 1px oklch(100% 0 0/.025);--app-pop-shadow:0 1px 2px oklch(0% 0 0/.4), 0 16px 40px -18px oklch(0% 0 0/.75);--el-bg-color:var(--app-panel);--el-bg-color-overlay:oklch(19% .018 250);--el-bg-color-page:var(--app-bg);--el-fill-color:var(--app-panel-2);--el-fill-color-light:oklch(23% .02 250);--el-fill-color-lighter:oklch(25% .02 250);--el-fill-color-blank:var(--app-panel);--el-text-color-primary:var(--app-text);--el-text-color-regular:var(--app-text);--el-text-color-secondary:var(--app-muted);--el-text-color-placeholder:color-mix(in oklab, var(--app-muted) 72%, transparent);--el-border-color:var(--app-border);--el-border-color-lighter:color-mix(in srgb, var(--app-border) 78%, transparent);--el-border-color-extra-light:color-mix(in srgb, var(--app-border) 62%, transparent);border:1px solid var(--app-border);border-radius:calc(var(--app-radius) + .125rem);background:var(--app-bg);height:calc(100vh - 12rem);min-height:26.25rem;box-shadow:var(--card-shadow);scrollbar-gutter:stable both-edges;flex-direction:column;display:flex;position:relative;overflow:hidden}.container[data-v-21e2770a]{flex-direction:column;display:flex}.term-bar[data-v-21e2770a]{border-bottom:1px solid var(--app-border);background:var(--app-panel);flex:none;align-items:center;gap:.625rem;padding:.5rem .75rem;display:flex}.term-traffic[data-v-21e2770a]{flex:none;gap:.375rem;display:flex}.dot[data-v-21e2770a]{background:var(--app-dot-off);opacity:.55;border-radius:62.4375rem;width:.625rem;height:.625rem}.term-title[data-v-21e2770a]{color:var(--app-text);font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:.78125rem;font-weight:600}.term-title .dim[data-v-21e2770a]{color:var(--app-muted);font-weight:400}.term-spacer[data-v-21e2770a]{flex:1}.ctl[data-v-21e2770a]{flex:none;width:8rem}.sel-level[data-v-21e2770a]{width:6.75rem}.sel-live[data-v-21e2770a]{width:6.5rem}.refresh[data-v-21e2770a]{width:auto}.term-body[data-v-21e2770a]{font-variant-numeric:tabular-nums;scrollbar-color:color-mix(in oklab, var(--app-text) 22%, transparent) transparent;flex:1;padding:.625rem .875rem .875rem;font-family:SF Mono,ui-monospace,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.75rem;line-height:1.7;position:relative;overflow-y:auto}.term-empty[data-v-21e2770a]{text-align:center;color:var(--app-muted);padding:3rem 0;font-size:.75rem}.log-row[data-v-21e2770a]{content-visibility:auto;contain-intrinsic-size:auto 1.5rem;white-space:pre-wrap;word-break:break-word;border-radius:.375rem;align-items:baseline;gap:.625rem;padding:0 .375rem;display:flex}.log-row[data-v-21e2770a]:hover{background:color-mix(in oklab, var(--app-accent) 6%, transparent)}.lt[data-v-21e2770a]{color:color-mix(in oklab, var(--app-muted) 70%, transparent);flex:none}.lv[data-v-21e2770a]{letter-spacing:.02em;flex:none;width:3.25rem;font-size:.6875rem;font-weight:600}.ls[data-v-21e2770a]{color:color-mix(in oklab, var(--app-muted) 85%, transparent);flex:none}.lm[data-v-21e2770a]{min-width:0;color:var(--app-text)}.l-debug .lv[data-v-21e2770a],.l-debug .lm[data-v-21e2770a]{color:color-mix(in oklab, var(--app-muted) 78%, transparent)}.l-info .lv[data-v-21e2770a]{color:var(--app-log-info)}.l-warn .lv[data-v-21e2770a]{color:var(--app-log-warn)}.l-error .lv[data-v-21e2770a],.l-error .lm[data-v-21e2770a]{color:var(--app-log-error)}.log-fade-both[data-v-21e2770a]{-webkit-mask-image:linear-gradient(#0000 0,#fff 12px calc(100% - 16px),#0000 100%);mask-image:linear-gradient(#0000 0,#fff 12px calc(100% - 16px),#0000 100%)}.rowIn[data-v-21e2770a]{animation:.2s cubic-bezier(.16,1,.3,1) terminal-row-in-21e2770a}@keyframes terminal-row-in-21e2770a{0%{opacity:0;transform:translateY(.375rem)}to{opacity:1;transform:translateY(0)}}.jump-latest[data-v-21e2770a]{border:1px solid color-mix(in oklab, var(--app-border) 74%, transparent);background:var(--el-bg-color-overlay);color:var(--app-accent);box-shadow:var(--app-pop-shadow);cursor:pointer;border-radius:62.4375rem;padding:.375rem .875rem;font-size:.75rem;font-weight:500;transition:opacity .15s;position:absolute;bottom:.875rem;left:50%;translate:-50%}.jump-latest[data-v-21e2770a]:hover{border-color:color-mix(in oklab, var(--app-accent) 30%, transparent)}.pill-enter-active[data-v-21e2770a],.pill-leave-active[data-v-21e2770a]{transition:opacity .15s,translate .15s}.pill-enter-from[data-v-21e2770a],.pill-leave-to[data-v-21e2770a]{opacity:0;translate:-50% .375rem}@media (prefers-reduced-motion:reduce){.rowIn[data-v-21e2770a]{animation-duration:.01ms}}
@@ -1 +1 @@
1
- import{Ai as e,Br as t,Ci as n,Ei as r,Jr as i,Li as a,Oi as o,Zr as s,_a as c,_i as l,a as u,ai as d,ci as f,d as p,f as m,ii as h,li as g,ma as _,n as v,ni as y,qi as b,ta as x,ti as S,ui as C,ut as w,wi as T,zi as E}from"./api-Bm2KUKXH.js";var D={class:`term container`},O={class:`term-content`},k={class:`term-bar`},A={class:`term-title`},ee={class:`dim`},te={key:0,class:`term-empty`},ne={class:`lt`},re={class:`lv`},j={key:0,class:`ls`},M={class:`lm`},N=500,P=30,F=m(C({__name:`LogsView`,setup(m){let C=b(``),F=b(``),I=b(``),L=b(`on`),R=b([]),z=b(null),B=b(!0),V=e=>({key:`${e.time}|${e.scope}|${e.level}|${e.message}`,time:e.time,level:e.level,scope:e.scope,text:e.message+(e.args.length>0?` `+e.args.join(` `):``),fresh:!1}),H=S(()=>R.value.slice(-500)),U=S(()=>Math.max(0,R.value.length-N)),W=()=>{let e=new URLSearchParams({limit:`500`});return C.value&&e.set(`level`,C.value),F.value&&e.set(`scope`,F.value),I.value&&e.set(`query`,I.value),`/api/logs?${e.toString()}`},G=e=>Number.isNaN(e)?`--:--:--`:new Date(e).toTimeString().slice(0,8),K=()=>{let e=z.value;e!==null&&(e.scrollTop=e.scrollHeight)},q=()=>{let e=z.value;return e===null||e.scrollHeight-e.scrollTop-e.clientHeight<32},J=()=>{B.value=q()},Y=()=>{B.value=!0,K()},X=e=>{let t=new Set(R.value.map(e=>e.key)),n=new Map,r=e.slice(-500).map(e=>{let t=V(e),r=n.get(t.key)??0;return n.set(t.key,r+1),t.key=r>0?`${t.key}#${r}`:t.key,t}),i=r.length;for(let e=r.length-1;e>=0;--e)if(t.has(r[e]?.key??``)){i=e+1;break}for(let e=0;e<r.length;e+=1)r[e]={...r[e],fresh:e>=i&&e>=r.length-P};R.value=r,B.value&&l(K)},Z=async()=>{try{let e=await v(W());X(e)}catch(e){p(e)}},Q=null,$=()=>{Q?.(),Q=null,L.value===`on`&&(Q=u(`/api/logs/stream`,()=>{v(W()).then(e=>{X(e)}).catch(()=>{})}))};return a(L,$),n(async()=>{await Z(),K(),$()}),T(()=>{Q?.()}),(n,a)=>{let l=e(`el-option`),u=e(`el-select`),p=e(`el-input`),m=e(`el-button`);return r(),d(`div`,D,[y(`section`,O,[y(`header`,k,[a[6]||=y(`div`,{class:`term-traffic`},[y(`span`,{class:`dot`}),y(`span`,{class:`dot`}),y(`span`,{class:`dot`})],-1),y(`span`,A,[a[4]||=f(` bot://console`,-1),y(`span`,ee,` · `+c(L.value===`on`?`streaming`:`paused`),1)]),a[7]||=y(`span`,{class:`term-spacer`},null,-1),g(u,{modelValue:C.value,"onUpdate:modelValue":a[0]||=e=>C.value=e,placeholder:`级别`,clearable:``,class:`ctl sel-level`,onChange:Z},{default:E(()=>[g(l,{label:`all`,value:``}),g(l,{label:`debug`,value:`debug`}),g(l,{label:`info`,value:`info`}),g(l,{label:`warn`,value:`warn`}),g(l,{label:`error`,value:`error`})]),_:1},8,[`modelValue`]),g(p,{modelValue:F.value,"onUpdate:modelValue":a[1]||=e=>F.value=e,placeholder:`scope`,class:`ctl`,onKeyup:i(Z,[`enter`])},null,8,[`modelValue`]),g(p,{modelValue:I.value,"onUpdate:modelValue":a[2]||=e=>I.value=e,placeholder:`关键字`,class:`ctl`,onKeyup:i(Z,[`enter`])},null,8,[`modelValue`]),g(u,{modelValue:L.value,"onUpdate:modelValue":a[3]||=e=>L.value=e,class:`ctl sel-live`},{default:E(()=>[g(l,{label:`stream`,value:`on`}),g(l,{label:`paused`,value:`off`})]),_:1},8,[`modelValue`]),g(m,{class:`ctl refresh`,text:``,icon:x(w),onClick:Z},{default:E(()=>[...a[5]||=[f(` 查询 `,-1)]]),_:1},8,[`icon`])]),y(`main`,{ref_key:`scrollEl`,ref:z,class:`term-body log-fade-both`,onScroll:J},[R.value.length===0?(r(),d(`div`,te,` — 暂无日志:试试调整筛选或点击「查询」 — `)):h(``,!0),(r(!0),d(s,null,o(H.value,(e,t)=>(r(),d(`div`,{key:e.key,class:_([`log-row`,[`l-${e.level}`,e.fresh?`rowIn`:``]])},[y(`span`,ne,c(G(e.time)),1),y(`span`,re,c(e.level.toUpperCase()),1),e.scope?(r(),d(`span`,j,`[`+c(e.scope)+`]`,1)):h(``,!0),y(`span`,M,c(e.text),1)],2))),128))],544),g(t,{name:`pill`},{default:E(()=>[!B.value&&R.value.length>0?(r(),d(`button`,{key:0,class:`jump-latest`,onClick:Y},` ↓ 回到最新`+c(U.value>0?`(+${U.value})`:``),1)):h(``,!0)]),_:1})])])}}}),[[`__scopeId`,`data-v-c504421e`]]);export{F as default};
1
+ import{Ai as e,Br as t,Ci as n,Ei as r,Jr as i,Li as a,Oi as o,Zr as s,_a as c,_i as l,a as u,ai as d,ci as f,d as p,f as m,ii as h,li as g,ma as _,n as v,ni as y,qi as b,ta as x,ti as S,ui as C,ut as w,wi as T,zi as E}from"./api-Bm2KUKXH.js";var D={class:`term container`},O={class:`term-content`},k={class:`term-bar`},A={class:`term-title`},ee={class:`dim`},te={key:0,class:`term-empty`},ne={class:`lt`},re={class:`lv`},j={key:0,class:`ls`},M={class:`lm`},N=500,P=30,F=m(C({__name:`LogsView`,setup(m){let C=b(``),F=b(``),I=b(``),L=b(`on`),R=b([]),z=b(null),B=b(!0),V=e=>({key:`${e.time}|${e.scope}|${e.level}|${e.message}`,time:e.time,level:e.level,scope:e.scope,text:e.message+(e.args.length>0?` `+e.args.join(` `):``),fresh:!1}),H=S(()=>R.value.slice(-500)),U=S(()=>Math.max(0,R.value.length-N)),W=()=>{let e=new URLSearchParams({limit:`500`});return C.value&&e.set(`level`,C.value),F.value&&e.set(`scope`,F.value),I.value&&e.set(`query`,I.value),`/api/logs?${e.toString()}`},G=e=>Number.isNaN(e)?`--:--:--`:new Date(e).toTimeString().slice(0,8),K=()=>{let e=z.value;e!==null&&(e.scrollTop=e.scrollHeight)},q=()=>{let e=z.value;return e===null||e.scrollHeight-e.scrollTop-e.clientHeight<32},J=()=>{B.value=q()},Y=()=>{B.value=!0,K()},X=e=>{let t=new Set(R.value.map(e=>e.key)),n=new Map,r=e.slice(-500).map(e=>{let t=V(e),r=n.get(t.key)??0;return n.set(t.key,r+1),t.key=r>0?`${t.key}#${r}`:t.key,t}),i=r.length;for(let e=r.length-1;e>=0;--e)if(t.has(r[e]?.key??``)){i=e+1;break}for(let e=0;e<r.length;e+=1)r[e]={...r[e],fresh:e>=i&&e>=r.length-P};R.value=r,B.value&&l(K)},Z=async()=>{try{let e=await v(W());X(e)}catch(e){p(e)}},Q=null,$=()=>{Q?.(),Q=null,L.value===`on`&&(Q=u(`/api/logs/stream`,()=>{v(W()).then(e=>{X(e)}).catch(()=>{})}))};return a(L,$),n(async()=>{await Z(),K(),$()}),T(()=>{Q?.()}),(n,a)=>{let l=e(`el-option`),u=e(`el-select`),p=e(`el-input`),m=e(`el-button`);return r(),d(`div`,D,[y(`section`,O,[y(`header`,k,[a[6]||=y(`div`,{class:`term-traffic`},[y(`span`,{class:`dot`}),y(`span`,{class:`dot`}),y(`span`,{class:`dot`})],-1),y(`span`,A,[a[4]||=f(` bot://console`,-1),y(`span`,ee,` · `+c(L.value===`on`?`streaming`:`paused`),1)]),a[7]||=y(`span`,{class:`term-spacer`},null,-1),g(u,{modelValue:C.value,"onUpdate:modelValue":a[0]||=e=>C.value=e,placeholder:`级别`,clearable:``,class:`ctl sel-level`,onChange:Z},{default:E(()=>[g(l,{label:`all`,value:``}),g(l,{label:`debug`,value:`debug`}),g(l,{label:`info`,value:`info`}),g(l,{label:`warn`,value:`warn`}),g(l,{label:`error`,value:`error`})]),_:1},8,[`modelValue`]),g(p,{modelValue:F.value,"onUpdate:modelValue":a[1]||=e=>F.value=e,placeholder:`scope`,class:`ctl`,onKeyup:i(Z,[`enter`])},null,8,[`modelValue`]),g(p,{modelValue:I.value,"onUpdate:modelValue":a[2]||=e=>I.value=e,placeholder:`关键字`,class:`ctl`,onKeyup:i(Z,[`enter`])},null,8,[`modelValue`]),g(u,{modelValue:L.value,"onUpdate:modelValue":a[3]||=e=>L.value=e,class:`ctl sel-live`},{default:E(()=>[g(l,{label:`stream`,value:`on`}),g(l,{label:`paused`,value:`off`})]),_:1},8,[`modelValue`]),g(m,{class:`ctl refresh`,text:``,icon:x(w),onClick:Z},{default:E(()=>[...a[5]||=[f(` 查询 `,-1)]]),_:1},8,[`icon`])]),y(`main`,{ref_key:`scrollEl`,ref:z,class:`term-body log-fade-both`,onScroll:J},[R.value.length===0?(r(),d(`div`,te,` — 暂无日志:试试调整筛选或点击「查询」 — `)):h(``,!0),(r(!0),d(s,null,o(H.value,(e,t)=>(r(),d(`div`,{key:e.key,class:_([`log-row`,[`l-${e.level}`,e.fresh?`rowIn`:``]])},[y(`span`,ne,c(G(e.time)),1),y(`span`,re,c(e.level.toUpperCase()),1),e.scope?(r(),d(`span`,j,`[`+c(e.scope)+`]`,1)):h(``,!0),y(`span`,M,c(e.text),1)],2))),128))],544),g(t,{name:`pill`},{default:E(()=>[!B.value&&R.value.length>0?(r(),d(`button`,{key:0,class:`jump-latest`,onClick:Y},` ↓ 回到最新`+c(U.value>0?`(+${U.value})`:``),1)):h(``,!0)]),_:1})])])}}}),[[`__scopeId`,`data-v-21e2770a`]]);export{F as default};