@lark-apaas/coding-preset-vite-react 1.0.13-alpha.0 → 1.0.13-alpha.10

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 (162) hide show
  1. package/lib/index.d.ts +9 -1
  2. package/lib/index.d.ts.map +1 -1
  3. package/lib/index.js +153 -114
  4. package/lib/index.js.map +1 -1
  5. package/lib/plugins/{basename-injection.d.ts → basename.d.ts} +4 -4
  6. package/lib/plugins/basename.d.ts.map +1 -0
  7. package/lib/plugins/{basename-injection.js → basename.js} +7 -15
  8. package/lib/plugins/basename.js.map +1 -0
  9. package/lib/plugins/capabilities.d.ts +9 -6
  10. package/lib/plugins/capabilities.d.ts.map +1 -1
  11. package/lib/plugins/capabilities.js +27 -29
  12. package/lib/plugins/capabilities.js.map +1 -1
  13. package/lib/plugins/dev-proxy.d.ts +41 -0
  14. package/lib/plugins/dev-proxy.d.ts.map +1 -0
  15. package/lib/plugins/dev-proxy.js +229 -0
  16. package/lib/plugins/dev-proxy.js.map +1 -0
  17. package/lib/plugins/fonts-mirror.d.ts.map +1 -1
  18. package/lib/plugins/fonts-mirror.js +28 -0
  19. package/lib/plugins/fonts-mirror.js.map +1 -1
  20. package/lib/plugins/html-output.d.ts +21 -0
  21. package/lib/plugins/html-output.d.ts.map +1 -0
  22. package/lib/plugins/html-output.js +171 -0
  23. package/lib/plugins/html-output.js.map +1 -0
  24. package/lib/plugins/server-log.d.ts +55 -0
  25. package/lib/plugins/server-log.d.ts.map +1 -0
  26. package/lib/plugins/server-log.js +80 -0
  27. package/lib/plugins/server-log.js.map +1 -0
  28. package/lib/plugins/view-context.d.ts +0 -5
  29. package/lib/plugins/view-context.d.ts.map +1 -1
  30. package/lib/plugins/view-context.js +0 -3
  31. package/lib/plugins/view-context.js.map +1 -1
  32. package/lib/server-log/compat.d.ts +36 -0
  33. package/lib/server-log/compat.d.ts.map +1 -0
  34. package/lib/server-log/compat.js +73 -0
  35. package/lib/server-log/compat.js.map +1 -0
  36. package/lib/server-log/dev-logs/api-list-handler.d.ts +6 -0
  37. package/lib/server-log/dev-logs/api-list-handler.d.ts.map +1 -0
  38. package/lib/server-log/dev-logs/api-list-handler.js +132 -0
  39. package/lib/server-log/dev-logs/api-list-handler.js.map +1 -0
  40. package/lib/server-log/dev-logs/controller.d.ts +45 -0
  41. package/lib/server-log/dev-logs/controller.d.ts.map +1 -0
  42. package/lib/server-log/dev-logs/controller.js +239 -0
  43. package/lib/server-log/dev-logs/controller.js.map +1 -0
  44. package/lib/server-log/dev-logs/health.controller.d.ts +15 -0
  45. package/lib/server-log/dev-logs/health.controller.d.ts.map +1 -0
  46. package/lib/server-log/dev-logs/health.controller.js +79 -0
  47. package/lib/server-log/dev-logs/health.controller.js.map +1 -0
  48. package/lib/server-log/dev-logs/helper/path-matcher.d.ts +117 -0
  49. package/lib/server-log/dev-logs/helper/path-matcher.d.ts.map +1 -0
  50. package/lib/server-log/dev-logs/helper/path-matcher.js +214 -0
  51. package/lib/server-log/dev-logs/helper/path-matcher.js.map +1 -0
  52. package/lib/server-log/dev-logs/index.d.ts +12 -0
  53. package/lib/server-log/dev-logs/index.d.ts.map +1 -0
  54. package/lib/server-log/dev-logs/index.js +61 -0
  55. package/lib/server-log/dev-logs/index.js.map +1 -0
  56. package/lib/server-log/dev-logs/router.d.ts +7 -0
  57. package/lib/server-log/dev-logs/router.d.ts.map +1 -0
  58. package/lib/server-log/dev-logs/router.js +40 -0
  59. package/lib/server-log/dev-logs/router.js.map +1 -0
  60. package/lib/server-log/dev-logs/services/capability.service.d.ts +33 -0
  61. package/lib/server-log/dev-logs/services/capability.service.d.ts.map +1 -0
  62. package/lib/server-log/dev-logs/services/capability.service.js +127 -0
  63. package/lib/server-log/dev-logs/services/capability.service.js.map +1 -0
  64. package/lib/server-log/dev-logs/services/file-reader.d.ts +10 -0
  65. package/lib/server-log/dev-logs/services/file-reader.d.ts.map +1 -0
  66. package/lib/server-log/dev-logs/services/file-reader.js +67 -0
  67. package/lib/server-log/dev-logs/services/file-reader.js.map +1 -0
  68. package/lib/server-log/dev-logs/services/index.d.ts +8 -0
  69. package/lib/server-log/dev-logs/services/index.d.ts.map +1 -0
  70. package/lib/server-log/dev-logs/services/index.js +30 -0
  71. package/lib/server-log/dev-logs/services/index.js.map +1 -0
  72. package/lib/server-log/dev-logs/services/parsers.d.ts +23 -0
  73. package/lib/server-log/dev-logs/services/parsers.d.ts.map +1 -0
  74. package/lib/server-log/dev-logs/services/parsers.js +157 -0
  75. package/lib/server-log/dev-logs/services/parsers.js.map +1 -0
  76. package/lib/server-log/dev-logs/services/server-log.service.d.ts +17 -0
  77. package/lib/server-log/dev-logs/services/server-log.service.d.ts.map +1 -0
  78. package/lib/server-log/dev-logs/services/server-log.service.js +119 -0
  79. package/lib/server-log/dev-logs/services/server-log.service.js.map +1 -0
  80. package/lib/server-log/dev-logs/services/trace.service.d.ts +14 -0
  81. package/lib/server-log/dev-logs/services/trace.service.d.ts.map +1 -0
  82. package/lib/server-log/dev-logs/services/trace.service.js +162 -0
  83. package/lib/server-log/dev-logs/services/trace.service.js.map +1 -0
  84. package/lib/server-log/dev-logs/services/trigger.service.d.ts +14 -0
  85. package/lib/server-log/dev-logs/services/trigger.service.d.ts.map +1 -0
  86. package/lib/server-log/dev-logs/services/trigger.service.js +153 -0
  87. package/lib/server-log/dev-logs/services/trigger.service.js.map +1 -0
  88. package/lib/server-log/dev-logs/services.d.ts +7 -0
  89. package/lib/server-log/dev-logs/services.d.ts.map +1 -0
  90. package/lib/server-log/dev-logs/services.js +20 -0
  91. package/lib/server-log/dev-logs/services.js.map +1 -0
  92. package/lib/server-log/dev-logs/sse/client-manager.d.ts +61 -0
  93. package/lib/server-log/dev-logs/sse/client-manager.d.ts.map +1 -0
  94. package/lib/server-log/dev-logs/sse/client-manager.js +140 -0
  95. package/lib/server-log/dev-logs/sse/client-manager.js.map +1 -0
  96. package/lib/server-log/dev-logs/sse/index.d.ts +5 -0
  97. package/lib/server-log/dev-logs/sse/index.d.ts.map +1 -0
  98. package/lib/server-log/dev-logs/sse/index.js +11 -0
  99. package/lib/server-log/dev-logs/sse/index.js.map +1 -0
  100. package/lib/server-log/dev-logs/sse/log-watcher.d.ts +51 -0
  101. package/lib/server-log/dev-logs/sse/log-watcher.d.ts.map +1 -0
  102. package/lib/server-log/dev-logs/sse/log-watcher.js +381 -0
  103. package/lib/server-log/dev-logs/sse/log-watcher.js.map +1 -0
  104. package/lib/server-log/dev-logs/sse/sse.controller.d.ts +25 -0
  105. package/lib/server-log/dev-logs/sse/sse.controller.d.ts.map +1 -0
  106. package/lib/server-log/dev-logs/sse/sse.controller.js +95 -0
  107. package/lib/server-log/dev-logs/sse/sse.controller.js.map +1 -0
  108. package/lib/server-log/dev-logs/types.d.ts +104 -0
  109. package/lib/server-log/dev-logs/types.d.ts.map +1 -0
  110. package/lib/server-log/dev-logs/types.js +3 -0
  111. package/lib/server-log/dev-logs/types.js.map +1 -0
  112. package/lib/server-log/dev-logs/utils.d.ts +68 -0
  113. package/lib/server-log/dev-logs/utils.d.ts.map +1 -0
  114. package/lib/server-log/dev-logs/utils.js +151 -0
  115. package/lib/server-log/dev-logs/utils.js.map +1 -0
  116. package/lib/server-log/openapi/controller.d.ts +7 -0
  117. package/lib/server-log/openapi/controller.d.ts.map +1 -0
  118. package/lib/server-log/openapi/controller.js +60 -0
  119. package/lib/server-log/openapi/controller.js.map +1 -0
  120. package/lib/server-log/openapi/index.d.ts +10 -0
  121. package/lib/server-log/openapi/index.d.ts.map +1 -0
  122. package/lib/server-log/openapi/index.js +48 -0
  123. package/lib/server-log/openapi/index.js.map +1 -0
  124. package/lib/server-log/openapi/router.d.ts +20 -0
  125. package/lib/server-log/openapi/router.d.ts.map +1 -0
  126. package/lib/server-log/openapi/router.js +26 -0
  127. package/lib/server-log/openapi/router.js.map +1 -0
  128. package/lib/server-log/openapi/services.d.ts +15 -0
  129. package/lib/server-log/openapi/services.d.ts.map +1 -0
  130. package/lib/server-log/openapi/services.js +276 -0
  131. package/lib/server-log/openapi/services.js.map +1 -0
  132. package/lib/server-log/openapi/spec-controller.d.ts +4 -0
  133. package/lib/server-log/openapi/spec-controller.d.ts.map +1 -0
  134. package/lib/server-log/openapi/spec-controller.js +136 -0
  135. package/lib/server-log/openapi/spec-controller.js.map +1 -0
  136. package/lib/server-log/openapi/types.d.ts +56 -0
  137. package/lib/server-log/openapi/types.d.ts.map +1 -0
  138. package/lib/server-log/openapi/types.js +3 -0
  139. package/lib/server-log/openapi/types.js.map +1 -0
  140. package/lib/server-log/openapi/utils.d.ts +18 -0
  141. package/lib/server-log/openapi/utils.d.ts.map +1 -0
  142. package/lib/server-log/openapi/utils.js +128 -0
  143. package/lib/server-log/openapi/utils.js.map +1 -0
  144. package/lib/server-log/register.d.ts +34 -0
  145. package/lib/server-log/register.d.ts.map +1 -0
  146. package/lib/server-log/register.js +196 -0
  147. package/lib/server-log/register.js.map +1 -0
  148. package/lib/server-log/types.d.ts +99 -0
  149. package/lib/server-log/types.d.ts.map +1 -0
  150. package/lib/server-log/types.js +3 -0
  151. package/lib/server-log/types.js.map +1 -0
  152. package/lib/utils/local-dev.d.ts +46 -0
  153. package/lib/utils/local-dev.d.ts.map +1 -0
  154. package/lib/utils/local-dev.js +96 -0
  155. package/lib/utils/local-dev.js.map +1 -0
  156. package/lib/utils/proxy-error.d.ts +29 -0
  157. package/lib/utils/proxy-error.d.ts.map +1 -0
  158. package/lib/utils/proxy-error.js +158 -0
  159. package/lib/utils/proxy-error.js.map +1 -0
  160. package/package.json +3 -1
  161. package/lib/plugins/basename-injection.d.ts.map +0 -1
  162. package/lib/plugins/basename-injection.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-output.js","sourceRoot":"","sources":["../../src/plugins/html-output.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Server-Log Middleware Plugin(dev only)for nestjs-vite-react fullstack 形态。
3
+ *
4
+ * 在 vite dev server 上挂内联的 dev-logs + openapi middleware,让妙搭外壳(编辑器
5
+ * 侧)能够:
6
+ * - 实时拿到 Nest server 写的日志(server.log / trace.log / *.std.log)
7
+ * - 拉取 OpenAPI spec 渲染「开放 API」面板
8
+ *
9
+ * dev-logs 提供的 endpoints(挂在 `<basePath>/dev/logs` 下):
10
+ * - GET /server-logs/stream SSE 实时流
11
+ * - GET /server-logs 合并读所有日志文件(分页 / 过滤)
12
+ * - GET /files/:fileName 单文件分页读
13
+ * - GET /trace/recent 最近 trace 列表(含分页 / 过滤)
14
+ * - GET /trace/:traceId 按 traceId 查 log entries
15
+ * - GET /trace/trigger/list 自动化 trigger 列表
16
+ * - GET /trace/trigger/:id trigger 详情
17
+ * - GET /trace/capability/list capability trace 列表
18
+ * - GET /health 健康检查
19
+ * - GET /api-list 所有 API 路由
20
+ *
21
+ * openapi 提供的 endpoints(挂在 `<basePath>/dev` 下):
22
+ * - GET /openapi.json 运行时 openapi.json(enhanceOpenApiWithSourceInfo 追加 x-source)
23
+ * - GET /openapi/spec docs/openapi.json 过滤后的 spec(前端「开放 API」面板消费)
24
+ *
25
+ * 跟 `coding-preset-vite-react/plugins/dev-logs.ts`(jsPage 的浏览器端 batch logger
26
+ * 收集 `/dev/logs/collect-batch` → `browser.log`)互不冲突——前者读 server 端日志
27
+ * 文件提供给外壳;后者收浏览器端 batch 上报写 `browser.log`。
28
+ *
29
+ * 实现原本来自 `@lark-apaas/devtool-kits`(`packages/tools/fullstack-toolkits/`
30
+ * 的发布名),按产品要求 user app node_modules 不能出现 devtool-kits 包名,整段
31
+ * source 内联到 `../server-log/`(包含 dev-logs/ + openapi/ + registerMiddlewares
32
+ * 入口)。行为跟 `fullstack-vite-preset` 通过 devtool-kits 间接挂载的版本完全一致。
33
+ *
34
+ * 调用方在 `src/index.ts` 已经做了 `isFullstack && serverLogPlugin(...)` gating,
35
+ * jsPage 形态根本不会挂这个 plugin —— 此处不再重复判断。
36
+ */
37
+ import type { Plugin } from 'vite';
38
+ export interface ServerLogPluginOptions {
39
+ /** 日志读取目录。默认 `process.env.LOG_DIR || './logs'`,跟 Nest server 写日志的目录一致 */
40
+ logDir?: string;
41
+ /** 挂载基路径(沙箱 base path),内部把 routes 挂到 `<basePath>/dev/logs/...` */
42
+ basePath?: string;
43
+ /**
44
+ * 项目根目录,用来定位 openapi 相关文件(`./client/src/api/gen/openapi.json`
45
+ * / `./docs/openapi.json` / `./server`)。默认 `process.cwd()`
46
+ */
47
+ rootDir?: string;
48
+ }
49
+ /**
50
+ * Vite plugin: 挂载内联的 dev-logs + openapi middleware。
51
+ * 仅 dev 模式启用;build 时不影响。
52
+ */
53
+ export declare function serverLogPlugin(options?: ServerLogPluginOptions): Plugin;
54
+ export default serverLogPlugin;
55
+ //# sourceMappingURL=server-log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-log.d.ts","sourceRoot":"","sources":["../../src/plugins/server-log.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAC;AAKlD,MAAM,WAAW,sBAAsB;IACrC,yEAAyE;IACzE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,CAgC5E;AAED,eAAe,eAAe,CAAC"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ /**
3
+ * Server-Log Middleware Plugin(dev only)for nestjs-vite-react fullstack 形态。
4
+ *
5
+ * 在 vite dev server 上挂内联的 dev-logs + openapi middleware,让妙搭外壳(编辑器
6
+ * 侧)能够:
7
+ * - 实时拿到 Nest server 写的日志(server.log / trace.log / *.std.log)
8
+ * - 拉取 OpenAPI spec 渲染「开放 API」面板
9
+ *
10
+ * dev-logs 提供的 endpoints(挂在 `<basePath>/dev/logs` 下):
11
+ * - GET /server-logs/stream SSE 实时流
12
+ * - GET /server-logs 合并读所有日志文件(分页 / 过滤)
13
+ * - GET /files/:fileName 单文件分页读
14
+ * - GET /trace/recent 最近 trace 列表(含分页 / 过滤)
15
+ * - GET /trace/:traceId 按 traceId 查 log entries
16
+ * - GET /trace/trigger/list 自动化 trigger 列表
17
+ * - GET /trace/trigger/:id trigger 详情
18
+ * - GET /trace/capability/list capability trace 列表
19
+ * - GET /health 健康检查
20
+ * - GET /api-list 所有 API 路由
21
+ *
22
+ * openapi 提供的 endpoints(挂在 `<basePath>/dev` 下):
23
+ * - GET /openapi.json 运行时 openapi.json(enhanceOpenApiWithSourceInfo 追加 x-source)
24
+ * - GET /openapi/spec docs/openapi.json 过滤后的 spec(前端「开放 API」面板消费)
25
+ *
26
+ * 跟 `coding-preset-vite-react/plugins/dev-logs.ts`(jsPage 的浏览器端 batch logger
27
+ * 收集 `/dev/logs/collect-batch` → `browser.log`)互不冲突——前者读 server 端日志
28
+ * 文件提供给外壳;后者收浏览器端 batch 上报写 `browser.log`。
29
+ *
30
+ * 实现原本来自 `@lark-apaas/devtool-kits`(`packages/tools/fullstack-toolkits/`
31
+ * 的发布名),按产品要求 user app node_modules 不能出现 devtool-kits 包名,整段
32
+ * source 内联到 `../server-log/`(包含 dev-logs/ + openapi/ + registerMiddlewares
33
+ * 入口)。行为跟 `fullstack-vite-preset` 通过 devtool-kits 间接挂载的版本完全一致。
34
+ *
35
+ * 调用方在 `src/index.ts` 已经做了 `isFullstack && serverLogPlugin(...)` gating,
36
+ * jsPage 形态根本不会挂这个 plugin —— 此处不再重复判断。
37
+ */
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.serverLogPlugin = serverLogPlugin;
43
+ const node_path_1 = __importDefault(require("node:path"));
44
+ const register_1 = require("../server-log/register");
45
+ const dev_logs_1 = require("../server-log/dev-logs");
46
+ const openapi_1 = require("../server-log/openapi");
47
+ /**
48
+ * Vite plugin: 挂载内联的 dev-logs + openapi middleware。
49
+ * 仅 dev 模式启用;build 时不影响。
50
+ */
51
+ function serverLogPlugin(options = {}) {
52
+ const logDir = options.logDir ?? process.env.LOG_DIR ?? './logs';
53
+ const basePath = options.basePath ?? '';
54
+ const rootDir = options.rootDir ?? process.cwd();
55
+ return {
56
+ name: 'nestjs-vite-react-server-log',
57
+ apply: 'serve',
58
+ configureServer(server) {
59
+ (0, register_1.registerMiddlewares)(server.middlewares, [
60
+ (0, dev_logs_1.createDevLogsMiddleware)({
61
+ logDir,
62
+ }),
63
+ // 注册 openapi middleware —— 参数与 fullstack-vite-preset 完全一致
64
+ // (commit e66dd8d8 引入 openapiSpecFilePath 时遗漏了本包)
65
+ (0, openapi_1.createOpenapiMiddleware)({
66
+ openapiFilePath: node_path_1.default.resolve(rootDir, './client/src/api/gen/openapi.json'),
67
+ openapiSpecFilePath: node_path_1.default.resolve(rootDir, './docs/openapi.json'),
68
+ serverDir: node_path_1.default.resolve(rootDir, './server'),
69
+ enableEnhancement: true,
70
+ }),
71
+ ], {
72
+ basePath,
73
+ isDev: true,
74
+ rootDir,
75
+ });
76
+ },
77
+ };
78
+ }
79
+ exports.default = serverLogPlugin;
80
+ //# sourceMappingURL=server-log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-log.js","sourceRoot":"","sources":["../../src/plugins/server-log.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;;;;;AAwBH,0CAgCC;AAtDD,0DAA6B;AAE7B,qDAA6D;AAC7D,qDAAiE;AACjE,mDAAgE;AAchE;;;GAGG;AACH,SAAgB,eAAe,CAAC,UAAkC,EAAE;IAClE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,QAAQ,CAAC;IACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEjD,OAAO;QACL,IAAI,EAAE,8BAA8B;QACpC,KAAK,EAAE,OAAO;QACd,eAAe,CAAC,MAAqB;YACnC,IAAA,8BAAmB,EACjB,MAAM,CAAC,WAAW,EAClB;gBACE,IAAA,kCAAuB,EAAC;oBACtB,MAAM;iBACP,CAAC;gBACF,0DAA0D;gBAC1D,kDAAkD;gBAClD,IAAA,iCAAuB,EAAC;oBACtB,eAAe,EAAE,mBAAI,CAAC,OAAO,CAAC,OAAO,EAAE,mCAAmC,CAAC;oBAC3E,mBAAmB,EAAE,mBAAI,CAAC,OAAO,CAAC,OAAO,EAAE,qBAAqB,CAAC;oBACjE,SAAS,EAAE,mBAAI,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC;oBAC5C,iBAAiB,EAAE,IAAI;iBACxB,CAAC;aACH,EACD;gBACE,QAAQ;gBACR,KAAK,EAAE,IAAI;gBACX,OAAO;aACR,CACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,kBAAe,eAAe,CAAC"}
@@ -16,11 +16,6 @@ export interface ViewContextPluginOptions {
16
16
  * 解析(prod / 部分本地 dev URL 没 base path 时用)。
17
17
  */
18
18
  appId?: string;
19
- /**
20
- * 客户端基础路径(如 `/app/<appId>`),用于 dev 模式注入 window.__BASENAME__。
21
- * build 模式走 HBS 占位符 `{{basename}}`,由 miaoda_page_server 填充。
22
- */
23
- clientBasePath?: string;
24
19
  }
25
20
  export declare function viewContextPlugin(options?: ViewContextPluginOptions): Plugin;
26
21
  export default viewContextPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"view-context.d.ts","sourceRoot":"","sources":["../../src/plugins/view-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAqB,MAAM,EAAE,MAAM,MAAM,CAAC;AAkCtD,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAGlB,WAAW,EAAE,MAAM,CAAC;CACrB;AA+BD,2DAA2D;AAC3D,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,oBAAoB,CAS7E;AAID,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAqED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG,MAAM,CAyChF;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"view-context.d.ts","sourceRoot":"","sources":["../../src/plugins/view-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAqB,MAAM,EAAE,MAAM,MAAM,CAAC;AAkCtD,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAGlB,WAAW,EAAE,MAAM,CAAC;CACrB;AA+BD,2DAA2D;AAC3D,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,oBAAoB,CAS7E;AAID,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAkED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG,MAAM,CAyChF;AAED,eAAe,iBAAiB,CAAC"}
@@ -82,7 +82,6 @@ function buildScriptFromRequest(options, ctx) {
82
82
  window.userName = ${JSON.stringify(ctx.userName)};
83
83
  window.csrfToken = ${JSON.stringify(ctx.csrfToken)};
84
84
  window.ENVIRONMENT = ${JSON.stringify(ctx.environment)};
85
- window.__BASENAME__ = ${JSON.stringify(options.clientBasePath || '/')};
86
85
  `;
87
86
  }
88
87
  /**
@@ -98,7 +97,6 @@ function buildScriptBuildPlaceholders() {
98
97
  window.userName = "{{userName}}";
99
98
  window.csrfToken = "{{csrfToken}}";
100
99
  window.ENVIRONMENT = "{{environment}}";
101
- window.__BASENAME__ = "{{basename}}";
102
100
  const appInfo = {
103
101
  name: "{{appName}}",
104
102
  avatar: "{{{appAvatar}}}",
@@ -121,7 +119,6 @@ function buildScriptDevNoCtxFallback(options) {
121
119
  return m ? decodeURIComponent(m[1]) : '';
122
120
  })();
123
121
  window.ENVIRONMENT = ${JSON.stringify(readDevEnvironment())};
124
- window.__BASENAME__ = ${JSON.stringify(options.clientBasePath || '/')};
125
122
  `;
126
123
  }
127
124
  function viewContextPlugin(options = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"view-context.js","sourceRoot":"","sources":["../../src/plugins/view-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view-context.js","sourceRoot":"","sources":["../../src/plugins/view-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Express/Connect 兼容层
3
+ * 让 middleware 同时支持 Express 和 Vite/Connect
4
+ */
5
+ import type { ServerResponse, IncomingMessage } from 'http';
6
+ type AnyResponse = ServerResponse & {
7
+ status?: (code: number) => AnyResponse;
8
+ json?: (data: unknown) => void;
9
+ send?: (data: unknown) => void;
10
+ };
11
+ type AnyRequest = IncomingMessage & {
12
+ query?: Record<string, string>;
13
+ params?: Record<string, string>;
14
+ };
15
+ /**
16
+ * 发送 JSON 响应,兼容 Express 和 Connect
17
+ */
18
+ export declare function sendJson(res: AnyResponse, data: unknown, statusCode?: number): void;
19
+ /**
20
+ * 发送错误响应
21
+ */
22
+ export declare function sendError(res: AnyResponse, message: string, error?: unknown, statusCode?: number): void;
23
+ /**
24
+ * 发送成功响应
25
+ */
26
+ export declare function sendSuccess(res: AnyResponse, data?: Record<string, unknown>): void;
27
+ /**
28
+ * 获取 query 参数,兼容 Express 和 Connect
29
+ */
30
+ export declare function getQuery(req: AnyRequest): Record<string, string>;
31
+ /**
32
+ * 获取单个 query 参数
33
+ */
34
+ export declare function getQueryParam(req: AnyRequest, key: string): string | undefined;
35
+ export {};
36
+ //# sourceMappingURL=compat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat.d.ts","sourceRoot":"","sources":["../../src/server-log/compat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAE5D,KAAK,WAAW,GAAG,cAAc,GAAG;IAClC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;IACvC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/B,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAChC,CAAC;AAEF,KAAK,UAAU,GAAG,eAAe,GAAG;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AAEF;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,SAAM,GAAG,IAAI,CAahF;AAED;;GAEG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,OAAO,EACf,UAAU,SAAM,GACf,IAAI,CAMN;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAElF;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOhE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG9E"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendJson = sendJson;
4
+ exports.sendError = sendError;
5
+ exports.sendSuccess = sendSuccess;
6
+ exports.getQuery = getQuery;
7
+ exports.getQueryParam = getQueryParam;
8
+ /**
9
+ * 发送 JSON 响应,兼容 Express 和 Connect
10
+ */
11
+ function sendJson(res, data, statusCode = 200) {
12
+ const statusFn = res.status;
13
+ const jsonFn = res.json;
14
+ if (typeof statusFn === 'function' && typeof jsonFn === 'function') {
15
+ // Express style
16
+ statusFn.call(res, statusCode);
17
+ jsonFn.call(res, data);
18
+ }
19
+ else {
20
+ // Connect/Node style
21
+ res.statusCode = statusCode;
22
+ res.setHeader('Content-Type', 'application/json');
23
+ res.end(JSON.stringify(data));
24
+ }
25
+ }
26
+ /**
27
+ * 发送错误响应
28
+ */
29
+ function sendError(res, message, error, statusCode = 500) {
30
+ const errorData = {
31
+ message,
32
+ ...(error ? { error: serializeError(error) } : {}),
33
+ };
34
+ sendJson(res, errorData, statusCode);
35
+ }
36
+ /**
37
+ * 发送成功响应
38
+ */
39
+ function sendSuccess(res, data) {
40
+ sendJson(res, { success: true, ...data }, 200);
41
+ }
42
+ /**
43
+ * 获取 query 参数,兼容 Express 和 Connect
44
+ */
45
+ function getQuery(req) {
46
+ if (req.query) {
47
+ return req.query;
48
+ }
49
+ // Connect/Node style - parse from URL
50
+ const url = new URL(req.url || '', `http://${req.headers.host}`);
51
+ return Object.fromEntries(url.searchParams.entries());
52
+ }
53
+ /**
54
+ * 获取单个 query 参数
55
+ */
56
+ function getQueryParam(req, key) {
57
+ const query = getQuery(req);
58
+ return query[key];
59
+ }
60
+ /**
61
+ * 序列化错误对象
62
+ */
63
+ function serializeError(error) {
64
+ if (error instanceof Error) {
65
+ return {
66
+ name: error.name,
67
+ message: error.message,
68
+ stack: error.stack,
69
+ };
70
+ }
71
+ return { message: String(error) };
72
+ }
73
+ //# sourceMappingURL=compat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat.js","sourceRoot":"","sources":["../../src/server-log/compat.ts"],"names":[],"mappings":";;AAoBA,4BAaC;AAKD,8BAWC;AAKD,kCAEC;AAKD,4BAOC;AAKD,sCAGC;AA3DD;;GAEG;AACH,SAAgB,QAAQ,CAAC,GAAgB,EAAE,IAAa,EAAE,UAAU,GAAG,GAAG;IACxE,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC;IAC5B,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;IACxB,IAAI,OAAO,QAAQ,KAAK,UAAU,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACnE,gBAAgB;QAChB,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,qBAAqB;QACrB,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;QAC5B,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAClD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS,CACvB,GAAgB,EAChB,OAAe,EACf,KAAe,EACf,UAAU,GAAG,GAAG;IAEhB,MAAM,SAAS,GAAG;QAChB,OAAO;QACP,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnD,CAAC;IACF,QAAQ,CAAC,GAAG,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,GAAgB,EAAE,IAA8B;IAC1E,QAAQ,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,GAAe;IACtC,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QACd,OAAO,GAAG,CAAC,KAA+B,CAAC;IAC7C,CAAC;IACD,sCAAsC;IACtC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACjE,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,GAAe,EAAE,GAAW;IACxD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACpC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { RequestHandler } from 'express';
2
+ /**
3
+ * Create handler for /api-list route
4
+ */
5
+ export declare function createApiListHandler(): RequestHandler;
6
+ //# sourceMappingURL=api-list-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-list-handler.d.ts","sourceRoot":"","sources":["../../../src/server-log/dev-logs/api-list-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,cAAc,EAAE,MAAM,SAAS,CAAC;AAwK5D;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CAsBrD"}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createApiListHandler = createApiListHandler;
4
+ const SERVER_PORT = process.env.SERVER_PORT || '3000';
5
+ /**
6
+ * 从路径中提取模块名
7
+ */
8
+ function extractModuleFromPath(path) {
9
+ const segments = path.split('/').filter(Boolean);
10
+ // 跳过 'api' 前缀
11
+ let startIndex = 0;
12
+ if (segments[0] === 'api') {
13
+ startIndex = 1;
14
+ }
15
+ // 跳过版本号 (v1, v2, etc.)
16
+ if (segments[startIndex]?.match(/^v\d+$/)) {
17
+ startIndex++;
18
+ }
19
+ const moduleName = segments[startIndex];
20
+ if (!moduleName || moduleName.startsWith(':')) {
21
+ return 'default';
22
+ }
23
+ return moduleName;
24
+ }
25
+ /**
26
+ * 生成路由唯一标识
27
+ */
28
+ function generateRouteId(method, path) {
29
+ const cleanPath = path.replace(/[/:]/g, '_').replace(/^_+|_+$/g, '');
30
+ return `${method.toLowerCase()}_${cleanPath}`;
31
+ }
32
+ /**
33
+ * 首字母大写
34
+ */
35
+ function capitalize(str) {
36
+ return str.charAt(0).toUpperCase() + str.slice(1);
37
+ }
38
+ /**
39
+ * 按模块分组路由
40
+ */
41
+ function groupRoutesByModule(routes) {
42
+ const groupMap = new Map();
43
+ routes.forEach((route) => {
44
+ const existing = groupMap.get(route.module) || [];
45
+ existing.push(route);
46
+ groupMap.set(route.module, existing);
47
+ });
48
+ const groups = [];
49
+ groupMap.forEach((apis, moduleName) => {
50
+ groups.push({
51
+ id: moduleName,
52
+ name: capitalize(moduleName),
53
+ apis: apis.sort((a, b) => a.path.localeCompare(b.path)),
54
+ });
55
+ });
56
+ return groups.sort((a, b) => a.name.localeCompare(b.name));
57
+ }
58
+ /**
59
+ * 从后端 debug 接口获取路由列表
60
+ */
61
+ async function fetchRoutesFromBackend(basePath) {
62
+ // basePath 例如 /af/p/app_xxx,需要拼接完整路径
63
+ const normalizedBasePath = basePath.replace(/\/+$/, '');
64
+ const url = `http://localhost:${SERVER_PORT}${normalizedBasePath}/api/__framework__/debug`;
65
+ const response = await fetch(url, {
66
+ method: 'GET',
67
+ headers: {
68
+ 'Accept': 'application/json',
69
+ },
70
+ });
71
+ if (!response.ok) {
72
+ throw new Error(`Failed to fetch routes: ${response.status}`);
73
+ }
74
+ const data = (await response.json());
75
+ // 从 debug 接口响应中提取路由信息
76
+ const routeConfig = data['路由配置'];
77
+ if (!routeConfig || !routeConfig.routes || !Array.isArray(routeConfig.routes)) {
78
+ console.warn('[api-list] Invalid routes data:', routeConfig);
79
+ return [];
80
+ }
81
+ const debugRoutes = routeConfig.routes;
82
+ return debugRoutes
83
+ .filter((route) => {
84
+ // 只保留包含 /api/ 的路由,排除内部路由和 capability 路由
85
+ return route.path.includes('/api/') &&
86
+ !route.path.includes('__framework__') &&
87
+ !route.path.includes('__innerapi__') &&
88
+ !route.path.includes('__platform__') &&
89
+ !route.path.includes('/api/capability') &&
90
+ !route.path.includes('/api/authnpaas') &&
91
+ !route.path.includes('/api/sdk_innerapi');
92
+ })
93
+ .map((route) => {
94
+ // 从完整路径中提取 /api/... 部分
95
+ const apiPathMatch = route.path.match(/\/api\/.*/);
96
+ const apiPath = apiPathMatch ? apiPathMatch[0] : route.path;
97
+ const method = route.method || 'ALL';
98
+ return {
99
+ id: generateRouteId(method, apiPath),
100
+ path: apiPath,
101
+ method,
102
+ module: extractModuleFromPath(apiPath),
103
+ };
104
+ });
105
+ }
106
+ /**
107
+ * Create handler for /api-list route
108
+ */
109
+ function createApiListHandler() {
110
+ return async (_req, res) => {
111
+ try {
112
+ // 从环境变量或请求中获取 basePath
113
+ // req.baseUrl 是当前 router 的挂载路径,如 /af/p/app_xxx/dev/logs
114
+ // 我们需要提取 /af/p/app_xxx 部分
115
+ const basePath = process.env.CLIENT_BASE_PATH || '';
116
+ const routes = await fetchRoutesFromBackend(basePath);
117
+ const groups = groupRoutesByModule(routes);
118
+ res.json({
119
+ groups,
120
+ total: routes.length,
121
+ });
122
+ }
123
+ catch (error) {
124
+ console.error('[api-list] Failed to fetch routes:', error);
125
+ res.status(500).json({
126
+ error: 'Failed to fetch routes',
127
+ message: error instanceof Error ? error.message : 'Unknown error',
128
+ });
129
+ }
130
+ };
131
+ }
132
+ //# sourceMappingURL=api-list-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-list-handler.js","sourceRoot":"","sources":["../../../src/server-log/dev-logs/api-list-handler.ts"],"names":[],"mappings":";;AA2KA,oDAsBC;AA/LD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC;AA4CtD;;GAEG;AACH,SAAS,qBAAqB,CAAC,IAAY;IACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEjD,cAAc;IACd,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;QAC1B,UAAU,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,uBAAuB;IACvB,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,UAAU,EAAE,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,MAAc,EAAE,IAAY;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACrE,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,SAAS,EAAE,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,MAAsB;IACjD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IAEnD,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAClD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAoB,EAAE,CAAC;IAEnC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE;QACpC,MAAM,CAAC,IAAI,CAAC;YACV,EAAE,EAAE,UAAU;YACd,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC;YAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACxD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,sBAAsB,CAAC,QAAgB;IACpD,qCAAqC;IACrC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,oBAAoB,WAAW,GAAG,kBAAkB,0BAA0B,CAAC;IAE3F,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,QAAQ,EAAE,kBAAkB;SAC7B;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;IAEtD,sBAAsB;IACtB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9E,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,WAAW,CAAC,CAAC;QAC7D,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC;IAEvC,OAAO,WAAW;SACf,MAAM,CAAC,CAAC,KAAqB,EAAE,EAAE;QAChC,wCAAwC;QACxC,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YACjC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;YACrC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YACpC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YACpC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACvC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACtC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAC9C,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,KAAqB,EAAE,EAAE;QAC7B,uBAAuB;QACvB,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QAE5D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC;QAErC,OAAO;YACL,EAAE,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC;YACpC,IAAI,EAAE,OAAO;YACb,MAAM;YACN,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC;SACvC,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,OAAO,KAAK,EAAE,IAAa,EAAE,GAAa,EAAE,EAAE;QAC5C,IAAI,CAAC;YACH,uBAAuB;YACvB,wDAAwD;YACxD,0BAA0B;YAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC;YACpD,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAE3C,GAAG,CAAC,IAAI,CAAC;gBACP,MAAM;gBACN,KAAK,EAAE,MAAM,CAAC,MAAM;aACrB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;YAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,wBAAwB;gBAC/B,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;aAClE,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,45 @@
1
+ import type { Request, Response } from 'express';
2
+ /**
3
+ * Create handler for getting log entries by trace ID
4
+ */
5
+ export declare function createGetTraceEntriesHandler(logDir: string): (req: Request, res: Response) => Promise<void | Response<any, Record<string, any>>>;
6
+ /**
7
+ * Create handler for getting recent trace calls
8
+ */
9
+ export declare function createGetRecentTracesHandler(logDir: string): (req: Request, res: Response) => Promise<void>;
10
+ /**
11
+ * Create handler for getting log file by name
12
+ */
13
+ export declare function createGetLogFileHandler(logDir: string): (req: Request, res: Response) => Promise<void | Response<any, Record<string, any>>>;
14
+ /**
15
+ * Create handler for getting server logs
16
+ *
17
+ * Reads from 4 log sources:
18
+ * - server.log (Pino JSON)
19
+ * - trace.log (Pino JSON)
20
+ * - server.std.log (plain text)
21
+ * - client.std.log (plain text)
22
+ *
23
+ * Query parameters:
24
+ * - limit: number of logs to return (default: 100, max: 1000)
25
+ * - offset: offset for pagination (default: 0)
26
+ * - levels: comma-separated log levels (e.g., "error,warn")
27
+ * - sources: comma-separated sources (e.g., "server,trace")
28
+ */
29
+ export declare function createGetServerLogsHandler(logDir: string): (req: Request, res: Response) => Promise<void | Response<any, Record<string, any>>>;
30
+ /**
31
+ * Create handler for getting all automation trigger list in trace.log
32
+ * filter by request_body.trigger & limit & path=/__innerapi__/automation/invoke
33
+ */
34
+ export declare function createGetTriggerListHandler(logDir: string): (req: Request, res: Response) => Promise<void | Response<any, Record<string, any>>>;
35
+ export declare function createGetTriggerDetailHandler(logDir: string): (req: Request, res: Response) => Promise<void | Response<any, Record<string, any>>>;
36
+ /**
37
+ * Create handler for getting capability trace list
38
+ * Filter by capability_id in server.log
39
+ *
40
+ * Query parameters:
41
+ * - capability_id: required, the capability ID to filter
42
+ * - limit: number of traces to return (default: 10, max: 200)
43
+ */
44
+ export declare function createGetCapabilityTraceListHandler(logDir: string): (req: Request, res: Response) => Promise<void | Response<any, Record<string, any>>>;
45
+ //# sourceMappingURL=controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../src/server-log/dev-logs/controller.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAyBjD;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,IAG3C,KAAK,OAAO,EAAE,KAAK,QAAQ,wDAuB1C;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,IAG3C,KAAK,OAAO,EAAE,KAAK,QAAQ,mBAsB1C;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,IACtC,KAAK,OAAO,EAAE,KAAK,QAAQ,wDAwB1C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,IACzC,KAAK,OAAO,EAAE,KAAK,QAAQ,wDAkC1C;AACD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,IAG1C,KAAK,OAAO,EAAE,KAAK,QAAQ,wDAwB1C;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,IAG5C,KAAK,OAAO,EAAE,KAAK,QAAQ,wDAqB1C;AAED;;;;;;;GAOG;AACH,wBAAgB,mCAAmC,CAAC,MAAM,EAAE,MAAM,IAGlD,KAAK,OAAO,EAAE,KAAK,QAAQ,wDAqB1C"}