claude-code-workflow 6.2.2 → 6.2.4

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 (346) hide show
  1. package/ccw/dist/cli.d.ts +2 -0
  2. package/ccw/dist/cli.d.ts.map +1 -0
  3. package/ccw/dist/cli.js +219 -0
  4. package/ccw/dist/cli.js.map +1 -0
  5. package/ccw/dist/commands/cli.d.ts +32 -0
  6. package/ccw/dist/commands/cli.d.ts.map +1 -0
  7. package/ccw/dist/commands/cli.js +619 -0
  8. package/ccw/dist/commands/cli.js.map +1 -0
  9. package/ccw/dist/commands/core-memory.d.ts +32 -0
  10. package/ccw/dist/commands/core-memory.d.ts.map +1 -0
  11. package/ccw/dist/commands/core-memory.js +640 -0
  12. package/ccw/dist/commands/core-memory.js.map +1 -0
  13. package/ccw/dist/commands/hook.d.ts +16 -0
  14. package/ccw/dist/commands/hook.d.ts.map +1 -0
  15. package/ccw/dist/commands/hook.js +276 -0
  16. package/ccw/dist/commands/hook.js.map +1 -0
  17. package/ccw/dist/commands/install.d.ts +12 -0
  18. package/ccw/dist/commands/install.d.ts.map +1 -0
  19. package/ccw/dist/commands/install.js +443 -0
  20. package/ccw/dist/commands/install.js.map +1 -0
  21. package/ccw/dist/commands/list.d.ts +5 -0
  22. package/ccw/dist/commands/list.d.ts.map +1 -0
  23. package/ccw/dist/commands/list.js +32 -0
  24. package/ccw/dist/commands/list.js.map +1 -0
  25. package/ccw/dist/commands/memory.d.ts +57 -0
  26. package/ccw/dist/commands/memory.d.ts.map +1 -0
  27. package/ccw/dist/commands/memory.js +890 -0
  28. package/ccw/dist/commands/memory.js.map +1 -0
  29. package/ccw/dist/commands/serve.d.ts +12 -0
  30. package/ccw/dist/commands/serve.d.ts.map +1 -0
  31. package/ccw/dist/commands/serve.js +63 -0
  32. package/ccw/dist/commands/serve.js.map +1 -0
  33. package/ccw/dist/commands/session-path-resolver.d.ts +45 -0
  34. package/ccw/dist/commands/session-path-resolver.d.ts.map +1 -0
  35. package/ccw/dist/commands/session-path-resolver.js +302 -0
  36. package/ccw/dist/commands/session-path-resolver.js.map +1 -0
  37. package/ccw/dist/commands/session.d.ts +12 -0
  38. package/ccw/dist/commands/session.d.ts.map +1 -0
  39. package/ccw/dist/commands/session.js +954 -0
  40. package/ccw/dist/commands/session.js.map +1 -0
  41. package/ccw/dist/commands/stop.d.ts +11 -0
  42. package/ccw/dist/commands/stop.d.ts.map +1 -0
  43. package/ccw/dist/commands/stop.js +96 -0
  44. package/ccw/dist/commands/stop.js.map +1 -0
  45. package/ccw/dist/commands/tool.d.ts +29 -0
  46. package/ccw/dist/commands/tool.d.ts.map +1 -0
  47. package/ccw/dist/commands/tool.js +173 -0
  48. package/ccw/dist/commands/tool.js.map +1 -0
  49. package/ccw/dist/commands/uninstall.d.ts +9 -0
  50. package/ccw/dist/commands/uninstall.d.ts.map +1 -0
  51. package/ccw/dist/commands/uninstall.js +239 -0
  52. package/ccw/dist/commands/uninstall.js.map +1 -0
  53. package/ccw/dist/commands/upgrade.d.ts +10 -0
  54. package/ccw/dist/commands/upgrade.d.ts.map +1 -0
  55. package/ccw/dist/commands/upgrade.js +288 -0
  56. package/ccw/dist/commands/upgrade.js.map +1 -0
  57. package/ccw/dist/commands/view.d.ts +14 -0
  58. package/ccw/dist/commands/view.d.ts.map +1 -0
  59. package/ccw/dist/commands/view.js +100 -0
  60. package/ccw/dist/commands/view.js.map +1 -0
  61. package/ccw/dist/config/storage-paths.d.ts +184 -0
  62. package/ccw/dist/config/storage-paths.d.ts.map +1 -0
  63. package/ccw/dist/config/storage-paths.js +536 -0
  64. package/ccw/dist/config/storage-paths.js.map +1 -0
  65. package/ccw/dist/core/cache-manager.d.ts +80 -0
  66. package/ccw/dist/core/cache-manager.d.ts.map +1 -0
  67. package/ccw/dist/core/cache-manager.js +260 -0
  68. package/ccw/dist/core/cache-manager.js.map +1 -0
  69. package/ccw/dist/core/claude-freshness.d.ts +53 -0
  70. package/ccw/dist/core/claude-freshness.d.ts.map +1 -0
  71. package/ccw/dist/core/claude-freshness.js +232 -0
  72. package/ccw/dist/core/claude-freshness.js.map +1 -0
  73. package/ccw/dist/core/core-memory-store.d.ts +320 -0
  74. package/ccw/dist/core/core-memory-store.d.ts.map +1 -0
  75. package/ccw/dist/core/core-memory-store.js +1177 -0
  76. package/ccw/dist/core/core-memory-store.js.map +1 -0
  77. package/ccw/dist/core/dashboard-generator-patch.d.ts +2 -0
  78. package/ccw/dist/core/dashboard-generator-patch.d.ts.map +1 -0
  79. package/ccw/dist/core/dashboard-generator-patch.js +48 -0
  80. package/ccw/dist/core/dashboard-generator-patch.js.map +1 -0
  81. package/ccw/dist/core/dashboard-generator.d.ts +8 -0
  82. package/ccw/dist/core/dashboard-generator.d.ts.map +1 -0
  83. package/ccw/dist/core/dashboard-generator.js +695 -0
  84. package/ccw/dist/core/dashboard-generator.js.map +1 -0
  85. package/ccw/dist/core/data-aggregator.d.ts +145 -0
  86. package/ccw/dist/core/data-aggregator.d.ts.map +1 -0
  87. package/ccw/dist/core/data-aggregator.js +416 -0
  88. package/ccw/dist/core/data-aggregator.js.map +1 -0
  89. package/ccw/dist/core/history-importer.d.ts +102 -0
  90. package/ccw/dist/core/history-importer.d.ts.map +1 -0
  91. package/ccw/dist/core/history-importer.js +493 -0
  92. package/ccw/dist/core/history-importer.js.map +1 -0
  93. package/ccw/dist/core/lite-scanner-complete.d.ts +81 -0
  94. package/ccw/dist/core/lite-scanner-complete.d.ts.map +1 -0
  95. package/ccw/dist/core/lite-scanner-complete.js +368 -0
  96. package/ccw/dist/core/lite-scanner-complete.js.map +1 -0
  97. package/ccw/dist/core/lite-scanner.d.ts +81 -0
  98. package/ccw/dist/core/lite-scanner.d.ts.map +1 -0
  99. package/ccw/dist/core/lite-scanner.js +368 -0
  100. package/ccw/dist/core/lite-scanner.js.map +1 -0
  101. package/ccw/dist/core/manifest.d.ts +88 -0
  102. package/ccw/dist/core/manifest.d.ts.map +1 -0
  103. package/ccw/dist/core/manifest.js +214 -0
  104. package/ccw/dist/core/manifest.js.map +1 -0
  105. package/ccw/dist/core/memory-embedder-bridge.d.ts +83 -0
  106. package/ccw/dist/core/memory-embedder-bridge.d.ts.map +1 -0
  107. package/ccw/dist/core/memory-embedder-bridge.js +181 -0
  108. package/ccw/dist/core/memory-embedder-bridge.js.map +1 -0
  109. package/ccw/dist/core/memory-store.d.ts +249 -0
  110. package/ccw/dist/core/memory-store.d.ts.map +1 -0
  111. package/ccw/dist/core/memory-store.js +781 -0
  112. package/ccw/dist/core/memory-store.js.map +1 -0
  113. package/ccw/dist/core/routes/ccw-routes.d.ts +20 -0
  114. package/ccw/dist/core/routes/ccw-routes.d.ts.map +1 -0
  115. package/ccw/dist/core/routes/ccw-routes.js +70 -0
  116. package/ccw/dist/core/routes/ccw-routes.js.map +1 -0
  117. package/ccw/dist/core/routes/claude-routes.d.ts +19 -0
  118. package/ccw/dist/core/routes/claude-routes.d.ts.map +1 -0
  119. package/ccw/dist/core/routes/claude-routes.js +1017 -0
  120. package/ccw/dist/core/routes/claude-routes.js.map +1 -0
  121. package/ccw/dist/core/routes/cli-routes.d.ts +20 -0
  122. package/ccw/dist/core/routes/cli-routes.d.ts.map +1 -0
  123. package/ccw/dist/core/routes/cli-routes.js +468 -0
  124. package/ccw/dist/core/routes/cli-routes.js.map +1 -0
  125. package/ccw/dist/core/routes/codexlens-routes.d.ts +20 -0
  126. package/ccw/dist/core/routes/codexlens-routes.d.ts.map +1 -0
  127. package/ccw/dist/core/routes/codexlens-routes.js +754 -0
  128. package/ccw/dist/core/routes/codexlens-routes.js.map +1 -0
  129. package/ccw/dist/core/routes/core-memory-routes.d.ts +21 -0
  130. package/ccw/dist/core/routes/core-memory-routes.d.ts.map +1 -0
  131. package/ccw/dist/core/routes/core-memory-routes.js +520 -0
  132. package/ccw/dist/core/routes/core-memory-routes.js.map +1 -0
  133. package/ccw/dist/core/routes/files-routes.d.ts +20 -0
  134. package/ccw/dist/core/routes/files-routes.d.ts.map +1 -0
  135. package/ccw/dist/core/routes/files-routes.js +374 -0
  136. package/ccw/dist/core/routes/files-routes.js.map +1 -0
  137. package/ccw/dist/core/routes/graph-routes.d.ts +20 -0
  138. package/ccw/dist/core/routes/graph-routes.d.ts.map +1 -0
  139. package/ccw/dist/core/routes/graph-routes.js +517 -0
  140. package/ccw/dist/core/routes/graph-routes.js.map +1 -0
  141. package/ccw/dist/core/routes/help-routes.d.ts +20 -0
  142. package/ccw/dist/core/routes/help-routes.d.ts.map +1 -0
  143. package/ccw/dist/core/routes/help-routes.js +250 -0
  144. package/ccw/dist/core/routes/help-routes.js.map +1 -0
  145. package/ccw/dist/core/routes/hooks-routes.d.ts +21 -0
  146. package/ccw/dist/core/routes/hooks-routes.d.ts.map +1 -0
  147. package/ccw/dist/core/routes/hooks-routes.js +346 -0
  148. package/ccw/dist/core/routes/hooks-routes.js.map +1 -0
  149. package/ccw/dist/core/routes/mcp-routes.d.ts +20 -0
  150. package/ccw/dist/core/routes/mcp-routes.d.ts.map +1 -0
  151. package/ccw/dist/core/routes/mcp-routes.js +1129 -0
  152. package/ccw/dist/core/routes/mcp-routes.js.map +1 -0
  153. package/ccw/dist/core/routes/mcp-templates-db.d.ts +54 -0
  154. package/ccw/dist/core/routes/mcp-templates-db.d.ts.map +1 -0
  155. package/ccw/dist/core/routes/mcp-templates-db.js +226 -0
  156. package/ccw/dist/core/routes/mcp-templates-db.js.map +1 -0
  157. package/ccw/dist/core/routes/memory-routes.d.ts +21 -0
  158. package/ccw/dist/core/routes/memory-routes.d.ts.map +1 -0
  159. package/ccw/dist/core/routes/memory-routes.js +1095 -0
  160. package/ccw/dist/core/routes/memory-routes.js.map +1 -0
  161. package/ccw/dist/core/routes/rules-routes.d.ts +20 -0
  162. package/ccw/dist/core/routes/rules-routes.d.ts.map +1 -0
  163. package/ccw/dist/core/routes/rules-routes.js +442 -0
  164. package/ccw/dist/core/routes/rules-routes.js.map +1 -0
  165. package/ccw/dist/core/routes/session-routes.d.ts +20 -0
  166. package/ccw/dist/core/routes/session-routes.d.ts.map +1 -0
  167. package/ccw/dist/core/routes/session-routes.js +423 -0
  168. package/ccw/dist/core/routes/session-routes.js.map +1 -0
  169. package/ccw/dist/core/routes/skills-routes.d.ts +20 -0
  170. package/ccw/dist/core/routes/skills-routes.d.ts.map +1 -0
  171. package/ccw/dist/core/routes/skills-routes.js +533 -0
  172. package/ccw/dist/core/routes/skills-routes.js.map +1 -0
  173. package/ccw/dist/core/routes/status-routes.d.ts +20 -0
  174. package/ccw/dist/core/routes/status-routes.d.ts.map +1 -0
  175. package/ccw/dist/core/routes/status-routes.js +38 -0
  176. package/ccw/dist/core/routes/status-routes.js.map +1 -0
  177. package/ccw/dist/core/routes/system-routes.d.ts +22 -0
  178. package/ccw/dist/core/routes/system-routes.d.ts.map +1 -0
  179. package/ccw/dist/core/routes/system-routes.js +354 -0
  180. package/ccw/dist/core/routes/system-routes.js.map +1 -0
  181. package/ccw/dist/core/server.d.ts +17 -0
  182. package/ccw/dist/core/server.d.ts.map +1 -0
  183. package/ccw/dist/core/server.js +386 -0
  184. package/ccw/dist/core/server.js.map +1 -0
  185. package/ccw/dist/core/session-clustering-service.d.ts +153 -0
  186. package/ccw/dist/core/session-clustering-service.d.ts.map +1 -0
  187. package/ccw/dist/core/session-clustering-service.js +1065 -0
  188. package/ccw/dist/core/session-clustering-service.js.map +1 -0
  189. package/ccw/dist/core/session-scanner.d.ts +32 -0
  190. package/ccw/dist/core/session-scanner.d.ts.map +1 -0
  191. package/ccw/dist/core/session-scanner.js +253 -0
  192. package/ccw/dist/core/session-scanner.js.map +1 -0
  193. package/ccw/dist/core/websocket.d.ts +23 -0
  194. package/ccw/dist/core/websocket.d.ts.map +1 -0
  195. package/ccw/dist/core/websocket.js +168 -0
  196. package/ccw/dist/core/websocket.js.map +1 -0
  197. package/ccw/dist/index.d.ts +10 -0
  198. package/ccw/dist/index.d.ts.map +1 -0
  199. package/ccw/dist/index.js +10 -0
  200. package/ccw/dist/index.js.map +1 -0
  201. package/ccw/dist/mcp-server/index.d.ts +7 -0
  202. package/ccw/dist/mcp-server/index.d.ts.map +1 -0
  203. package/ccw/dist/mcp-server/index.js +157 -0
  204. package/ccw/dist/mcp-server/index.js.map +1 -0
  205. package/ccw/dist/tools/classify-folders.d.ts +26 -0
  206. package/ccw/dist/tools/classify-folders.d.ts.map +1 -0
  207. package/ccw/dist/tools/classify-folders.js +201 -0
  208. package/ccw/dist/tools/classify-folders.js.map +1 -0
  209. package/ccw/dist/tools/cli-config-manager.d.ts +62 -0
  210. package/ccw/dist/tools/cli-config-manager.d.ts.map +1 -0
  211. package/ccw/dist/tools/cli-config-manager.js +221 -0
  212. package/ccw/dist/tools/cli-config-manager.js.map +1 -0
  213. package/ccw/dist/tools/cli-executor.d.ts +373 -0
  214. package/ccw/dist/tools/cli-executor.d.ts.map +1 -0
  215. package/ccw/dist/tools/cli-executor.js +1625 -0
  216. package/ccw/dist/tools/cli-executor.js.map +1 -0
  217. package/ccw/dist/tools/cli-history-store.d.ts +330 -0
  218. package/ccw/dist/tools/cli-history-store.d.ts.map +1 -0
  219. package/ccw/dist/tools/cli-history-store.js +916 -0
  220. package/ccw/dist/tools/cli-history-store.js.map +1 -0
  221. package/ccw/dist/tools/codex-lens.d.ts +118 -0
  222. package/ccw/dist/tools/codex-lens.d.ts.map +1 -0
  223. package/ccw/dist/tools/codex-lens.js +962 -0
  224. package/ccw/dist/tools/codex-lens.js.map +1 -0
  225. package/ccw/dist/tools/convert-tokens-to-css.d.ts +14 -0
  226. package/ccw/dist/tools/convert-tokens-to-css.d.ts.map +1 -0
  227. package/ccw/dist/tools/convert-tokens-to-css.js +244 -0
  228. package/ccw/dist/tools/convert-tokens-to-css.js.map +1 -0
  229. package/ccw/dist/tools/core-memory.d.ts +66 -0
  230. package/ccw/dist/tools/core-memory.d.ts.map +1 -0
  231. package/ccw/dist/tools/core-memory.js +324 -0
  232. package/ccw/dist/tools/core-memory.js.map +1 -0
  233. package/ccw/dist/tools/detect-changed-modules.d.ts +24 -0
  234. package/ccw/dist/tools/detect-changed-modules.d.ts.map +1 -0
  235. package/ccw/dist/tools/detect-changed-modules.js +277 -0
  236. package/ccw/dist/tools/detect-changed-modules.js.map +1 -0
  237. package/ccw/dist/tools/discover-design-files.d.ts +36 -0
  238. package/ccw/dist/tools/discover-design-files.d.ts.map +1 -0
  239. package/ccw/dist/tools/discover-design-files.js +147 -0
  240. package/ccw/dist/tools/discover-design-files.js.map +1 -0
  241. package/ccw/dist/tools/edit-file.d.ts +28 -0
  242. package/ccw/dist/tools/edit-file.d.ts.map +1 -0
  243. package/ccw/dist/tools/edit-file.js +479 -0
  244. package/ccw/dist/tools/edit-file.js.map +1 -0
  245. package/ccw/dist/tools/generate-module-docs.d.ts +22 -0
  246. package/ccw/dist/tools/generate-module-docs.d.ts.map +1 -0
  247. package/ccw/dist/tools/generate-module-docs.js +379 -0
  248. package/ccw/dist/tools/generate-module-docs.js.map +1 -0
  249. package/ccw/dist/tools/get-modules-by-depth.d.ts +15 -0
  250. package/ccw/dist/tools/get-modules-by-depth.d.ts.map +1 -0
  251. package/ccw/dist/tools/get-modules-by-depth.js +296 -0
  252. package/ccw/dist/tools/get-modules-by-depth.js.map +1 -0
  253. package/ccw/dist/tools/index.d.ts +55 -0
  254. package/ccw/dist/tools/index.d.ts.map +1 -0
  255. package/ccw/dist/tools/index.js +304 -0
  256. package/ccw/dist/tools/index.js.map +1 -0
  257. package/ccw/dist/tools/native-session-discovery.d.ts +97 -0
  258. package/ccw/dist/tools/native-session-discovery.d.ts.map +1 -0
  259. package/ccw/dist/tools/native-session-discovery.js +700 -0
  260. package/ccw/dist/tools/native-session-discovery.js.map +1 -0
  261. package/ccw/dist/tools/notifier.d.ts +50 -0
  262. package/ccw/dist/tools/notifier.d.ts.map +1 -0
  263. package/ccw/dist/tools/notifier.js +90 -0
  264. package/ccw/dist/tools/notifier.js.map +1 -0
  265. package/ccw/dist/tools/read-file.d.ts +32 -0
  266. package/ccw/dist/tools/read-file.d.ts.map +1 -0
  267. package/ccw/dist/tools/read-file.js +329 -0
  268. package/ccw/dist/tools/read-file.js.map +1 -0
  269. package/ccw/dist/tools/resume-strategy.d.ts +48 -0
  270. package/ccw/dist/tools/resume-strategy.d.ts.map +1 -0
  271. package/ccw/dist/tools/resume-strategy.js +248 -0
  272. package/ccw/dist/tools/resume-strategy.js.map +1 -0
  273. package/ccw/dist/tools/session-content-parser.d.ts +58 -0
  274. package/ccw/dist/tools/session-content-parser.d.ts.map +1 -0
  275. package/ccw/dist/tools/session-content-parser.js +420 -0
  276. package/ccw/dist/tools/session-content-parser.js.map +1 -0
  277. package/ccw/dist/tools/session-manager.d.ts +9 -0
  278. package/ccw/dist/tools/session-manager.d.ts.map +1 -0
  279. package/ccw/dist/tools/session-manager.js +834 -0
  280. package/ccw/dist/tools/session-manager.js.map +1 -0
  281. package/ccw/dist/tools/smart-context.d.ts +35 -0
  282. package/ccw/dist/tools/smart-context.d.ts.map +1 -0
  283. package/ccw/dist/tools/smart-context.js +182 -0
  284. package/ccw/dist/tools/smart-context.js.map +1 -0
  285. package/ccw/dist/tools/smart-search.d.ts +105 -0
  286. package/ccw/dist/tools/smart-search.d.ts.map +1 -0
  287. package/ccw/dist/tools/smart-search.js +1753 -0
  288. package/ccw/dist/tools/smart-search.js.map +1 -0
  289. package/ccw/dist/tools/storage-manager.d.ts +114 -0
  290. package/ccw/dist/tools/storage-manager.d.ts.map +1 -0
  291. package/ccw/dist/tools/storage-manager.js +392 -0
  292. package/ccw/dist/tools/storage-manager.js.map +1 -0
  293. package/ccw/dist/tools/ui-generate-preview.d.ts +39 -0
  294. package/ccw/dist/tools/ui-generate-preview.d.ts.map +1 -0
  295. package/ccw/dist/tools/ui-generate-preview.js +300 -0
  296. package/ccw/dist/tools/ui-generate-preview.js.map +1 -0
  297. package/ccw/dist/tools/ui-instantiate-prototypes.d.ts +75 -0
  298. package/ccw/dist/tools/ui-instantiate-prototypes.d.ts.map +1 -0
  299. package/ccw/dist/tools/ui-instantiate-prototypes.js +256 -0
  300. package/ccw/dist/tools/ui-instantiate-prototypes.js.map +1 -0
  301. package/ccw/dist/tools/update-module-claude.d.ts +80 -0
  302. package/ccw/dist/tools/update-module-claude.d.ts.map +1 -0
  303. package/ccw/dist/tools/update-module-claude.js +351 -0
  304. package/ccw/dist/tools/update-module-claude.js.map +1 -0
  305. package/ccw/dist/tools/write-file.d.ts +19 -0
  306. package/ccw/dist/tools/write-file.d.ts.map +1 -0
  307. package/ccw/dist/tools/write-file.js +193 -0
  308. package/ccw/dist/tools/write-file.js.map +1 -0
  309. package/ccw/dist/types/config.d.ts +11 -0
  310. package/ccw/dist/types/config.d.ts.map +1 -0
  311. package/ccw/dist/types/config.js +2 -0
  312. package/ccw/dist/types/config.js.map +1 -0
  313. package/ccw/dist/types/index.d.ts +4 -0
  314. package/ccw/dist/types/index.d.ts.map +1 -0
  315. package/ccw/dist/types/index.js +4 -0
  316. package/ccw/dist/types/index.js.map +1 -0
  317. package/ccw/dist/types/session.d.ts +20 -0
  318. package/ccw/dist/types/session.d.ts.map +1 -0
  319. package/ccw/dist/types/session.js +2 -0
  320. package/ccw/dist/types/session.js.map +1 -0
  321. package/ccw/dist/types/tool.d.ts +36 -0
  322. package/ccw/dist/types/tool.d.ts.map +1 -0
  323. package/ccw/dist/types/tool.js +11 -0
  324. package/ccw/dist/types/tool.js.map +1 -0
  325. package/ccw/dist/utils/browser-launcher.d.ts +13 -0
  326. package/ccw/dist/utils/browser-launcher.d.ts.map +1 -0
  327. package/ccw/dist/utils/browser-launcher.js +60 -0
  328. package/ccw/dist/utils/browser-launcher.js.map +1 -0
  329. package/ccw/dist/utils/file-utils.d.ts +25 -0
  330. package/ccw/dist/utils/file-utils.d.ts.map +1 -0
  331. package/ccw/dist/utils/file-utils.js +48 -0
  332. package/ccw/dist/utils/file-utils.js.map +1 -0
  333. package/ccw/dist/utils/path-resolver.d.ts +80 -0
  334. package/ccw/dist/utils/path-resolver.d.ts.map +1 -0
  335. package/ccw/dist/utils/path-resolver.js +260 -0
  336. package/ccw/dist/utils/path-resolver.js.map +1 -0
  337. package/ccw/dist/utils/path-validator.d.ts +49 -0
  338. package/ccw/dist/utils/path-validator.d.ts.map +1 -0
  339. package/ccw/dist/utils/path-validator.js +123 -0
  340. package/ccw/dist/utils/path-validator.js.map +1 -0
  341. package/ccw/dist/utils/ui.d.ts +62 -0
  342. package/ccw/dist/utils/ui.d.ts.map +1 -0
  343. package/ccw/dist/utils/ui.js +129 -0
  344. package/ccw/dist/utils/ui.js.map +1 -0
  345. package/ccw/package.json +1 -1
  346. package/package.json +5 -2
@@ -0,0 +1,386 @@
1
+ // @ts-nocheck
2
+ import http from 'http';
3
+ import { URL } from 'url';
4
+ import { readFileSync, existsSync } from 'fs';
5
+ import { join } from 'path';
6
+ import { getRecentPaths, normalizePathForDisplay } from '../utils/path-resolver.js';
7
+ // Import route handlers
8
+ import { handleStatusRoutes } from './routes/status-routes.js';
9
+ import { handleCliRoutes } from './routes/cli-routes.js';
10
+ import { handleMemoryRoutes } from './routes/memory-routes.js';
11
+ import { handleCoreMemoryRoutes } from './routes/core-memory-routes.js';
12
+ import { handleMcpRoutes } from './routes/mcp-routes.js';
13
+ import { handleHooksRoutes } from './routes/hooks-routes.js';
14
+ import { handleCodexLensRoutes } from './routes/codexlens-routes.js';
15
+ import { handleGraphRoutes } from './routes/graph-routes.js';
16
+ import { handleSystemRoutes } from './routes/system-routes.js';
17
+ import { handleFilesRoutes } from './routes/files-routes.js';
18
+ import { handleSkillsRoutes } from './routes/skills-routes.js';
19
+ import { handleRulesRoutes } from './routes/rules-routes.js';
20
+ import { handleSessionRoutes } from './routes/session-routes.js';
21
+ import { handleCcwRoutes } from './routes/ccw-routes.js';
22
+ import { handleClaudeRoutes } from './routes/claude-routes.js';
23
+ import { handleHelpRoutes } from './routes/help-routes.js';
24
+ // Import WebSocket handling
25
+ import { handleWebSocketUpgrade, broadcastToClients } from './websocket.js';
26
+ // Template paths
27
+ const TEMPLATE_PATH = join(import.meta.dirname, '../../src/templates/dashboard.html');
28
+ const MODULE_CSS_DIR = join(import.meta.dirname, '../../src/templates/dashboard-css');
29
+ const JS_FILE = join(import.meta.dirname, '../../src/templates/dashboard.js');
30
+ const MODULE_JS_DIR = join(import.meta.dirname, '../../src/templates/dashboard-js');
31
+ const ASSETS_DIR = join(import.meta.dirname, '../../src/templates/assets');
32
+ // Modular CSS files in load order
33
+ const MODULE_CSS_FILES = [
34
+ '01-base.css',
35
+ '02-session.css',
36
+ '03-tasks.css',
37
+ '04-lite-tasks.css',
38
+ '05-context.css',
39
+ '06-cards.css',
40
+ '07-managers.css',
41
+ '08-review.css',
42
+ '09-explorer.css',
43
+ // CLI modules (split from 10-cli.css)
44
+ '10-cli-status.css',
45
+ '11-cli-history.css',
46
+ '12-cli-legacy.css',
47
+ '13-cli-ccw.css',
48
+ '14-cli-modals.css',
49
+ '15-cli-endpoints.css',
50
+ '16-cli-session.css',
51
+ '17-cli-conversation.css',
52
+ '18-cli-settings.css',
53
+ '19-cli-native-session.css',
54
+ '20-cli-taskqueue.css',
55
+ '21-cli-toolmgmt.css',
56
+ '22-cli-semantic.css',
57
+ // Other modules
58
+ '23-memory.css',
59
+ '24-prompt-history.css',
60
+ '25-skills-rules.css',
61
+ '26-claude-manager.css',
62
+ '27-graph-explorer.css',
63
+ '28-mcp-manager.css',
64
+ '29-help.css',
65
+ '30-core-memory.css'
66
+ ];
67
+ // Modular JS files in dependency order
68
+ const MODULE_FILES = [
69
+ 'i18n.js', // Must be loaded first for translations
70
+ 'help-i18n.js', // Help page translations
71
+ 'utils.js',
72
+ 'state.js',
73
+ 'api.js',
74
+ 'components/theme.js',
75
+ 'components/modals.js',
76
+ 'components/navigation.js',
77
+ 'components/sidebar.js',
78
+ 'components/tabs-context.js',
79
+ 'components/tabs-other.js',
80
+ 'components/task-drawer-core.js',
81
+ 'components/task-drawer-renderers.js',
82
+ 'components/flowchart.js',
83
+ 'components/carousel.js',
84
+ 'components/notifications.js',
85
+ 'components/global-notifications.js',
86
+ 'components/task-queue-sidebar.js',
87
+ 'components/cli-status.js',
88
+ 'components/cli-history.js',
89
+ 'components/mcp-manager.js',
90
+ 'components/hook-manager.js',
91
+ 'components/version-check.js',
92
+ 'components/storage-manager.js',
93
+ 'components/index-manager.js',
94
+ 'components/_exp_helpers.js',
95
+ 'components/_conflict_tab.js',
96
+ 'components/_review_tab.js',
97
+ 'views/home.js',
98
+ 'views/project-overview.js',
99
+ 'views/session-detail.js',
100
+ 'views/review-session.js',
101
+ 'views/lite-tasks.js',
102
+ 'views/fix-session.js',
103
+ 'views/cli-manager.js',
104
+ 'views/codexlens-manager.js',
105
+ 'views/explorer.js',
106
+ 'views/mcp-manager.js',
107
+ 'views/hook-manager.js',
108
+ 'views/history.js',
109
+ 'views/graph-explorer.js',
110
+ 'views/memory.js',
111
+ 'views/core-memory.js',
112
+ 'views/core-memory-graph.js',
113
+ 'views/core-memory-clusters.js',
114
+ 'views/prompt-history.js',
115
+ 'views/skills-manager.js',
116
+ 'views/rules-manager.js',
117
+ 'views/claude-manager.js',
118
+ 'views/help.js',
119
+ 'main.js'
120
+ ];
121
+ /**
122
+ * Handle POST request with JSON body
123
+ */
124
+ function handlePostRequest(req, res, handler) {
125
+ let body = '';
126
+ req.on('data', chunk => { body += chunk; });
127
+ req.on('end', async () => {
128
+ try {
129
+ const parsed = JSON.parse(body);
130
+ const result = await handler(parsed);
131
+ if (result.error) {
132
+ const status = result.status || 500;
133
+ res.writeHead(status, { 'Content-Type': 'application/json' });
134
+ res.end(JSON.stringify({ error: result.error }));
135
+ }
136
+ else {
137
+ res.writeHead(200, { 'Content-Type': 'application/json' });
138
+ res.end(JSON.stringify(result));
139
+ }
140
+ }
141
+ catch (error) {
142
+ res.writeHead(500, { 'Content-Type': 'application/json' });
143
+ res.end(JSON.stringify({ error: error.message }));
144
+ }
145
+ });
146
+ }
147
+ /**
148
+ * Generate dashboard HTML with embedded CSS and JS
149
+ */
150
+ function generateServerDashboard(initialPath) {
151
+ let html = readFileSync(TEMPLATE_PATH, 'utf8');
152
+ // Read and concatenate modular CSS files in load order
153
+ const cssContent = MODULE_CSS_FILES.map(file => {
154
+ const filePath = join(MODULE_CSS_DIR, file);
155
+ return existsSync(filePath) ? readFileSync(filePath, 'utf8') : '';
156
+ }).join('\n\n');
157
+ // Read and concatenate modular JS files in dependency order
158
+ let jsContent = MODULE_FILES.map(file => {
159
+ const filePath = join(MODULE_JS_DIR, file);
160
+ return existsSync(filePath) ? readFileSync(filePath, 'utf8') : '';
161
+ }).join('\n\n');
162
+ // Inject CSS content
163
+ html = html.replace('{{CSS_CONTENT}}', cssContent);
164
+ // Prepare JS content with empty initial data (will be loaded dynamically)
165
+ const emptyData = {
166
+ generatedAt: new Date().toISOString(),
167
+ activeSessions: [],
168
+ archivedSessions: [],
169
+ liteTasks: { litePlan: [], liteFix: [] },
170
+ reviewData: { dimensions: {} },
171
+ projectOverview: null,
172
+ statistics: { totalSessions: 0, activeSessions: 0, totalTasks: 0, completedTasks: 0, reviewFindings: 0, litePlanCount: 0, liteFixCount: 0 }
173
+ };
174
+ // Replace JS placeholders
175
+ jsContent = jsContent.replace('{{WORKFLOW_DATA}}', JSON.stringify(emptyData, null, 2));
176
+ jsContent = jsContent.replace(/\{\{PROJECT_PATH\}\}/g, normalizePathForDisplay(initialPath).replace(/\\/g, '/'));
177
+ jsContent = jsContent.replace('{{RECENT_PATHS}}', JSON.stringify(getRecentPaths()));
178
+ // Add server mode flag at the start of JS
179
+ const serverModeScript = `
180
+ // Server mode - load data dynamically
181
+ window.SERVER_MODE = true;
182
+ window.INITIAL_PATH = '${normalizePathForDisplay(initialPath).replace(/\\/g, '/')}';
183
+ `;
184
+ // Prepend server mode script to JS content
185
+ jsContent = serverModeScript + jsContent;
186
+ // Inject JS content
187
+ html = html.replace('{{JS_CONTENT}}', jsContent);
188
+ // Replace any remaining placeholders in HTML
189
+ html = html.replace(/\{\{PROJECT_PATH\}\}/g, normalizePathForDisplay(initialPath).replace(/\\/g, '/'));
190
+ return html;
191
+ }
192
+ /**
193
+ * Create and start the dashboard server
194
+ * @param {Object} options - Server options
195
+ * @param {number} options.port - Port to listen on (default: 3456)
196
+ * @param {string} options.initialPath - Initial project path
197
+ * @returns {Promise<http.Server>}
198
+ */
199
+ export async function startServer(options = {}) {
200
+ const port = options.port || 3456;
201
+ const initialPath = options.initialPath || process.cwd();
202
+ const server = http.createServer(async (req, res) => {
203
+ const url = new URL(req.url, `http://localhost:${port}`);
204
+ const pathname = url.pathname;
205
+ // CORS headers for API requests
206
+ res.setHeader('Access-Control-Allow-Origin', '*');
207
+ res.setHeader('Access-Control-Allow-Methods', 'GET, POST, DELETE, OPTIONS');
208
+ res.setHeader('Access-Control-Allow-Headers', 'Content-Type');
209
+ if (req.method === 'OPTIONS') {
210
+ res.writeHead(200);
211
+ res.end();
212
+ return;
213
+ }
214
+ try {
215
+ // Debug log for API requests
216
+ if (pathname.startsWith('/api/')) {
217
+ console.log(`[API] ${req.method} ${pathname}`);
218
+ }
219
+ // Route context for all handlers
220
+ const routeContext = {
221
+ pathname,
222
+ url,
223
+ req,
224
+ res,
225
+ initialPath,
226
+ handlePostRequest,
227
+ broadcastToClients,
228
+ server
229
+ };
230
+ // Try each route handler in order
231
+ // Order matters: more specific routes should come before general ones
232
+ // Status routes (/api/status/*) - Aggregated endpoint for faster loading
233
+ if (pathname.startsWith('/api/status/')) {
234
+ if (await handleStatusRoutes(routeContext))
235
+ return;
236
+ }
237
+ // CLI routes (/api/cli/*)
238
+ if (pathname.startsWith('/api/cli/')) {
239
+ if (await handleCliRoutes(routeContext))
240
+ return;
241
+ }
242
+ // Claude CLAUDE.md routes (/api/memory/claude/*) and Language routes (/api/language/*)
243
+ if (pathname.startsWith('/api/memory/claude/') || pathname.startsWith('/api/language/')) {
244
+ if (await handleClaudeRoutes(routeContext))
245
+ return;
246
+ }
247
+ // Memory routes (/api/memory/*)
248
+ if (pathname.startsWith('/api/memory/')) {
249
+ if (await handleMemoryRoutes(routeContext))
250
+ return;
251
+ }
252
+ // Core Memory routes (/api/core-memory/*)
253
+ if (pathname.startsWith('/api/core-memory/')) {
254
+ if (await handleCoreMemoryRoutes(routeContext))
255
+ return;
256
+ }
257
+ // MCP routes (/api/mcp*, /api/codex-mcp*)
258
+ if (pathname.startsWith('/api/mcp') || pathname.startsWith('/api/codex-mcp')) {
259
+ if (await handleMcpRoutes(routeContext))
260
+ return;
261
+ }
262
+ // Hooks routes (/api/hooks, /api/hook)
263
+ if (pathname.startsWith('/api/hook')) {
264
+ if (await handleHooksRoutes(routeContext))
265
+ return;
266
+ }
267
+ // CodexLens routes (/api/codexlens/*)
268
+ if (pathname.startsWith('/api/codexlens/')) {
269
+ if (await handleCodexLensRoutes(routeContext))
270
+ return;
271
+ }
272
+ // Graph routes (/api/graph/*)
273
+ if (pathname.startsWith('/api/graph/')) {
274
+ if (await handleGraphRoutes(routeContext))
275
+ return;
276
+ }
277
+ // CCW routes (/api/ccw/*)
278
+ if (pathname.startsWith('/api/ccw/')) {
279
+ if (await handleCcwRoutes(routeContext))
280
+ return;
281
+ }
282
+ // Skills routes (/api/skills*)
283
+ if (pathname.startsWith('/api/skills')) {
284
+ if (await handleSkillsRoutes(routeContext))
285
+ return;
286
+ }
287
+ // Rules routes (/api/rules*)
288
+ if (pathname.startsWith('/api/rules')) {
289
+ if (await handleRulesRoutes(routeContext))
290
+ return;
291
+ }
292
+ // Help routes (/api/help/*)
293
+ if (pathname.startsWith('/api/help/')) {
294
+ if (await handleHelpRoutes(routeContext))
295
+ return;
296
+ }
297
+ // Session routes (/api/session-detail, /api/update-task-status, /api/bulk-update-task-status)
298
+ if (pathname.includes('session') || pathname.includes('task-status')) {
299
+ if (await handleSessionRoutes(routeContext))
300
+ return;
301
+ }
302
+ // Files routes (/api/files, /api/file, /api/file-content, /api/update-claude-md)
303
+ if (pathname === '/api/files' || pathname === '/api/file' ||
304
+ pathname === '/api/file-content' || pathname === '/api/update-claude-md') {
305
+ if (await handleFilesRoutes(routeContext))
306
+ return;
307
+ }
308
+ // System routes (data, health, version, paths, shutdown, notify, storage)
309
+ if (pathname === '/api/data' || pathname === '/api/health' ||
310
+ pathname === '/api/version-check' || pathname === '/api/shutdown' ||
311
+ pathname === '/api/recent-paths' || pathname === '/api/switch-path' ||
312
+ pathname === '/api/remove-recent-path' || pathname === '/api/system/notify' ||
313
+ pathname.startsWith('/api/storage/')) {
314
+ if (await handleSystemRoutes(routeContext))
315
+ return;
316
+ }
317
+ // Serve dashboard HTML
318
+ if (pathname === '/' || pathname === '/index.html') {
319
+ const html = generateServerDashboard(initialPath);
320
+ res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
321
+ res.end(html);
322
+ return;
323
+ }
324
+ // Handle favicon.ico (return empty response to prevent 404)
325
+ if (pathname === '/favicon.ico') {
326
+ res.writeHead(204);
327
+ res.end();
328
+ return;
329
+ }
330
+ // Serve static assets (js, css, images, fonts)
331
+ if (pathname.startsWith('/assets/')) {
332
+ const assetPath = join(ASSETS_DIR, pathname.replace('/assets/', ''));
333
+ if (existsSync(assetPath)) {
334
+ const ext = assetPath.split('.').pop().toLowerCase();
335
+ const mimeTypes = {
336
+ 'js': 'application/javascript',
337
+ 'css': 'text/css',
338
+ 'json': 'application/json',
339
+ 'png': 'image/png',
340
+ 'jpg': 'image/jpeg',
341
+ 'jpeg': 'image/jpeg',
342
+ 'svg': 'image/svg+xml',
343
+ 'woff': 'font/woff',
344
+ 'woff2': 'font/woff2',
345
+ 'ttf': 'font/ttf'
346
+ };
347
+ const contentType = mimeTypes[ext] || 'application/octet-stream';
348
+ const content = readFileSync(assetPath);
349
+ res.writeHead(200, {
350
+ 'Content-Type': contentType,
351
+ 'Cache-Control': 'no-cache, must-revalidate'
352
+ });
353
+ res.end(content);
354
+ return;
355
+ }
356
+ }
357
+ // 404
358
+ res.writeHead(404, { 'Content-Type': 'text/plain' });
359
+ res.end('Not Found');
360
+ }
361
+ catch (error) {
362
+ console.error('Server error:', error);
363
+ res.writeHead(500, { 'Content-Type': 'application/json' });
364
+ res.end(JSON.stringify({ error: error.message }));
365
+ }
366
+ });
367
+ // Handle WebSocket upgrade requests
368
+ server.on('upgrade', (req, socket, head) => {
369
+ if (req.url === '/ws') {
370
+ handleWebSocketUpgrade(req, socket, head);
371
+ }
372
+ else {
373
+ socket.destroy();
374
+ }
375
+ });
376
+ return new Promise((resolve, reject) => {
377
+ server.listen(port, () => {
378
+ console.log(`Dashboard server running at http://localhost:${port}`);
379
+ console.log(`WebSocket endpoint available at ws://localhost:${port}/ws`);
380
+ console.log(`Hook endpoint available at POST http://localhost:${port}/api/hook`);
381
+ resolve(server);
382
+ });
383
+ server.on('error', reject);
384
+ });
385
+ }
386
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/core/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,153 @@
1
+ /**
2
+ * Session Clustering Service
3
+ * Intelligently groups related sessions into clusters using multi-dimensional similarity analysis
4
+ */
5
+ import { SessionMetadataCache } from './core-memory-store.js';
6
+ export interface ClusteringOptions {
7
+ scope?: 'all' | 'recent' | 'unclustered';
8
+ timeRange?: {
9
+ start: string;
10
+ end: string;
11
+ };
12
+ minClusterSize?: number;
13
+ }
14
+ export interface ClusteringResult {
15
+ clustersCreated: number;
16
+ sessionsProcessed: number;
17
+ sessionsClustered: number;
18
+ }
19
+ export declare class SessionClusteringService {
20
+ private coreMemoryStore;
21
+ private cliHistoryStore;
22
+ private projectPath;
23
+ constructor(projectPath: string);
24
+ /**
25
+ * Collect all session sources
26
+ */
27
+ collectSessions(options?: ClusteringOptions): Promise<SessionMetadataCache[]>;
28
+ /**
29
+ * Extract metadata from a session
30
+ */
31
+ extractMetadata(session: any, type: 'core_memory' | 'workflow' | 'cli_history' | 'native'): SessionMetadataCache;
32
+ /**
33
+ * Extract keywords from content
34
+ */
35
+ private extractKeywords;
36
+ /**
37
+ * Extract file patterns from content
38
+ */
39
+ private extractFilePatterns;
40
+ /**
41
+ * Calculate relevance score between two sessions
42
+ */
43
+ calculateRelevance(session1: SessionMetadataCache, session2: SessionMetadataCache): number;
44
+ /**
45
+ * Calculate file path overlap score (Jaccard similarity)
46
+ */
47
+ private calculateFileOverlap;
48
+ /**
49
+ * Calculate temporal proximity score
50
+ * 24h: 1.0, 7d: 0.7, 30d: 0.4, >30d: 0.1
51
+ */
52
+ private calculateTemporalProximity;
53
+ /**
54
+ * Calculate semantic similarity using keyword overlap (Jaccard similarity)
55
+ */
56
+ private calculateSemanticSimilarity;
57
+ /**
58
+ * Calculate intent alignment score
59
+ * Based on title/summary keyword matching
60
+ */
61
+ private calculateIntentAlignment;
62
+ /**
63
+ * Calculate vector similarity using pre-computed embeddings from memory_chunks
64
+ * Returns average cosine similarity of chunk embeddings
65
+ */
66
+ private calculateVectorSimilarity;
67
+ /**
68
+ * Get session embedding by averaging all chunk embeddings
69
+ */
70
+ private getSessionEmbedding;
71
+ /**
72
+ * Calculate cosine similarity between two vectors
73
+ */
74
+ private cosineSimilarity;
75
+ /**
76
+ * Find the most relevant existing cluster for a set of session IDs
77
+ * Returns the cluster with highest session overlap
78
+ */
79
+ private findExistingClusterForSessions;
80
+ /**
81
+ * Determine if a new cluster should merge with an existing one
82
+ * Based on 70% session overlap threshold
83
+ */
84
+ private shouldMergeWithExisting;
85
+ /**
86
+ * Run auto-clustering algorithm
87
+ * Optimized to prevent duplicate clusters by checking existing clusters first
88
+ */
89
+ autocluster(options?: ClusteringOptions): Promise<ClusteringResult>;
90
+ /**
91
+ * Deduplicate clusters by merging similar ones
92
+ * Clusters with same name or >50% member overlap are merged
93
+ * @returns Statistics about deduplication
94
+ */
95
+ deduplicateClusters(): Promise<{
96
+ merged: number;
97
+ deleted: number;
98
+ remaining: number;
99
+ }>;
100
+ /**
101
+ * Agglomerative clustering algorithm
102
+ * Returns array of clusters (each cluster is array of sessions)
103
+ */
104
+ private agglomerativeClustering;
105
+ /**
106
+ * Calculate average linkage between two clusters
107
+ */
108
+ private averageLinkage;
109
+ /**
110
+ * Generate cluster name from members
111
+ */
112
+ private generateClusterName;
113
+ /**
114
+ * Generate cluster intent from members
115
+ */
116
+ private generateClusterIntent;
117
+ /**
118
+ * Get progressive disclosure index for hook
119
+ * @param options - Configuration options
120
+ * @param options.type - 'session-start' returns recent sessions, 'context' returns intent-matched sessions
121
+ * @param options.sessionId - Current session ID (optional)
122
+ * @param options.prompt - User prompt for intent matching (required for 'context' type)
123
+ */
124
+ getProgressiveIndex(options: {
125
+ type: 'session-start' | 'context';
126
+ sessionId?: string;
127
+ prompt?: string;
128
+ }): Promise<string>;
129
+ /**
130
+ * Get recent sessions index (for session-start)
131
+ * Shows sessions grouped by clusters with progressive disclosure
132
+ */
133
+ private getRecentSessionsIndex;
134
+ /**
135
+ * Get intent-matched sessions index (for context with prompt)
136
+ * Shows sessions grouped by clusters and ranked by relevance
137
+ */
138
+ private getIntentMatchedIndex;
139
+ /**
140
+ * Legacy method for backward compatibility
141
+ * @deprecated Use getProgressiveIndex({ type, sessionId, prompt }) instead
142
+ */
143
+ getProgressiveIndexLegacy(sessionId?: string): Promise<string>;
144
+ /**
145
+ * Parse workflow session files
146
+ */
147
+ private parseWorkflowSessions;
148
+ /**
149
+ * Update metadata cache for all sessions
150
+ */
151
+ refreshMetadataCache(): Promise<number>;
152
+ }
153
+ //# sourceMappingURL=session-clustering-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-clustering-service.d.ts","sourceRoot":"","sources":["../../src/core/session-clustering-service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAkD,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAkB9G,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,aAAa,CAAC;IACzC,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,wBAAwB;IACnC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,WAAW,CAAS;gBAEhB,WAAW,EAAE,MAAM;IAM/B;;OAEG;IACG,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAoDnF;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,GAAG,UAAU,GAAG,aAAa,GAAG,QAAQ,GAAG,oBAAoB;IA4ChH;;OAEG;IACH,OAAO,CAAC,eAAe;IA+DvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAyB3B;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,QAAQ,EAAE,oBAAoB,GAAG,MAAM;IAgB1F;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAclC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAYnC;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAmBhC;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAYjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4C3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0BxB;;;OAGG;IACH,OAAO,CAAC,8BAA8B;IA4BtC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAe/B;;;OAGG;IACG,WAAW,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAoIzE;;;;OAIG;IACG,mBAAmB,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAsG5F;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA2C/B;;OAEG;IACH,OAAO,CAAC,cAAc;IAkBtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAuB3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;;;;;OAMG;IACG,mBAAmB,CAAC,OAAO,EAAE;QACjC,IAAI,EAAE,eAAe,GAAG,SAAS,CAAC;QAClC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBnB;;;OAGG;YACW,sBAAsB;IAmGpC;;;OAGG;YACW,qBAAqB;IA2InC;;;OAGG;IACG,yBAAyB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyFpE;;OAEG;YACW,qBAAqB;IA4CnC;;OAEG;IACG,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;CAS9C"}