@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,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readTriggerList = readTriggerList;
4
+ exports.readTriggerDetail = readTriggerDetail;
5
+ const node_fs_1 = require("node:fs");
6
+ const node_readline_1 = require("node:readline");
7
+ const utils_1 = require("../utils");
8
+ const file_reader_1 = require("./file-reader");
9
+ /**
10
+ * Read all automation trigger list in trace.log
11
+ * filter by request_body.trigger & limit & path=/__innerapi__/automation/invoke
12
+ */
13
+ async function readTriggerList(filePath, trigger, path, limit, triggerID) {
14
+ if (!(await (0, utils_1.fileExists)(filePath))) {
15
+ return undefined;
16
+ }
17
+ const config = {
18
+ maxEntriesPerTrace: 10,
19
+ chunkSize: 64 * 1024,
20
+ };
21
+ const builders = new Map();
22
+ const completedCalls = [];
23
+ const createTraceBuilder = (traceId) => ({
24
+ traceId,
25
+ entries: [],
26
+ method: undefined,
27
+ path: undefined,
28
+ startTime: undefined,
29
+ endTime: undefined,
30
+ statusCode: undefined,
31
+ durationMs: undefined,
32
+ hasCompleted: false,
33
+ });
34
+ const shouldIncludeInCompletedCalls = (builder) => {
35
+ const alreadyAdded = completedCalls.some(call => call.traceId === builder.traceId);
36
+ if (alreadyAdded) {
37
+ return false;
38
+ }
39
+ const isAutomationTrigger = builder.path?.endsWith(path);
40
+ if (!isAutomationTrigger) {
41
+ return false;
42
+ }
43
+ if (trigger && builder.entries.length > 0) {
44
+ const requestEntry = builder.entries.find(e => e.request_body?.trigger);
45
+ if (requestEntry?.request_body?.trigger) {
46
+ return String(requestEntry.request_body.trigger) === trigger
47
+ && (triggerID ? requestEntry?.request_body?.triggerID === triggerID : true);
48
+ }
49
+ return false;
50
+ }
51
+ return true;
52
+ };
53
+ const updateBuilderMetadata = (builder, entry) => {
54
+ if (entry.method && !builder.method)
55
+ builder.method = String(entry.method);
56
+ if (entry.path && !builder.path)
57
+ builder.path = String(entry.path);
58
+ builder.entries.push(entry);
59
+ if (builder.entries.length > config.maxEntriesPerTrace) {
60
+ builder.entries.shift();
61
+ }
62
+ if (shouldIncludeInCompletedCalls(builder)) {
63
+ completedCalls.push(builder);
64
+ if (limit && completedCalls.length > limit) {
65
+ completedCalls.pop();
66
+ }
67
+ }
68
+ };
69
+ const handleRequestCompleted = (builder, entry, message) => {
70
+ builder.hasCompleted = true;
71
+ builder.endTime = entry.time;
72
+ builder.statusCode = (0, utils_1.extractNumber)(message, /status_code:\s*(\d+)/);
73
+ builder.durationMs = (0, utils_1.extractNumber)(message, /duration_ms:\s*(\d+)/);
74
+ if (!builder.path && entry.path) {
75
+ builder.path = String(entry.path);
76
+ }
77
+ if (shouldIncludeInCompletedCalls(builder)) {
78
+ completedCalls.push(builder);
79
+ if (limit && completedCalls.length > limit) {
80
+ completedCalls.pop();
81
+ }
82
+ }
83
+ };
84
+ const processLogEntry = (entry) => {
85
+ const { trace_id: traceId, message = '' } = entry;
86
+ if (!traceId)
87
+ return;
88
+ let builder = builders.get(traceId);
89
+ if (!builder) {
90
+ builder = createTraceBuilder(traceId);
91
+ builders.set(traceId, builder);
92
+ }
93
+ updateBuilderMetadata(builder, entry);
94
+ if (!builder.hasCompleted && (message.includes('HTTP request completed') || message.includes('HTTP request failed'))) {
95
+ handleRequestCompleted(builder, entry, message);
96
+ }
97
+ if (message.includes('HTTP request started') && !builder.startTime) {
98
+ builder.startTime = entry.time;
99
+ }
100
+ };
101
+ const processLine = (line) => {
102
+ const entry = (0, utils_1.parseLogLine)(line);
103
+ if (entry?.trace_id) {
104
+ processLogEntry(entry);
105
+ }
106
+ };
107
+ await (0, file_reader_1.readFileReverse)(filePath, config.chunkSize, processLine);
108
+ return {
109
+ page: 1,
110
+ pageSize: completedCalls.length,
111
+ totalCalls: completedCalls.length,
112
+ totalPages: 1,
113
+ calls: completedCalls.map((builder) => ({
114
+ traceId: builder.traceId,
115
+ method: builder.method,
116
+ path: builder.path,
117
+ startTime: builder.startTime,
118
+ endTime: builder.endTime,
119
+ statusCode: builder.statusCode,
120
+ durationMs: builder.durationMs,
121
+ entries: builder.entries.slice().reverse(),
122
+ })),
123
+ };
124
+ }
125
+ /**
126
+ * Read trigger detail entries by instance ID
127
+ */
128
+ async function readTriggerDetail(filePath, path, instanceID) {
129
+ const exists = await (0, utils_1.fileExists)(filePath);
130
+ if (!exists) {
131
+ return undefined;
132
+ }
133
+ const matches = [];
134
+ const stream = (0, node_fs_1.createReadStream)(filePath, { encoding: 'utf8' });
135
+ const rl = (0, node_readline_1.createInterface)({ input: stream, crlfDelay: Infinity });
136
+ for await (const line of rl) {
137
+ const entry = (0, utils_1.parseLogLine)(line);
138
+ if (!entry)
139
+ continue;
140
+ const isAutomationTrigger = entry.path?.endsWith(path);
141
+ const hasInstanceID = entry.instance_id === instanceID && entry.trigger;
142
+ if (!isAutomationTrigger || !hasInstanceID)
143
+ continue;
144
+ matches.push(entry);
145
+ }
146
+ rl.close();
147
+ stream.close();
148
+ return {
149
+ instanceID,
150
+ entries: matches,
151
+ };
152
+ }
153
+ //# sourceMappingURL=trigger.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger.service.js","sourceRoot":"","sources":["../../../../src/server-log/dev-logs/services/trigger.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Re-export all services from the services directory
3
+ * This file maintains backward compatibility with existing imports
4
+ */
5
+ export { readLogEntriesByTrace, readRecentTraceCalls, readLogFilePage, readServerLogs, readTriggerList, readTriggerDetail, readCapabilityTraceList, } from './services/index';
6
+ export type { CapabilityTraceListResponse } from './services/index';
7
+ //# sourceMappingURL=services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/server-log/dev-logs/services.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAEL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EAEf,cAAc,EAEd,eAAe,EACf,iBAAiB,EAEjB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readCapabilityTraceList = exports.readTriggerDetail = exports.readTriggerList = exports.readServerLogs = exports.readLogFilePage = exports.readRecentTraceCalls = exports.readLogEntriesByTrace = void 0;
4
+ /**
5
+ * Re-export all services from the services directory
6
+ * This file maintains backward compatibility with existing imports
7
+ */
8
+ var index_1 = require("./services/index");
9
+ // Trace services
10
+ Object.defineProperty(exports, "readLogEntriesByTrace", { enumerable: true, get: function () { return index_1.readLogEntriesByTrace; } });
11
+ Object.defineProperty(exports, "readRecentTraceCalls", { enumerable: true, get: function () { return index_1.readRecentTraceCalls; } });
12
+ Object.defineProperty(exports, "readLogFilePage", { enumerable: true, get: function () { return index_1.readLogFilePage; } });
13
+ // Server log services
14
+ Object.defineProperty(exports, "readServerLogs", { enumerable: true, get: function () { return index_1.readServerLogs; } });
15
+ // Trigger services
16
+ Object.defineProperty(exports, "readTriggerList", { enumerable: true, get: function () { return index_1.readTriggerList; } });
17
+ Object.defineProperty(exports, "readTriggerDetail", { enumerable: true, get: function () { return index_1.readTriggerDetail; } });
18
+ // Capability services
19
+ Object.defineProperty(exports, "readCapabilityTraceList", { enumerable: true, get: function () { return index_1.readCapabilityTraceList; } });
20
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/server-log/dev-logs/services.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,0CAY0B;AAXxB,iBAAiB;AACjB,8GAAA,qBAAqB,OAAA;AACrB,6GAAA,oBAAoB,OAAA;AACpB,wGAAA,eAAe,OAAA;AACf,sBAAsB;AACtB,uGAAA,cAAc,OAAA;AACd,mBAAmB;AACnB,wGAAA,eAAe,OAAA;AACf,0GAAA,iBAAiB,OAAA;AACjB,sBAAsB;AACtB,gHAAA,uBAAuB,OAAA"}
@@ -0,0 +1,61 @@
1
+ import type { Response } from 'express';
2
+ /**
3
+ * ClientManager - manages SSE client connections
4
+ */
5
+ export declare class ClientManager {
6
+ private clients;
7
+ private debug;
8
+ constructor(options?: {
9
+ debug?: boolean;
10
+ });
11
+ private log;
12
+ /**
13
+ * Generate a unique client ID
14
+ */
15
+ generateClientId(): string;
16
+ /**
17
+ * Add a new client connection
18
+ */
19
+ addClient(id: string, res: Response): void;
20
+ /**
21
+ * Remove a client connection
22
+ */
23
+ removeClient(id: string): void;
24
+ /**
25
+ * Get current client count
26
+ */
27
+ getClientCount(): number;
28
+ /**
29
+ * Check if a client exists
30
+ */
31
+ hasClient(id: string): boolean;
32
+ /**
33
+ * Send SSE event to a specific client
34
+ */
35
+ sendToClient(clientId: string, event: string, data: unknown): boolean;
36
+ /**
37
+ * Broadcast SSE event to all clients
38
+ */
39
+ broadcast(event: string, data: unknown): void;
40
+ /**
41
+ * Format SSE message
42
+ * SSE format: event: <event>\ndata: <json>\n\n
43
+ */
44
+ private formatSSEMessage;
45
+ /**
46
+ * Get all client IDs
47
+ */
48
+ getClientIds(): string[];
49
+ /**
50
+ * Get client info
51
+ */
52
+ getClientInfo(id: string): {
53
+ id: string;
54
+ connectedAt: number;
55
+ } | null;
56
+ /**
57
+ * Close all client connections
58
+ */
59
+ closeAll(): void;
60
+ }
61
+ //# sourceMappingURL=client-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-manager.d.ts","sourceRoot":"","sources":["../../../../src/server-log/dev-logs/sse/client-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAQxC;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,KAAK,CAAkB;gBAEnB,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO;IAI7C,OAAO,CAAC,GAAG;IAMX;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI;IAS1C;;OAEG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAO9B;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI9B;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO;IAkBrE;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAmB7C;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAWrE;;OAEG;IACH,QAAQ,IAAI,IAAI;CAWjB"}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClientManager = void 0;
4
+ /**
5
+ * ClientManager - manages SSE client connections
6
+ */
7
+ class ClientManager {
8
+ constructor(options = {}) {
9
+ this.clients = new Map();
10
+ this.debug = false;
11
+ this.debug = options.debug ?? false;
12
+ }
13
+ log(...args) {
14
+ if (this.debug) {
15
+ console.log('[ClientManager]', ...args);
16
+ }
17
+ }
18
+ /**
19
+ * Generate a unique client ID
20
+ */
21
+ generateClientId() {
22
+ return `client_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;
23
+ }
24
+ /**
25
+ * Add a new client connection
26
+ */
27
+ addClient(id, res) {
28
+ this.clients.set(id, {
29
+ id,
30
+ res,
31
+ connectedAt: Date.now(),
32
+ });
33
+ this.log(`Client connected: ${id}, total clients: ${this.clients.size}`);
34
+ }
35
+ /**
36
+ * Remove a client connection
37
+ */
38
+ removeClient(id) {
39
+ if (this.clients.has(id)) {
40
+ this.clients.delete(id);
41
+ this.log(`Client disconnected: ${id}, total clients: ${this.clients.size}`);
42
+ }
43
+ }
44
+ /**
45
+ * Get current client count
46
+ */
47
+ getClientCount() {
48
+ return this.clients.size;
49
+ }
50
+ /**
51
+ * Check if a client exists
52
+ */
53
+ hasClient(id) {
54
+ return this.clients.has(id);
55
+ }
56
+ /**
57
+ * Send SSE event to a specific client
58
+ */
59
+ sendToClient(clientId, event, data) {
60
+ const client = this.clients.get(clientId);
61
+ if (!client) {
62
+ return false;
63
+ }
64
+ try {
65
+ const message = this.formatSSEMessage(event, data);
66
+ client.res.write(message);
67
+ return true;
68
+ }
69
+ catch (error) {
70
+ this.log(`Failed to send to client ${clientId}:`, error);
71
+ // Remove client if send fails
72
+ this.removeClient(clientId);
73
+ return false;
74
+ }
75
+ }
76
+ /**
77
+ * Broadcast SSE event to all clients
78
+ */
79
+ broadcast(event, data) {
80
+ const message = this.formatSSEMessage(event, data);
81
+ const failedClients = [];
82
+ Array.from(this.clients.entries()).forEach(([id, client]) => {
83
+ try {
84
+ client.res.write(message);
85
+ }
86
+ catch (error) {
87
+ this.log(`Broadcast failed for client ${id}:`, error);
88
+ failedClients.push(id);
89
+ }
90
+ });
91
+ // Remove failed clients
92
+ failedClients.forEach(id => {
93
+ this.removeClient(id);
94
+ });
95
+ }
96
+ /**
97
+ * Format SSE message
98
+ * SSE format: event: <event>\ndata: <json>\n\n
99
+ */
100
+ formatSSEMessage(event, data) {
101
+ const jsonData = JSON.stringify(data);
102
+ return `event: ${event}\ndata: ${jsonData}\n\n`;
103
+ }
104
+ /**
105
+ * Get all client IDs
106
+ */
107
+ getClientIds() {
108
+ return Array.from(this.clients.keys());
109
+ }
110
+ /**
111
+ * Get client info
112
+ */
113
+ getClientInfo(id) {
114
+ const client = this.clients.get(id);
115
+ if (!client) {
116
+ return null;
117
+ }
118
+ return {
119
+ id: client.id,
120
+ connectedAt: client.connectedAt,
121
+ };
122
+ }
123
+ /**
124
+ * Close all client connections
125
+ */
126
+ closeAll() {
127
+ this.log(`Closing all ${this.clients.size} clients`);
128
+ Array.from(this.clients.entries()).forEach(([id, client]) => {
129
+ try {
130
+ client.res.end();
131
+ }
132
+ catch (error) {
133
+ this.log(`Error closing client ${id}:`, error);
134
+ }
135
+ });
136
+ this.clients.clear();
137
+ }
138
+ }
139
+ exports.ClientManager = ClientManager;
140
+ //# sourceMappingURL=client-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-manager.js","sourceRoot":"","sources":["../../../../src/server-log/dev-logs/sse/client-manager.ts"],"names":[],"mappings":";;;AAQA;;GAEG;AACH,MAAa,aAAa;IAIxB,YAAY,UAA+B,EAAE;QAHrC,YAAO,GAA2B,IAAI,GAAG,EAAE,CAAC;QAC5C,UAAK,GAAY,KAAK,CAAC;QAG7B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;IACtC,CAAC;IAEO,GAAG,CAAC,GAAG,IAAe;QAC5B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,UAAU,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,EAAU,EAAE,GAAa;QACjC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE;YACnB,EAAE;YACF,GAAG;YACH,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,oBAAoB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,EAAU;QACrB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,wBAAwB,EAAE,oBAAoB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,EAAU;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,QAAgB,EAAE,KAAa,EAAE,IAAa;QACzD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACnD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,4BAA4B,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;YACzD,8BAA8B;YAC9B,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAa,EAAE,IAAa;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,aAAa,GAAa,EAAE,CAAC;QAEnC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YAC1D,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,+BAA+B,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;gBACtD,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,wBAAwB;QACxB,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACzB,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,KAAa,EAAE,IAAa;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO,UAAU,KAAK,WAAW,QAAQ,MAAM,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,EAAU;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,IAAI,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YAC1D,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YACnB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,wBAAwB,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACjD,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;CACF;AAhJD,sCAgJC"}
@@ -0,0 +1,5 @@
1
+ export { LogWatcher } from './log-watcher';
2
+ export type { LogSubscriber } from './log-watcher';
3
+ export { ClientManager } from './client-manager';
4
+ export { createSSEHandler, createSSEStatusHandler } from './sse.controller';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server-log/dev-logs/sse/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSSEStatusHandler = exports.createSSEHandler = exports.ClientManager = exports.LogWatcher = void 0;
4
+ var log_watcher_1 = require("./log-watcher");
5
+ Object.defineProperty(exports, "LogWatcher", { enumerable: true, get: function () { return log_watcher_1.LogWatcher; } });
6
+ var client_manager_1 = require("./client-manager");
7
+ Object.defineProperty(exports, "ClientManager", { enumerable: true, get: function () { return client_manager_1.ClientManager; } });
8
+ var sse_controller_1 = require("./sse.controller");
9
+ Object.defineProperty(exports, "createSSEHandler", { enumerable: true, get: function () { return sse_controller_1.createSSEHandler; } });
10
+ Object.defineProperty(exports, "createSSEStatusHandler", { enumerable: true, get: function () { return sse_controller_1.createSSEStatusHandler; } });
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server-log/dev-logs/sse/index.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AAGnB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AAEtB,mDAA4E;AAAnE,kHAAA,gBAAgB,OAAA;AAAE,wHAAA,sBAAsB,OAAA"}
@@ -0,0 +1,51 @@
1
+ import type { ServerLog } from '../types';
2
+ export type LogSubscriber = (log: ServerLog) => void;
3
+ /**
4
+ * LogWatcher - watches log files and emits new log entries via SSE
5
+ */
6
+ export declare class LogWatcher {
7
+ private logDir;
8
+ private watchers;
9
+ private filePositions;
10
+ private subscribers;
11
+ private isRunning;
12
+ private debug;
13
+ private readonly logFiles;
14
+ constructor(options?: {
15
+ debug?: boolean;
16
+ });
17
+ private log;
18
+ /**
19
+ * Start watching log files
20
+ */
21
+ start(logDir: string): void;
22
+ /**
23
+ * Stop watching all files
24
+ */
25
+ stop(): void;
26
+ /**
27
+ * Subscribe to new log events
28
+ */
29
+ onLog(callback: LogSubscriber): () => void;
30
+ /**
31
+ * Get subscriber count
32
+ */
33
+ getSubscriberCount(): number;
34
+ /**
35
+ * Watch a single log file
36
+ */
37
+ private watchFile;
38
+ /**
39
+ * Restart a file watcher after error
40
+ */
41
+ private restartWatcher;
42
+ /**
43
+ * Handle file change event - read new content
44
+ */
45
+ private handleFileChange;
46
+ /**
47
+ * Notify all subscribers of new log
48
+ */
49
+ private notifySubscribers;
50
+ }
51
+ //# sourceMappingURL=log-watcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-watcher.d.ts","sourceRoot":"","sources":["../../../../src/server-log/dev-logs/sse/log-watcher.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAiJ1C,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC;AAQrD;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAwC;IACxD,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,KAAK,CAAkB;IAE/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAKvB;gBAEU,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO;IAI7C,OAAO,CAAC,GAAG;IAMX;;OAEG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAe3B;;OAEG;IACH,IAAI,IAAI,IAAI;IAiBZ;;OAEG;IACH,KAAK,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,IAAI;IAU1C;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,OAAO,CAAC,SAAS;IAwCjB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAwDxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAS1B"}