claude-chrome-parallel 3.0.3 → 3.4.0

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 (315) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +398 -464
  3. package/assets/demo.svg +278 -173
  4. package/dist/cdp/client.d.ts +60 -2
  5. package/dist/cdp/client.d.ts.map +1 -1
  6. package/dist/cdp/client.js +344 -5
  7. package/dist/cdp/client.js.map +1 -1
  8. package/dist/cdp/connection-pool.d.ts.map +1 -1
  9. package/dist/cdp/connection-pool.js +20 -4
  10. package/dist/cdp/connection-pool.js.map +1 -1
  11. package/dist/chrome/launcher.d.ts +11 -0
  12. package/dist/chrome/launcher.d.ts.map +1 -1
  13. package/dist/chrome/launcher.js +124 -10
  14. package/dist/chrome/launcher.js.map +1 -1
  15. package/dist/chrome/pool.d.ts +54 -0
  16. package/dist/chrome/pool.d.ts.map +1 -0
  17. package/dist/chrome/pool.js +301 -0
  18. package/dist/chrome/pool.js.map +1 -0
  19. package/dist/chrome/profile-detector.d.ts +52 -0
  20. package/dist/chrome/profile-detector.d.ts.map +1 -0
  21. package/dist/chrome/profile-detector.js +246 -0
  22. package/dist/chrome/profile-detector.js.map +1 -0
  23. package/dist/cli/claude-session.js +15 -15
  24. package/dist/cli/index.js +162 -37
  25. package/dist/cli/index.js.map +1 -1
  26. package/dist/cli/update-check.d.ts +9 -0
  27. package/dist/cli/update-check.js +141 -0
  28. package/dist/cli/update-check.js.map +1 -0
  29. package/dist/config/global.d.ts +31 -0
  30. package/dist/config/global.d.ts.map +1 -1
  31. package/dist/config/global.js.map +1 -1
  32. package/dist/dashboard/activity-tracker.d.ts +60 -0
  33. package/dist/dashboard/activity-tracker.d.ts.map +1 -0
  34. package/dist/dashboard/activity-tracker.js +178 -0
  35. package/dist/dashboard/activity-tracker.js.map +1 -0
  36. package/dist/dashboard/ansi.d.ts +117 -0
  37. package/dist/dashboard/ansi.d.ts.map +1 -0
  38. package/dist/dashboard/ansi.js +199 -0
  39. package/dist/dashboard/ansi.js.map +1 -0
  40. package/dist/dashboard/index.d.ts +110 -0
  41. package/dist/dashboard/index.d.ts.map +1 -0
  42. package/dist/dashboard/index.js +412 -0
  43. package/dist/dashboard/index.js.map +1 -0
  44. package/dist/dashboard/keyboard-handler.d.ts +43 -0
  45. package/dist/dashboard/keyboard-handler.d.ts.map +1 -0
  46. package/dist/dashboard/keyboard-handler.js +215 -0
  47. package/dist/dashboard/keyboard-handler.js.map +1 -0
  48. package/dist/dashboard/operation-controller.d.ts +76 -0
  49. package/dist/dashboard/operation-controller.d.ts.map +1 -0
  50. package/dist/dashboard/operation-controller.js +167 -0
  51. package/dist/dashboard/operation-controller.js.map +1 -0
  52. package/dist/dashboard/renderer.d.ts +76 -0
  53. package/dist/dashboard/renderer.d.ts.map +1 -0
  54. package/dist/dashboard/renderer.js +193 -0
  55. package/dist/dashboard/renderer.js.map +1 -0
  56. package/dist/dashboard/types.d.ts +56 -0
  57. package/dist/dashboard/types.d.ts.map +1 -0
  58. package/dist/dashboard/types.js +12 -0
  59. package/dist/dashboard/types.js.map +1 -0
  60. package/dist/dashboard/views/main-view.d.ts +23 -0
  61. package/dist/dashboard/views/main-view.d.ts.map +1 -0
  62. package/dist/dashboard/views/main-view.js +143 -0
  63. package/dist/dashboard/views/main-view.js.map +1 -0
  64. package/dist/dashboard/views/sessions-view.d.ts +22 -0
  65. package/dist/dashboard/views/sessions-view.d.ts.map +1 -0
  66. package/dist/dashboard/views/sessions-view.js +104 -0
  67. package/dist/dashboard/views/sessions-view.js.map +1 -0
  68. package/dist/dashboard/views/tabs-view.d.ts +21 -0
  69. package/dist/dashboard/views/tabs-view.d.ts.map +1 -0
  70. package/dist/dashboard/views/tabs-view.js +92 -0
  71. package/dist/dashboard/views/tabs-view.js.map +1 -0
  72. package/dist/hints/hint-engine.d.ts +65 -0
  73. package/dist/hints/hint-engine.d.ts.map +1 -0
  74. package/dist/hints/hint-engine.js +156 -0
  75. package/dist/hints/hint-engine.js.map +1 -0
  76. package/dist/hints/index.d.ts +8 -0
  77. package/dist/hints/index.d.ts.map +1 -0
  78. package/dist/hints/index.js +11 -0
  79. package/dist/hints/index.js.map +1 -0
  80. package/dist/hints/pattern-learner.d.ts +76 -0
  81. package/dist/hints/pattern-learner.d.ts.map +1 -0
  82. package/dist/hints/pattern-learner.js +254 -0
  83. package/dist/hints/pattern-learner.js.map +1 -0
  84. package/dist/hints/rules/composite-suggestions.d.ts +6 -0
  85. package/dist/hints/rules/composite-suggestions.d.ts.map +1 -0
  86. package/dist/hints/rules/composite-suggestions.js +66 -0
  87. package/dist/hints/rules/composite-suggestions.js.map +1 -0
  88. package/dist/hints/rules/error-recovery.d.ts +7 -0
  89. package/dist/hints/rules/error-recovery.d.ts.map +1 -0
  90. package/dist/hints/rules/error-recovery.js +47 -0
  91. package/dist/hints/rules/error-recovery.js.map +1 -0
  92. package/dist/hints/rules/learned-rules.d.ts +13 -0
  93. package/dist/hints/rules/learned-rules.d.ts.map +1 -0
  94. package/dist/hints/rules/learned-rules.js +27 -0
  95. package/dist/hints/rules/learned-rules.js.map +1 -0
  96. package/dist/hints/rules/repetition-detection.d.ts +7 -0
  97. package/dist/hints/rules/repetition-detection.d.ts.map +1 -0
  98. package/dist/hints/rules/repetition-detection.js +82 -0
  99. package/dist/hints/rules/repetition-detection.js.map +1 -0
  100. package/dist/hints/rules/sequence-detection.d.ts +6 -0
  101. package/dist/hints/rules/sequence-detection.d.ts.map +1 -0
  102. package/dist/hints/rules/sequence-detection.js +61 -0
  103. package/dist/hints/rules/sequence-detection.js.map +1 -0
  104. package/dist/hints/rules/success-hints.d.ts +6 -0
  105. package/dist/hints/rules/success-hints.d.ts.map +1 -0
  106. package/dist/hints/rules/success-hints.js +62 -0
  107. package/dist/hints/rules/success-hints.js.map +1 -0
  108. package/dist/index.js +190 -55
  109. package/dist/index.js.map +1 -1
  110. package/dist/lightpanda/launcher.d.ts +58 -0
  111. package/dist/lightpanda/launcher.d.ts.map +1 -0
  112. package/dist/lightpanda/launcher.js +199 -0
  113. package/dist/lightpanda/launcher.js.map +1 -0
  114. package/dist/mcp-server.d.ts +38 -1
  115. package/dist/mcp-server.d.ts.map +1 -1
  116. package/dist/mcp-server.js +220 -6
  117. package/dist/mcp-server.js.map +1 -1
  118. package/dist/orchestration/state-manager.js +46 -46
  119. package/dist/orchestration/workflow-engine.d.ts +1 -0
  120. package/dist/orchestration/workflow-engine.d.ts.map +1 -1
  121. package/dist/orchestration/workflow-engine.js +112 -114
  122. package/dist/orchestration/workflow-engine.js.map +1 -1
  123. package/dist/resources/usage-guide.d.ts +13 -0
  124. package/dist/resources/usage-guide.d.ts.map +1 -0
  125. package/dist/resources/usage-guide.js +101 -0
  126. package/dist/resources/usage-guide.js.map +1 -0
  127. package/dist/router/browser-router.d.ts +51 -0
  128. package/dist/router/browser-router.d.ts.map +1 -0
  129. package/dist/router/browser-router.js +178 -0
  130. package/dist/router/browser-router.js.map +1 -0
  131. package/dist/router/cookie-sync.d.ts +48 -0
  132. package/dist/router/cookie-sync.d.ts.map +1 -0
  133. package/dist/router/cookie-sync.js +106 -0
  134. package/dist/router/cookie-sync.js.map +1 -0
  135. package/dist/router/index.d.ts +5 -0
  136. package/dist/router/index.d.ts.map +1 -0
  137. package/dist/router/index.js +10 -0
  138. package/dist/router/index.js.map +1 -0
  139. package/dist/router/tool-routing-registry.d.ts +21 -0
  140. package/dist/router/tool-routing-registry.d.ts.map +1 -0
  141. package/dist/router/tool-routing-registry.js +90 -0
  142. package/dist/router/tool-routing-registry.js.map +1 -0
  143. package/dist/session-manager.d.ts +41 -1
  144. package/dist/session-manager.d.ts.map +1 -1
  145. package/dist/session-manager.js +216 -21
  146. package/dist/session-manager.js.map +1 -1
  147. package/dist/tools/click-element.d.ts +8 -0
  148. package/dist/tools/click-element.d.ts.map +1 -0
  149. package/dist/tools/click-element.js +383 -0
  150. package/dist/tools/click-element.js.map +1 -0
  151. package/dist/tools/computer.d.ts.map +1 -1
  152. package/dist/tools/computer.js +198 -34
  153. package/dist/tools/computer.js.map +1 -1
  154. package/dist/tools/console-capture.d.ts +6 -0
  155. package/dist/tools/console-capture.d.ts.map +1 -0
  156. package/dist/tools/console-capture.js +320 -0
  157. package/dist/tools/console-capture.js.map +1 -0
  158. package/dist/tools/cookies.d.ts +6 -0
  159. package/dist/tools/cookies.d.ts.map +1 -0
  160. package/dist/tools/cookies.js +263 -0
  161. package/dist/tools/cookies.js.map +1 -0
  162. package/dist/tools/drag-drop.d.ts +6 -0
  163. package/dist/tools/drag-drop.d.ts.map +1 -0
  164. package/dist/tools/drag-drop.js +252 -0
  165. package/dist/tools/drag-drop.js.map +1 -0
  166. package/dist/tools/emulate-device.d.ts +6 -0
  167. package/dist/tools/emulate-device.d.ts.map +1 -0
  168. package/dist/tools/emulate-device.js +221 -0
  169. package/dist/tools/emulate-device.js.map +1 -0
  170. package/dist/tools/file-upload.d.ts +6 -0
  171. package/dist/tools/file-upload.d.ts.map +1 -0
  172. package/dist/tools/file-upload.js +208 -0
  173. package/dist/tools/file-upload.js.map +1 -0
  174. package/dist/tools/fill-form.d.ts +8 -0
  175. package/dist/tools/fill-form.d.ts.map +1 -0
  176. package/dist/tools/fill-form.js +342 -0
  177. package/dist/tools/fill-form.js.map +1 -0
  178. package/dist/tools/find.d.ts.map +1 -1
  179. package/dist/tools/find.js +153 -65
  180. package/dist/tools/find.js.map +1 -1
  181. package/dist/tools/form-input.js +52 -52
  182. package/dist/tools/form-input.js.map +1 -1
  183. package/dist/tools/geolocation.d.ts +6 -0
  184. package/dist/tools/geolocation.d.ts.map +1 -0
  185. package/dist/tools/geolocation.js +172 -0
  186. package/dist/tools/geolocation.js.map +1 -0
  187. package/dist/tools/http-auth.d.ts +6 -0
  188. package/dist/tools/http-auth.d.ts.map +1 -0
  189. package/dist/tools/http-auth.js +136 -0
  190. package/dist/tools/http-auth.js.map +1 -0
  191. package/dist/tools/index.d.ts.map +1 -1
  192. package/dist/tools/index.js +50 -0
  193. package/dist/tools/index.js.map +1 -1
  194. package/dist/tools/javascript.js +1 -1
  195. package/dist/tools/javascript.js.map +1 -1
  196. package/dist/tools/navigate.d.ts.map +1 -1
  197. package/dist/tools/navigate.js +5 -2
  198. package/dist/tools/navigate.js.map +1 -1
  199. package/dist/tools/network.js +4 -4
  200. package/dist/tools/network.js.map +1 -1
  201. package/dist/tools/orchestration.d.ts.map +1 -1
  202. package/dist/tools/orchestration.js +13 -8
  203. package/dist/tools/orchestration.js.map +1 -1
  204. package/dist/tools/page-content.d.ts +6 -0
  205. package/dist/tools/page-content.d.ts.map +1 -0
  206. package/dist/tools/page-content.js +120 -0
  207. package/dist/tools/page-content.js.map +1 -0
  208. package/dist/tools/page-pdf.d.ts +6 -0
  209. package/dist/tools/page-pdf.d.ts.map +1 -0
  210. package/dist/tools/page-pdf.js +245 -0
  211. package/dist/tools/page-pdf.js.map +1 -0
  212. package/dist/tools/page-reload.d.ts +6 -0
  213. package/dist/tools/page-reload.d.ts.map +1 -0
  214. package/dist/tools/page-reload.js +89 -0
  215. package/dist/tools/page-reload.js.map +1 -0
  216. package/dist/tools/performance-metrics.d.ts +6 -0
  217. package/dist/tools/performance-metrics.d.ts.map +1 -0
  218. package/dist/tools/performance-metrics.js +158 -0
  219. package/dist/tools/performance-metrics.js.map +1 -0
  220. package/dist/tools/read-page.d.ts.map +1 -1
  221. package/dist/tools/read-page.js +4 -2
  222. package/dist/tools/read-page.js.map +1 -1
  223. package/dist/tools/request-intercept.d.ts +6 -0
  224. package/dist/tools/request-intercept.d.ts.map +1 -0
  225. package/dist/tools/request-intercept.js +439 -0
  226. package/dist/tools/request-intercept.js.map +1 -0
  227. package/dist/tools/selector-query.d.ts +6 -0
  228. package/dist/tools/selector-query.d.ts.map +1 -0
  229. package/dist/tools/selector-query.js +206 -0
  230. package/dist/tools/selector-query.js.map +1 -0
  231. package/dist/tools/storage.d.ts +6 -0
  232. package/dist/tools/storage.d.ts.map +1 -0
  233. package/dist/tools/storage.js +264 -0
  234. package/dist/tools/storage.js.map +1 -0
  235. package/dist/tools/tabs-close.d.ts +6 -0
  236. package/dist/tools/tabs-close.d.ts.map +1 -0
  237. package/dist/tools/tabs-close.js +124 -0
  238. package/dist/tools/tabs-close.js.map +1 -0
  239. package/dist/tools/tabs-context.js +1 -1
  240. package/dist/tools/tabs-context.js.map +1 -1
  241. package/dist/tools/user-agent.d.ts +6 -0
  242. package/dist/tools/user-agent.d.ts.map +1 -0
  243. package/dist/tools/user-agent.js +128 -0
  244. package/dist/tools/user-agent.js.map +1 -0
  245. package/dist/tools/wait-and-click.d.ts +8 -0
  246. package/dist/tools/wait-and-click.d.ts.map +1 -0
  247. package/dist/tools/wait-and-click.js +290 -0
  248. package/dist/tools/wait-and-click.js.map +1 -0
  249. package/dist/tools/wait-for.d.ts +6 -0
  250. package/dist/tools/wait-for.d.ts.map +1 -0
  251. package/dist/tools/wait-for.js +248 -0
  252. package/dist/tools/wait-for.js.map +1 -0
  253. package/dist/tools/xpath-query.d.ts +6 -0
  254. package/dist/tools/xpath-query.d.ts.map +1 -0
  255. package/dist/tools/xpath-query.js +230 -0
  256. package/dist/tools/xpath-query.js.map +1 -0
  257. package/dist/types/browser-backend.d.ts +30 -0
  258. package/dist/types/browser-backend.d.ts.map +1 -0
  259. package/dist/types/browser-backend.js +9 -0
  260. package/dist/types/browser-backend.js.map +1 -0
  261. package/dist/types/profile.d.ts +76 -0
  262. package/dist/types/profile.d.ts.map +1 -0
  263. package/dist/types/profile.js +35 -0
  264. package/dist/types/profile.js.map +1 -0
  265. package/dist/types/session.d.ts +7 -3
  266. package/dist/types/session.d.ts.map +1 -1
  267. package/package.json +78 -75
  268. package/dist/master/index.d.ts +0 -18
  269. package/dist/master/index.d.ts.map +0 -1
  270. package/dist/master/index.js +0 -75
  271. package/dist/master/index.js.map +0 -1
  272. package/dist/master/ipc-server.d.ts +0 -21
  273. package/dist/master/ipc-server.d.ts.map +0 -1
  274. package/dist/master/ipc-server.js +0 -175
  275. package/dist/master/ipc-server.js.map +0 -1
  276. package/dist/master/request-handler.d.ts +0 -17
  277. package/dist/master/request-handler.d.ts.map +0 -1
  278. package/dist/master/request-handler.js +0 -134
  279. package/dist/master/request-handler.js.map +0 -1
  280. package/dist/master/session-registry.d.ts +0 -120
  281. package/dist/master/session-registry.d.ts.map +0 -1
  282. package/dist/master/session-registry.js +0 -247
  283. package/dist/master/session-registry.js.map +0 -1
  284. package/dist/shared/ipc-constants.d.ts +0 -16
  285. package/dist/shared/ipc-constants.d.ts.map +0 -1
  286. package/dist/shared/ipc-constants.js +0 -66
  287. package/dist/shared/ipc-constants.js.map +0 -1
  288. package/dist/shared/ipc-protocol.d.ts +0 -33
  289. package/dist/shared/ipc-protocol.d.ts.map +0 -1
  290. package/dist/shared/ipc-protocol.js +0 -20
  291. package/dist/shared/ipc-protocol.js.map +0 -1
  292. package/dist/worker/auto-master.d.ts +0 -24
  293. package/dist/worker/auto-master.d.ts.map +0 -1
  294. package/dist/worker/auto-master.js +0 -135
  295. package/dist/worker/auto-master.js.map +0 -1
  296. package/dist/worker/index.d.ts +0 -25
  297. package/dist/worker/index.d.ts.map +0 -1
  298. package/dist/worker/index.js +0 -93
  299. package/dist/worker/index.js.map +0 -1
  300. package/dist/worker/ipc-client.d.ts +0 -26
  301. package/dist/worker/ipc-client.d.ts.map +0 -1
  302. package/dist/worker/ipc-client.js +0 -211
  303. package/dist/worker/ipc-client.js.map +0 -1
  304. package/dist/worker/remote-session-manager.d.ts +0 -114
  305. package/dist/worker/remote-session-manager.d.ts.map +0 -1
  306. package/dist/worker/remote-session-manager.js +0 -151
  307. package/dist/worker/remote-session-manager.js.map +0 -1
  308. package/dist/worker/tools.d.ts +0 -7
  309. package/dist/worker/tools.d.ts.map +0 -1
  310. package/dist/worker/tools.js +0 -340
  311. package/dist/worker/tools.js.map +0 -1
  312. package/dist/worker/worker-mcp-server.d.ts +0 -70
  313. package/dist/worker/worker-mcp-server.d.ts.map +0 -1
  314. package/dist/worker/worker-mcp-server.js +0 -295
  315. package/dist/worker/worker-mcp-server.js.map +0 -1
@@ -1,134 +0,0 @@
1
- "use strict";
2
- /**
3
- * Request Handler - Routes IPC requests to session registry methods
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.RequestHandler = void 0;
7
- const ipc_protocol_1 = require("../shared/ipc-protocol");
8
- class RequestHandler {
9
- registry;
10
- server;
11
- constructor(registry, server) {
12
- this.registry = registry;
13
- this.server = server;
14
- this.server.on('request', (request) => this.handleRequest(request));
15
- this.server.on('disconnect', (workerId) => this.handleWorkerDisconnect(workerId));
16
- }
17
- async handleRequest(request) {
18
- const { id, method, params, workerId } = request;
19
- try {
20
- const result = await this.dispatch(method, params, workerId);
21
- this.sendResponse(workerId, { id, result });
22
- }
23
- catch (error) {
24
- console.error(`[RequestHandler] Error handling ${method}:`, error);
25
- this.sendError(workerId, id, error);
26
- }
27
- }
28
- async dispatch(method, params, workerId) {
29
- switch (method) {
30
- // Session management
31
- case 'session/create':
32
- return this.registry.createSession(workerId, params);
33
- case 'session/get':
34
- return this.registry.getSession(params.sessionId);
35
- case 'session/list':
36
- return this.registry.listSessions();
37
- case 'session/delete':
38
- await this.registry.deleteSession(params.sessionId);
39
- return { success: true };
40
- // Tab management
41
- case 'tabs/create':
42
- return this.registry.createTarget(params.sessionId, params.url);
43
- case 'tabs/list':
44
- return this.registry.listTargets(params.sessionId);
45
- case 'tabs/close':
46
- await this.registry.closeTarget(params.sessionId, params.targetId);
47
- return { success: true };
48
- // Page operations
49
- case 'page/navigate':
50
- await this.registry.navigate(params.sessionId, params.targetId, params.url, params.options);
51
- return { success: true };
52
- case 'page/screenshot':
53
- return this.registry.screenshot(params.sessionId, params.targetId, params.options);
54
- case 'page/evaluate':
55
- return this.registry.evaluate(params.sessionId, params.targetId, params.script);
56
- case 'page/click':
57
- await this.registry.click(params.sessionId, params.targetId, params.x, params.y);
58
- return { success: true };
59
- case 'page/type':
60
- await this.registry.type(params.sessionId, params.targetId, params.text);
61
- return { success: true };
62
- case 'page/scroll':
63
- await this.registry.scroll(params.sessionId, params.targetId, params.x, params.y, params.direction, params.amount);
64
- return { success: true };
65
- // CDP execution
66
- case 'cdp/execute':
67
- return this.registry.executeCDP(params.sessionId, params.targetId, params.method, params.params);
68
- // Accessibility
69
- case 'page/getAccessibilityTree':
70
- return this.registry.getAccessibilityTree(params.sessionId, params.targetId);
71
- // Reference management
72
- case 'refs/set': {
73
- const nodeInfo = params.nodeInfo;
74
- const refId = this.registry.getRefIdManager().generateRef(params.sessionId, params.targetId, params.backendNodeId, nodeInfo?.role || 'unknown', nodeInfo?.name);
75
- return { success: true, refId };
76
- }
77
- case 'refs/get':
78
- return this.registry.getRefIdManager().getRef(params.sessionId, params.targetId, params.refId);
79
- case 'refs/clear':
80
- if (params.targetId) {
81
- this.registry.getRefIdManager().clearTargetRefs(params.sessionId, params.targetId);
82
- }
83
- else {
84
- this.registry.getRefIdManager().clearSessionRefs(params.sessionId);
85
- }
86
- return { success: true };
87
- // Worker management
88
- case 'worker/register':
89
- return { workerId, status: 'registered' };
90
- case 'worker/heartbeat':
91
- return { status: 'alive', timestamp: Date.now() };
92
- default:
93
- throw new Error(`Unknown method: ${method}`);
94
- }
95
- }
96
- sendResponse(workerId, response) {
97
- this.server.sendToWorker(workerId, response);
98
- }
99
- sendError(workerId, id, error) {
100
- const errorCode = this.getErrorCode(error);
101
- this.server.sendToWorker(workerId, {
102
- id,
103
- error: {
104
- code: errorCode,
105
- message: error.message,
106
- },
107
- });
108
- }
109
- getErrorCode(error) {
110
- const message = error.message.toLowerCase();
111
- if (message.includes('session') && message.includes('not found')) {
112
- return ipc_protocol_1.IPCErrorCodes.SESSION_NOT_FOUND;
113
- }
114
- if (message.includes('target') || message.includes('page not found')) {
115
- return ipc_protocol_1.IPCErrorCodes.TARGET_NOT_FOUND;
116
- }
117
- if (message.includes('does not belong') || message.includes('ownership')) {
118
- return ipc_protocol_1.IPCErrorCodes.OWNERSHIP_VIOLATION;
119
- }
120
- if (message.includes('not connected')) {
121
- return ipc_protocol_1.IPCErrorCodes.CHROME_NOT_CONNECTED;
122
- }
123
- if (message.includes('timeout')) {
124
- return ipc_protocol_1.IPCErrorCodes.TIMEOUT;
125
- }
126
- return ipc_protocol_1.IPCErrorCodes.INTERNAL_ERROR;
127
- }
128
- async handleWorkerDisconnect(workerId) {
129
- console.error(`[RequestHandler] Worker disconnected: ${workerId}`);
130
- await this.registry.cleanupWorker(workerId);
131
- }
132
- }
133
- exports.RequestHandler = RequestHandler;
134
- //# sourceMappingURL=request-handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request-handler.js","sourceRoot":"","sources":["../../src/master/request-handler.ts"],"names":[],"mappings":"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"}
@@ -1,120 +0,0 @@
1
- /**
2
- * Session Registry - Central session management for Master process
3
- * Wraps the existing SessionManager to add worker tracking
4
- */
5
- import { SessionManager } from '../session-manager';
6
- import { CDPClient } from '../cdp/client';
7
- export declare class SessionRegistry {
8
- private sessionManager;
9
- private workerSessions;
10
- private sessionWorker;
11
- constructor(cdpClient?: CDPClient);
12
- /**
13
- * Ensure connected to Chrome
14
- */
15
- ensureConnected(): Promise<void>;
16
- /**
17
- * Create a new session for a worker
18
- */
19
- createSession(workerId: string, options?: {
20
- name?: string;
21
- }): Promise<{
22
- id: string;
23
- name: string;
24
- }>;
25
- /**
26
- * Get session info
27
- */
28
- getSession(sessionId: string): import("../types").SessionInfo | undefined;
29
- /**
30
- * List all sessions
31
- */
32
- listSessions(): import("../types").SessionInfo[];
33
- /**
34
- * List sessions for a specific worker
35
- */
36
- listWorkerSessions(workerId: string): import("../types").SessionInfo[];
37
- /**
38
- * Delete a session
39
- */
40
- deleteSession(sessionId: string): Promise<void>;
41
- /**
42
- * Create a new target (tab) for a session
43
- */
44
- createTarget(sessionId: string, url?: string): Promise<{
45
- targetId: string;
46
- url: string;
47
- title: string;
48
- }>;
49
- /**
50
- * List targets for a session
51
- */
52
- listTargets(sessionId: string): Promise<{
53
- targetId: string;
54
- url: string;
55
- title: string;
56
- }[]>;
57
- /**
58
- * Close a target
59
- */
60
- closeTarget(sessionId: string, targetId: string): Promise<void>;
61
- /**
62
- * Navigate a page
63
- */
64
- navigate(sessionId: string, targetId: string, url: string, options?: {
65
- waitUntil?: string;
66
- timeout?: number;
67
- }): Promise<void>;
68
- /**
69
- * Take a screenshot
70
- */
71
- screenshot(sessionId: string, targetId: string, options?: {
72
- format?: string;
73
- quality?: number;
74
- fullPage?: boolean;
75
- }): Promise<string>;
76
- /**
77
- * Evaluate JavaScript
78
- */
79
- evaluate<T>(sessionId: string, targetId: string, script: string): Promise<T>;
80
- /**
81
- * Click at coordinates
82
- */
83
- click(sessionId: string, targetId: string, x: number, y: number): Promise<void>;
84
- /**
85
- * Type text
86
- */
87
- type(sessionId: string, targetId: string, text: string): Promise<void>;
88
- /**
89
- * Scroll
90
- */
91
- scroll(sessionId: string, targetId: string, x: number, y: number, direction: string, amount: number): Promise<void>;
92
- /**
93
- * Execute CDP command
94
- */
95
- executeCDP<T>(sessionId: string, targetId: string, method: string, params?: Record<string, unknown>): Promise<T>;
96
- /**
97
- * Get accessibility tree
98
- */
99
- getAccessibilityTree(sessionId: string, targetId: string): Promise<unknown>;
100
- /**
101
- * Clean up all sessions for a disconnected worker
102
- */
103
- cleanupWorker(workerId: string): Promise<void>;
104
- /**
105
- * Get ref ID manager
106
- */
107
- getRefIdManager(): import("../utils/ref-id-manager").RefIdManager;
108
- /**
109
- * Get underlying session manager
110
- */
111
- getSessionManager(): SessionManager;
112
- /**
113
- * Get statistics
114
- */
115
- getStats(): {
116
- sessions: number;
117
- workers: number;
118
- };
119
- }
120
- //# sourceMappingURL=session-registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-registry.d.ts","sourceRoot":"","sources":["../../src/master/session-registry.ts"],"names":[],"mappings":"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"}
@@ -1,247 +0,0 @@
1
- "use strict";
2
- /**
3
- * Session Registry - Central session management for Master process
4
- * Wraps the existing SessionManager to add worker tracking
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.SessionRegistry = void 0;
8
- const session_manager_1 = require("../session-manager");
9
- const client_1 = require("../cdp/client");
10
- const ref_id_manager_1 = require("../utils/ref-id-manager");
11
- class SessionRegistry {
12
- sessionManager;
13
- workerSessions = new Map(); // workerId -> sessionIds
14
- sessionWorker = new Map(); // sessionId -> workerId
15
- constructor(cdpClient) {
16
- this.sessionManager = new session_manager_1.SessionManager(cdpClient || (0, client_1.getCDPClient)());
17
- }
18
- /**
19
- * Ensure connected to Chrome
20
- */
21
- async ensureConnected() {
22
- await this.sessionManager.ensureConnected();
23
- }
24
- /**
25
- * Create a new session for a worker
26
- */
27
- async createSession(workerId, options) {
28
- const session = await this.sessionManager.createSession(options);
29
- // Track worker ownership
30
- let workerSessionSet = this.workerSessions.get(workerId);
31
- if (!workerSessionSet) {
32
- workerSessionSet = new Set();
33
- this.workerSessions.set(workerId, workerSessionSet);
34
- }
35
- workerSessionSet.add(session.id);
36
- this.sessionWorker.set(session.id, workerId);
37
- console.error(`[SessionRegistry] Created session ${session.id} for worker ${workerId}`);
38
- return { id: session.id, name: session.name };
39
- }
40
- /**
41
- * Get session info
42
- */
43
- getSession(sessionId) {
44
- return this.sessionManager.getSessionInfo(sessionId);
45
- }
46
- /**
47
- * List all sessions
48
- */
49
- listSessions() {
50
- return this.sessionManager.getAllSessionInfos();
51
- }
52
- /**
53
- * List sessions for a specific worker
54
- */
55
- listWorkerSessions(workerId) {
56
- const sessionIds = this.workerSessions.get(workerId);
57
- if (!sessionIds)
58
- return [];
59
- return Array.from(sessionIds)
60
- .map(id => this.sessionManager.getSessionInfo(id))
61
- .filter(info => info !== undefined);
62
- }
63
- /**
64
- * Delete a session
65
- */
66
- async deleteSession(sessionId) {
67
- const workerId = this.sessionWorker.get(sessionId);
68
- if (workerId) {
69
- const workerSessions = this.workerSessions.get(workerId);
70
- if (workerSessions) {
71
- workerSessions.delete(sessionId);
72
- }
73
- this.sessionWorker.delete(sessionId);
74
- }
75
- await this.sessionManager.deleteSession(sessionId);
76
- }
77
- /**
78
- * Create a new target (tab) for a session
79
- */
80
- async createTarget(sessionId, url) {
81
- const result = await this.sessionManager.createTarget(sessionId, url);
82
- return {
83
- targetId: result.targetId,
84
- url: result.page.url(),
85
- title: await result.page.title(),
86
- };
87
- }
88
- /**
89
- * List targets for a session
90
- */
91
- async listTargets(sessionId) {
92
- const pages = await this.sessionManager.getSessionPages(sessionId);
93
- const targets = [];
94
- for (const page of pages) {
95
- const target = page.target();
96
- const targetId = target._targetId;
97
- targets.push({
98
- targetId,
99
- url: page.url(),
100
- title: await page.title(),
101
- });
102
- }
103
- return targets;
104
- }
105
- /**
106
- * Close a target
107
- */
108
- async closeTarget(sessionId, targetId) {
109
- await this.sessionManager.removeTarget(sessionId, targetId);
110
- await this.sessionManager.getCDPClient().closePage(targetId);
111
- }
112
- /**
113
- * Navigate a page
114
- */
115
- async navigate(sessionId, targetId, url, options) {
116
- const page = await this.sessionManager.getPage(sessionId, targetId);
117
- if (!page)
118
- throw new Error(`Page not found: ${targetId}`);
119
- await page.goto(url, {
120
- waitUntil: options?.waitUntil || 'domcontentloaded',
121
- timeout: options?.timeout || 30000,
122
- });
123
- }
124
- /**
125
- * Take a screenshot
126
- */
127
- async screenshot(sessionId, targetId, options) {
128
- const page = await this.sessionManager.getPage(sessionId, targetId);
129
- if (!page)
130
- throw new Error(`Page not found: ${targetId}`);
131
- const buffer = await page.screenshot({
132
- type: options?.format || 'png',
133
- quality: options?.format === 'jpeg' ? (options?.quality || 80) : undefined,
134
- fullPage: options?.fullPage || false,
135
- encoding: 'base64',
136
- });
137
- return buffer;
138
- }
139
- /**
140
- * Evaluate JavaScript
141
- */
142
- async evaluate(sessionId, targetId, script) {
143
- const page = await this.sessionManager.getPage(sessionId, targetId);
144
- if (!page)
145
- throw new Error(`Page not found: ${targetId}`);
146
- return page.evaluate(script);
147
- }
148
- /**
149
- * Click at coordinates
150
- */
151
- async click(sessionId, targetId, x, y) {
152
- const page = await this.sessionManager.getPage(sessionId, targetId);
153
- if (!page)
154
- throw new Error(`Page not found: ${targetId}`);
155
- await page.mouse.click(x, y);
156
- }
157
- /**
158
- * Type text
159
- */
160
- async type(sessionId, targetId, text) {
161
- const page = await this.sessionManager.getPage(sessionId, targetId);
162
- if (!page)
163
- throw new Error(`Page not found: ${targetId}`);
164
- await page.keyboard.type(text);
165
- }
166
- /**
167
- * Scroll
168
- */
169
- async scroll(sessionId, targetId, x, y, direction, amount) {
170
- const page = await this.sessionManager.getPage(sessionId, targetId);
171
- if (!page)
172
- throw new Error(`Page not found: ${targetId}`);
173
- await page.mouse.move(x, y);
174
- let deltaX = 0;
175
- let deltaY = 0;
176
- const scrollAmount = amount * 100;
177
- switch (direction) {
178
- case 'up':
179
- deltaY = -scrollAmount;
180
- break;
181
- case 'down':
182
- deltaY = scrollAmount;
183
- break;
184
- case 'left':
185
- deltaX = -scrollAmount;
186
- break;
187
- case 'right':
188
- deltaX = scrollAmount;
189
- break;
190
- }
191
- await page.mouse.wheel({ deltaX, deltaY });
192
- }
193
- /**
194
- * Execute CDP command
195
- */
196
- async executeCDP(sessionId, targetId, method, params) {
197
- return this.sessionManager.executeCDP(sessionId, targetId, method, params);
198
- }
199
- /**
200
- * Get accessibility tree
201
- */
202
- async getAccessibilityTree(sessionId, targetId) {
203
- return this.sessionManager.executeCDP(sessionId, targetId, 'Accessibility.getFullAXTree');
204
- }
205
- /**
206
- * Clean up all sessions for a disconnected worker
207
- */
208
- async cleanupWorker(workerId) {
209
- const sessionIds = this.workerSessions.get(workerId);
210
- if (!sessionIds)
211
- return;
212
- console.error(`[SessionRegistry] Cleaning up ${sessionIds.size} sessions for worker ${workerId}`);
213
- for (const sessionId of sessionIds) {
214
- try {
215
- await this.sessionManager.deleteSession(sessionId);
216
- this.sessionWorker.delete(sessionId);
217
- }
218
- catch (error) {
219
- console.error(`[SessionRegistry] Error deleting session ${sessionId}:`, error);
220
- }
221
- }
222
- this.workerSessions.delete(workerId);
223
- }
224
- /**
225
- * Get ref ID manager
226
- */
227
- getRefIdManager() {
228
- return (0, ref_id_manager_1.getRefIdManager)();
229
- }
230
- /**
231
- * Get underlying session manager
232
- */
233
- getSessionManager() {
234
- return this.sessionManager;
235
- }
236
- /**
237
- * Get statistics
238
- */
239
- getStats() {
240
- return {
241
- sessions: this.sessionManager.sessionCount,
242
- workers: this.workerSessions.size,
243
- };
244
- }
245
- }
246
- exports.SessionRegistry = SessionRegistry;
247
- //# sourceMappingURL=session-registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-registry.js","sourceRoot":"","sources":["../../src/master/session-registry.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- /**
2
- * IPC Constants - Paths and configuration for Master-Worker communication
3
- */
4
- export declare const IPC_PIPE_NAME = "claude-chrome-parallel";
5
- export declare const WINDOWS_PIPE_PATH = "\\\\.\\pipe\\claude-chrome-parallel";
6
- export declare const UNIX_SOCKET_PATH: string;
7
- export declare function getIPCPath(): string;
8
- export declare const DEFAULT_CHROME_PORT = 9222;
9
- export declare const IPC_CONNECT_TIMEOUT = 5000;
10
- export declare const IPC_REQUEST_TIMEOUT = 30000;
11
- export declare const IPC_HEARTBEAT_INTERVAL = 10000;
12
- export declare const WORKER_CLEANUP_INTERVAL = 30000;
13
- export declare const WORKER_RECONNECT_ATTEMPTS = 3;
14
- export declare const WORKER_RECONNECT_DELAY = 1000;
15
- export declare const MASTER_START_TIMEOUT = 10000;
16
- //# sourceMappingURL=ipc-constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ipc-constants.d.ts","sourceRoot":"","sources":["../../src/shared/ipc-constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,eAAO,MAAM,aAAa,2BAA2B,CAAC;AAGtD,eAAO,MAAM,iBAAiB,wCAAkC,CAAC;AAGjE,eAAO,MAAM,gBAAgB,QAAkD,CAAC;AAGhF,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAGD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAGxC,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,sBAAsB,QAAQ,CAAC;AAG5C,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAG7C,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAG3C,eAAO,MAAM,oBAAoB,QAAQ,CAAC"}
@@ -1,66 +0,0 @@
1
- "use strict";
2
- /**
3
- * IPC Constants - Paths and configuration for Master-Worker communication
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || (function () {
22
- var ownKeys = function(o) {
23
- ownKeys = Object.getOwnPropertyNames || function (o) {
24
- var ar = [];
25
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
- return ar;
27
- };
28
- return ownKeys(o);
29
- };
30
- return function (mod) {
31
- if (mod && mod.__esModule) return mod;
32
- var result = {};
33
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
- __setModuleDefault(result, mod);
35
- return result;
36
- };
37
- })();
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.MASTER_START_TIMEOUT = exports.WORKER_RECONNECT_DELAY = exports.WORKER_RECONNECT_ATTEMPTS = exports.WORKER_CLEANUP_INTERVAL = exports.IPC_HEARTBEAT_INTERVAL = exports.IPC_REQUEST_TIMEOUT = exports.IPC_CONNECT_TIMEOUT = exports.DEFAULT_CHROME_PORT = exports.UNIX_SOCKET_PATH = exports.WINDOWS_PIPE_PATH = exports.IPC_PIPE_NAME = void 0;
40
- exports.getIPCPath = getIPCPath;
41
- const path = __importStar(require("path"));
42
- const os = __importStar(require("os"));
43
- // Named pipe/socket names
44
- exports.IPC_PIPE_NAME = 'claude-chrome-parallel';
45
- // Windows: Named Pipe
46
- exports.WINDOWS_PIPE_PATH = `\\\\.\\pipe\\${exports.IPC_PIPE_NAME}`;
47
- // Unix: Domain Socket
48
- exports.UNIX_SOCKET_PATH = path.join(os.tmpdir(), `${exports.IPC_PIPE_NAME}.sock`);
49
- // Get the appropriate IPC path for the current platform
50
- function getIPCPath() {
51
- return process.platform === 'win32' ? exports.WINDOWS_PIPE_PATH : exports.UNIX_SOCKET_PATH;
52
- }
53
- // Default Chrome debugging port
54
- exports.DEFAULT_CHROME_PORT = 9222;
55
- // IPC timeouts
56
- exports.IPC_CONNECT_TIMEOUT = 5000; // 5 seconds
57
- exports.IPC_REQUEST_TIMEOUT = 30000; // 30 seconds
58
- exports.IPC_HEARTBEAT_INTERVAL = 10000; // 10 seconds
59
- // Master check interval for worker cleanup
60
- exports.WORKER_CLEANUP_INTERVAL = 30000; // 30 seconds
61
- // Worker reconnection settings
62
- exports.WORKER_RECONNECT_ATTEMPTS = 3;
63
- exports.WORKER_RECONNECT_DELAY = 1000; // 1 second
64
- // Auto-start master timeout
65
- exports.MASTER_START_TIMEOUT = 10000; // 10 seconds
66
- //# sourceMappingURL=ipc-constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ipc-constants.js","sourceRoot":"","sources":["../../src/shared/ipc-constants.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeH,gCAEC;AAfD,2CAA6B;AAC7B,uCAAyB;AAEzB,0BAA0B;AACb,QAAA,aAAa,GAAG,wBAAwB,CAAC;AAEtD,sBAAsB;AACT,QAAA,iBAAiB,GAAG,gBAAgB,qBAAa,EAAE,CAAC;AAEjE,sBAAsB;AACT,QAAA,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,qBAAa,OAAO,CAAC,CAAC;AAEhF,wDAAwD;AACxD,SAAgB,UAAU;IACxB,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,yBAAiB,CAAC,CAAC,CAAC,wBAAgB,CAAC;AAC7E,CAAC;AAED,gCAAgC;AACnB,QAAA,mBAAmB,GAAG,IAAI,CAAC;AAExC,eAAe;AACF,QAAA,mBAAmB,GAAG,IAAI,CAAC,CAAE,YAAY;AACzC,QAAA,mBAAmB,GAAG,KAAK,CAAC,CAAC,aAAa;AAC1C,QAAA,sBAAsB,GAAG,KAAK,CAAC,CAAC,aAAa;AAE1D,2CAA2C;AAC9B,QAAA,uBAAuB,GAAG,KAAK,CAAC,CAAC,aAAa;AAE3D,+BAA+B;AAClB,QAAA,yBAAyB,GAAG,CAAC,CAAC;AAC9B,QAAA,sBAAsB,GAAG,IAAI,CAAC,CAAC,WAAW;AAEvD,4BAA4B;AACf,QAAA,oBAAoB,GAAG,KAAK,CAAC,CAAC,aAAa"}
@@ -1,33 +0,0 @@
1
- /**
2
- * IPC Protocol - Message types for Master-Worker communication
3
- */
4
- export interface IPCRequest {
5
- id: string;
6
- method: IPCMethod;
7
- params: Record<string, unknown>;
8
- workerId: string;
9
- }
10
- export interface IPCResponse {
11
- id: string;
12
- result?: unknown;
13
- error?: IPCError;
14
- }
15
- export interface IPCError {
16
- code: number;
17
- message: string;
18
- data?: unknown;
19
- }
20
- export type IPCMethod = 'session/create' | 'session/delete' | 'session/get' | 'session/list' | 'tabs/create' | 'tabs/list' | 'tabs/close' | 'cdp/execute' | 'page/navigate' | 'page/screenshot' | 'page/evaluate' | 'page/click' | 'page/type' | 'page/scroll' | 'page/waitForSelector' | 'page/getAccessibilityTree' | 'page/setInputValue' | 'refs/set' | 'refs/get' | 'refs/clear' | 'worker/register' | 'worker/heartbeat';
21
- export declare const IPCErrorCodes: {
22
- readonly PARSE_ERROR: -32700;
23
- readonly INVALID_REQUEST: -32600;
24
- readonly METHOD_NOT_FOUND: -32601;
25
- readonly INVALID_PARAMS: -32602;
26
- readonly INTERNAL_ERROR: -32603;
27
- readonly SESSION_NOT_FOUND: -40001;
28
- readonly TARGET_NOT_FOUND: -40002;
29
- readonly OWNERSHIP_VIOLATION: -40003;
30
- readonly CHROME_NOT_CONNECTED: -40004;
31
- readonly TIMEOUT: -40005;
32
- };
33
- //# sourceMappingURL=ipc-protocol.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ipc-protocol.d.ts","sourceRoot":"","sources":["../../src/shared/ipc-protocol.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB;AAGD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAGD,MAAM,MAAM,SAAS,GAEjB,gBAAgB,GAChB,gBAAgB,GAChB,aAAa,GACb,cAAc,GAEd,aAAa,GACb,WAAW,GACX,YAAY,GAEZ,aAAa,GAEb,eAAe,GACf,iBAAiB,GACjB,eAAe,GACf,YAAY,GACZ,WAAW,GACX,aAAa,GACb,sBAAsB,GACtB,2BAA2B,GAC3B,oBAAoB,GAEpB,UAAU,GACV,UAAU,GACV,YAAY,GAEZ,iBAAiB,GACjB,kBAAkB,CAAC;AAGvB,eAAO,MAAM,aAAa;;;;;;;;;;;CAWhB,CAAC"}