@guidemode/session-processing 0.1.43

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 (1006) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +108 -0
  3. package/dist/cjs/ai-models/base/index.d.ts +4 -0
  4. package/dist/cjs/ai-models/base/index.d.ts.map +1 -0
  5. package/dist/cjs/ai-models/base/index.js +8 -0
  6. package/dist/cjs/ai-models/base/index.js.map +1 -0
  7. package/dist/cjs/ai-models/base/model-adapter.d.ts +47 -0
  8. package/dist/cjs/ai-models/base/model-adapter.d.ts.map +1 -0
  9. package/dist/cjs/ai-models/base/model-adapter.js +79 -0
  10. package/dist/cjs/ai-models/base/model-adapter.js.map +1 -0
  11. package/dist/cjs/ai-models/base/model-task.d.ts +35 -0
  12. package/dist/cjs/ai-models/base/model-task.d.ts.map +1 -0
  13. package/dist/cjs/ai-models/base/model-task.js +40 -0
  14. package/dist/cjs/ai-models/base/model-task.js.map +1 -0
  15. package/dist/cjs/ai-models/base/types.d.ts +78 -0
  16. package/dist/cjs/ai-models/base/types.d.ts.map +1 -0
  17. package/dist/cjs/ai-models/base/types.js +3 -0
  18. package/dist/cjs/ai-models/base/types.js.map +1 -0
  19. package/dist/cjs/ai-models/index.d.ts +9 -0
  20. package/dist/cjs/ai-models/index.d.ts.map +1 -0
  21. package/dist/cjs/ai-models/index.js +38 -0
  22. package/dist/cjs/ai-models/index.js.map +1 -0
  23. package/dist/cjs/ai-models/providers/claude/client.d.ts +122 -0
  24. package/dist/cjs/ai-models/providers/claude/client.d.ts.map +1 -0
  25. package/dist/cjs/ai-models/providers/claude/client.js +140 -0
  26. package/dist/cjs/ai-models/providers/claude/client.js.map +1 -0
  27. package/dist/cjs/ai-models/providers/claude/index.d.ts +38 -0
  28. package/dist/cjs/ai-models/providers/claude/index.d.ts.map +1 -0
  29. package/dist/cjs/ai-models/providers/claude/index.js +144 -0
  30. package/dist/cjs/ai-models/providers/claude/index.js.map +1 -0
  31. package/dist/cjs/ai-models/providers/claude/tasks/index.d.ts +5 -0
  32. package/dist/cjs/ai-models/providers/claude/tasks/index.d.ts.map +1 -0
  33. package/dist/cjs/ai-models/providers/claude/tasks/index.js +21 -0
  34. package/dist/cjs/ai-models/providers/claude/tasks/index.js.map +1 -0
  35. package/dist/cjs/ai-models/providers/claude/tasks/intent-extraction.d.ts +27 -0
  36. package/dist/cjs/ai-models/providers/claude/tasks/intent-extraction.d.ts.map +1 -0
  37. package/dist/cjs/ai-models/providers/claude/tasks/intent-extraction.js +145 -0
  38. package/dist/cjs/ai-models/providers/claude/tasks/intent-extraction.js.map +1 -0
  39. package/dist/cjs/ai-models/providers/claude/tasks/quality-assessment.d.ts +31 -0
  40. package/dist/cjs/ai-models/providers/claude/tasks/quality-assessment.d.ts.map +1 -0
  41. package/dist/cjs/ai-models/providers/claude/tasks/quality-assessment.js +160 -0
  42. package/dist/cjs/ai-models/providers/claude/tasks/quality-assessment.js.map +1 -0
  43. package/dist/cjs/ai-models/providers/claude/tasks/session-phase-analysis.d.ts +67 -0
  44. package/dist/cjs/ai-models/providers/claude/tasks/session-phase-analysis.d.ts.map +1 -0
  45. package/dist/cjs/ai-models/providers/claude/tasks/session-phase-analysis.js +279 -0
  46. package/dist/cjs/ai-models/providers/claude/tasks/session-phase-analysis.js.map +1 -0
  47. package/dist/cjs/ai-models/providers/claude/tasks/session-summary.d.ts +26 -0
  48. package/dist/cjs/ai-models/providers/claude/tasks/session-summary.d.ts.map +1 -0
  49. package/dist/cjs/ai-models/providers/claude/tasks/session-summary.js +178 -0
  50. package/dist/cjs/ai-models/providers/claude/tasks/session-summary.js.map +1 -0
  51. package/dist/cjs/ai-models/providers/gemini/client.d.ts +127 -0
  52. package/dist/cjs/ai-models/providers/gemini/client.d.ts.map +1 -0
  53. package/dist/cjs/ai-models/providers/gemini/client.js +211 -0
  54. package/dist/cjs/ai-models/providers/gemini/client.js.map +1 -0
  55. package/dist/cjs/ai-models/providers/gemini/index.d.ts +38 -0
  56. package/dist/cjs/ai-models/providers/gemini/index.d.ts.map +1 -0
  57. package/dist/cjs/ai-models/providers/gemini/index.js +144 -0
  58. package/dist/cjs/ai-models/providers/gemini/index.js.map +1 -0
  59. package/dist/cjs/ai-models/providers/gemini/tasks/index.d.ts +2 -0
  60. package/dist/cjs/ai-models/providers/gemini/tasks/index.d.ts.map +1 -0
  61. package/dist/cjs/ai-models/providers/gemini/tasks/index.js +11 -0
  62. package/dist/cjs/ai-models/providers/gemini/tasks/index.js.map +1 -0
  63. package/dist/cjs/ai-models/providers/index.d.ts +5 -0
  64. package/dist/cjs/ai-models/providers/index.d.ts.map +1 -0
  65. package/dist/cjs/ai-models/providers/index.js +26 -0
  66. package/dist/cjs/ai-models/providers/index.js.map +1 -0
  67. package/dist/cjs/ai-models/providers/openai/client.d.ts +120 -0
  68. package/dist/cjs/ai-models/providers/openai/client.d.ts.map +1 -0
  69. package/dist/cjs/ai-models/providers/openai/client.js +195 -0
  70. package/dist/cjs/ai-models/providers/openai/client.js.map +1 -0
  71. package/dist/cjs/ai-models/providers/openai/index.d.ts +38 -0
  72. package/dist/cjs/ai-models/providers/openai/index.d.ts.map +1 -0
  73. package/dist/cjs/ai-models/providers/openai/index.js +144 -0
  74. package/dist/cjs/ai-models/providers/openai/index.js.map +1 -0
  75. package/dist/cjs/ai-models/providers/openai/tasks/index.d.ts +5 -0
  76. package/dist/cjs/ai-models/providers/openai/tasks/index.d.ts.map +1 -0
  77. package/dist/cjs/ai-models/providers/openai/tasks/index.js +6 -0
  78. package/dist/cjs/ai-models/providers/openai/tasks/index.js.map +1 -0
  79. package/dist/cjs/index.d.ts +7 -0
  80. package/dist/cjs/index.d.ts.map +1 -0
  81. package/dist/cjs/index.js +49 -0
  82. package/dist/cjs/index.js.map +1 -0
  83. package/dist/cjs/package.json +1 -0
  84. package/dist/cjs/parsers/base/BaseParser.d.ts +67 -0
  85. package/dist/cjs/parsers/base/BaseParser.d.ts.map +1 -0
  86. package/dist/cjs/parsers/base/BaseParser.js +205 -0
  87. package/dist/cjs/parsers/base/BaseParser.js.map +1 -0
  88. package/dist/cjs/parsers/base/index.d.ts +3 -0
  89. package/dist/cjs/parsers/base/index.d.ts.map +1 -0
  90. package/dist/cjs/parsers/base/index.js +6 -0
  91. package/dist/cjs/parsers/base/index.js.map +1 -0
  92. package/dist/cjs/parsers/base/types.d.ts +112 -0
  93. package/dist/cjs/parsers/base/types.d.ts.map +1 -0
  94. package/dist/cjs/parsers/base/types.js +9 -0
  95. package/dist/cjs/parsers/base/types.js.map +1 -0
  96. package/dist/cjs/parsers/canonical/index.d.ts +8 -0
  97. package/dist/cjs/parsers/canonical/index.d.ts.map +1 -0
  98. package/dist/cjs/parsers/canonical/index.js +11 -0
  99. package/dist/cjs/parsers/canonical/index.js.map +1 -0
  100. package/dist/cjs/parsers/canonical/parser.d.ts +60 -0
  101. package/dist/cjs/parsers/canonical/parser.d.ts.map +1 -0
  102. package/dist/cjs/parsers/canonical/parser.js +423 -0
  103. package/dist/cjs/parsers/canonical/parser.js.map +1 -0
  104. package/dist/cjs/parsers/canonical/types.d.ts +99 -0
  105. package/dist/cjs/parsers/canonical/types.d.ts.map +1 -0
  106. package/dist/cjs/parsers/canonical/types.js +9 -0
  107. package/dist/cjs/parsers/canonical/types.js.map +1 -0
  108. package/dist/cjs/parsers/index.d.ts +13 -0
  109. package/dist/cjs/parsers/index.d.ts.map +1 -0
  110. package/dist/cjs/parsers/index.js +21 -0
  111. package/dist/cjs/parsers/index.js.map +1 -0
  112. package/dist/cjs/parsers/registry.d.ts +34 -0
  113. package/dist/cjs/parsers/registry.d.ts.map +1 -0
  114. package/dist/cjs/parsers/registry.js +89 -0
  115. package/dist/cjs/parsers/registry.js.map +1 -0
  116. package/dist/cjs/processors/base/git-diff-processor.d.ts +38 -0
  117. package/dist/cjs/processors/base/git-diff-processor.d.ts.map +1 -0
  118. package/dist/cjs/processors/base/git-diff-processor.js +131 -0
  119. package/dist/cjs/processors/base/git-diff-processor.js.map +1 -0
  120. package/dist/cjs/processors/base/index.d.ts +5 -0
  121. package/dist/cjs/processors/base/index.d.ts.map +1 -0
  122. package/dist/cjs/processors/base/index.js +10 -0
  123. package/dist/cjs/processors/base/index.js.map +1 -0
  124. package/dist/cjs/processors/base/metric-processor.d.ts +42 -0
  125. package/dist/cjs/processors/base/metric-processor.d.ts.map +1 -0
  126. package/dist/cjs/processors/base/metric-processor.js +83 -0
  127. package/dist/cjs/processors/base/metric-processor.js.map +1 -0
  128. package/dist/cjs/processors/base/provider-processor.d.ts +45 -0
  129. package/dist/cjs/processors/base/provider-processor.d.ts.map +1 -0
  130. package/dist/cjs/processors/base/provider-processor.js +109 -0
  131. package/dist/cjs/processors/base/provider-processor.js.map +1 -0
  132. package/dist/cjs/processors/base/types.d.ts +2 -0
  133. package/dist/cjs/processors/base/types.d.ts.map +1 -0
  134. package/dist/cjs/processors/base/types.js +3 -0
  135. package/dist/cjs/processors/base/types.js.map +1 -0
  136. package/dist/cjs/processors/canonical/index.d.ts +24 -0
  137. package/dist/cjs/processors/canonical/index.d.ts.map +1 -0
  138. package/dist/cjs/processors/canonical/index.js +49 -0
  139. package/dist/cjs/processors/canonical/index.js.map +1 -0
  140. package/dist/cjs/processors/canonical/metrics/context.d.ts +38 -0
  141. package/dist/cjs/processors/canonical/metrics/context.d.ts.map +1 -0
  142. package/dist/cjs/processors/canonical/metrics/context.js +160 -0
  143. package/dist/cjs/processors/canonical/metrics/context.js.map +1 -0
  144. package/dist/cjs/processors/canonical/metrics/engagement.d.ts +32 -0
  145. package/dist/cjs/processors/canonical/metrics/engagement.d.ts.map +1 -0
  146. package/dist/cjs/processors/canonical/metrics/engagement.js +121 -0
  147. package/dist/cjs/processors/canonical/metrics/engagement.js.map +1 -0
  148. package/dist/cjs/processors/canonical/metrics/error.d.ts +48 -0
  149. package/dist/cjs/processors/canonical/metrics/error.d.ts.map +1 -0
  150. package/dist/cjs/processors/canonical/metrics/error.js +206 -0
  151. package/dist/cjs/processors/canonical/metrics/error.js.map +1 -0
  152. package/dist/cjs/processors/canonical/metrics/performance.d.ts +24 -0
  153. package/dist/cjs/processors/canonical/metrics/performance.d.ts.map +1 -0
  154. package/dist/cjs/processors/canonical/metrics/performance.js +74 -0
  155. package/dist/cjs/processors/canonical/metrics/performance.js.map +1 -0
  156. package/dist/cjs/processors/canonical/metrics/quality.d.ts +52 -0
  157. package/dist/cjs/processors/canonical/metrics/quality.d.ts.map +1 -0
  158. package/dist/cjs/processors/canonical/metrics/quality.js +283 -0
  159. package/dist/cjs/processors/canonical/metrics/quality.js.map +1 -0
  160. package/dist/cjs/processors/canonical/metrics/usage.d.ts +64 -0
  161. package/dist/cjs/processors/canonical/metrics/usage.d.ts.map +1 -0
  162. package/dist/cjs/processors/canonical/metrics/usage.js +327 -0
  163. package/dist/cjs/processors/canonical/metrics/usage.js.map +1 -0
  164. package/dist/cjs/processors/index.d.ts +10 -0
  165. package/dist/cjs/processors/index.d.ts.map +1 -0
  166. package/dist/cjs/processors/index.js +46 -0
  167. package/dist/cjs/processors/index.js.map +1 -0
  168. package/dist/cjs/processors/providers/claude-code/index.d.ts +39 -0
  169. package/dist/cjs/processors/providers/claude-code/index.d.ts.map +1 -0
  170. package/dist/cjs/processors/providers/claude-code/index.js +199 -0
  171. package/dist/cjs/processors/providers/claude-code/index.js.map +1 -0
  172. package/dist/cjs/processors/providers/codex/index.d.ts +11 -0
  173. package/dist/cjs/processors/providers/codex/index.d.ts.map +1 -0
  174. package/dist/cjs/processors/providers/codex/index.js +34 -0
  175. package/dist/cjs/processors/providers/codex/index.js.map +1 -0
  176. package/dist/cjs/processors/providers/cursor/index.d.ts +16 -0
  177. package/dist/cjs/processors/providers/cursor/index.d.ts.map +1 -0
  178. package/dist/cjs/processors/providers/cursor/index.js +95 -0
  179. package/dist/cjs/processors/providers/cursor/index.js.map +1 -0
  180. package/dist/cjs/processors/providers/gemini/index.d.ts +16 -0
  181. package/dist/cjs/processors/providers/gemini/index.d.ts.map +1 -0
  182. package/dist/cjs/processors/providers/gemini/index.js +111 -0
  183. package/dist/cjs/processors/providers/gemini/index.js.map +1 -0
  184. package/dist/cjs/processors/providers/github-copilot/index.d.ts +11 -0
  185. package/dist/cjs/processors/providers/github-copilot/index.d.ts.map +1 -0
  186. package/dist/cjs/processors/providers/github-copilot/index.js +34 -0
  187. package/dist/cjs/processors/providers/github-copilot/index.js.map +1 -0
  188. package/dist/cjs/processors/providers/opencode/index.d.ts +11 -0
  189. package/dist/cjs/processors/providers/opencode/index.d.ts.map +1 -0
  190. package/dist/cjs/processors/providers/opencode/index.js +34 -0
  191. package/dist/cjs/processors/providers/opencode/index.js.map +1 -0
  192. package/dist/cjs/processors/registry.d.ts +95 -0
  193. package/dist/cjs/processors/registry.d.ts.map +1 -0
  194. package/dist/cjs/processors/registry.js +214 -0
  195. package/dist/cjs/processors/registry.js.map +1 -0
  196. package/dist/cjs/ui/components/DateFilter.d.ts +19 -0
  197. package/dist/cjs/ui/components/DateFilter.d.ts.map +1 -0
  198. package/dist/cjs/ui/components/DateFilter.js +81 -0
  199. package/dist/cjs/ui/components/DateFilter.js.map +1 -0
  200. package/dist/cjs/ui/components/QuickRatingPopover.d.ts +17 -0
  201. package/dist/cjs/ui/components/QuickRatingPopover.d.ts.map +1 -0
  202. package/dist/cjs/ui/components/QuickRatingPopover.js +58 -0
  203. package/dist/cjs/ui/components/QuickRatingPopover.js.map +1 -0
  204. package/dist/cjs/ui/components/RatingBadge.d.ts +17 -0
  205. package/dist/cjs/ui/components/RatingBadge.d.ts.map +1 -0
  206. package/dist/cjs/ui/components/RatingBadge.js +122 -0
  207. package/dist/cjs/ui/components/RatingBadge.js.map +1 -0
  208. package/dist/cjs/ui/components/ScrollToTopButton.d.ts +17 -0
  209. package/dist/cjs/ui/components/ScrollToTopButton.d.ts.map +1 -0
  210. package/dist/cjs/ui/components/ScrollToTopButton.js +63 -0
  211. package/dist/cjs/ui/components/ScrollToTopButton.js.map +1 -0
  212. package/dist/cjs/ui/components/SessionCard.d.ts +60 -0
  213. package/dist/cjs/ui/components/SessionCard.d.ts.map +1 -0
  214. package/dist/cjs/ui/components/SessionCard.js +252 -0
  215. package/dist/cjs/ui/components/SessionCard.js.map +1 -0
  216. package/dist/cjs/ui/components/SessionDetailHeader.d.ts +57 -0
  217. package/dist/cjs/ui/components/SessionDetailHeader.d.ts.map +1 -0
  218. package/dist/cjs/ui/components/SessionDetailHeader.js +100 -0
  219. package/dist/cjs/ui/components/SessionDetailHeader.js.map +1 -0
  220. package/dist/cjs/ui/components/SessionTodosTab.d.ts +9 -0
  221. package/dist/cjs/ui/components/SessionTodosTab.d.ts.map +1 -0
  222. package/dist/cjs/ui/components/SessionTodosTab.js +69 -0
  223. package/dist/cjs/ui/components/SessionTodosTab.js.map +1 -0
  224. package/dist/cjs/ui/components/TokenUsageChart.d.ts +20 -0
  225. package/dist/cjs/ui/components/TokenUsageChart.d.ts.map +1 -0
  226. package/dist/cjs/ui/components/TokenUsageChart.js +126 -0
  227. package/dist/cjs/ui/components/TokenUsageChart.js.map +1 -0
  228. package/dist/cjs/ui/components/assessment/AssessmentModal.d.ts +3 -0
  229. package/dist/cjs/ui/components/assessment/AssessmentModal.d.ts.map +1 -0
  230. package/dist/cjs/ui/components/assessment/AssessmentModal.js +144 -0
  231. package/dist/cjs/ui/components/assessment/AssessmentModal.js.map +1 -0
  232. package/dist/cjs/ui/components/assessment/ChoiceResponse.d.ts +9 -0
  233. package/dist/cjs/ui/components/assessment/ChoiceResponse.d.ts.map +1 -0
  234. package/dist/cjs/ui/components/assessment/ChoiceResponse.js +30 -0
  235. package/dist/cjs/ui/components/assessment/ChoiceResponse.js.map +1 -0
  236. package/dist/cjs/ui/components/assessment/LikertScale.d.ts +3 -0
  237. package/dist/cjs/ui/components/assessment/LikertScale.d.ts.map +1 -0
  238. package/dist/cjs/ui/components/assessment/LikertScale.js +76 -0
  239. package/dist/cjs/ui/components/assessment/LikertScale.js.map +1 -0
  240. package/dist/cjs/ui/components/assessment/ProgressBar.d.ts +3 -0
  241. package/dist/cjs/ui/components/assessment/ProgressBar.d.ts.map +1 -0
  242. package/dist/cjs/ui/components/assessment/ProgressBar.js +9 -0
  243. package/dist/cjs/ui/components/assessment/ProgressBar.js.map +1 -0
  244. package/dist/cjs/ui/components/assessment/QuestionCard.d.ts +3 -0
  245. package/dist/cjs/ui/components/assessment/QuestionCard.d.ts.map +1 -0
  246. package/dist/cjs/ui/components/assessment/QuestionCard.js +127 -0
  247. package/dist/cjs/ui/components/assessment/QuestionCard.js.map +1 -0
  248. package/dist/cjs/ui/components/assessment/TextResponse.d.ts +3 -0
  249. package/dist/cjs/ui/components/assessment/TextResponse.d.ts.map +1 -0
  250. package/dist/cjs/ui/components/assessment/TextResponse.js +8 -0
  251. package/dist/cjs/ui/components/assessment/TextResponse.js.map +1 -0
  252. package/dist/cjs/ui/components/assessment/VersionSelector.d.ts +7 -0
  253. package/dist/cjs/ui/components/assessment/VersionSelector.d.ts.map +1 -0
  254. package/dist/cjs/ui/components/assessment/VersionSelector.js +71 -0
  255. package/dist/cjs/ui/components/assessment/VersionSelector.js.map +1 -0
  256. package/dist/cjs/ui/components/assessment/index.d.ts +9 -0
  257. package/dist/cjs/ui/components/assessment/index.d.ts.map +1 -0
  258. package/dist/cjs/ui/components/assessment/index.js +19 -0
  259. package/dist/cjs/ui/components/assessment/index.js.map +1 -0
  260. package/dist/cjs/ui/components/assessment/types.d.ts +58 -0
  261. package/dist/cjs/ui/components/assessment/types.d.ts.map +1 -0
  262. package/dist/cjs/ui/components/assessment/types.js +3 -0
  263. package/dist/cjs/ui/components/assessment/types.js.map +1 -0
  264. package/dist/cjs/ui/components/index.d.ts +39 -0
  265. package/dist/cjs/ui/components/index.d.ts.map +1 -0
  266. package/dist/cjs/ui/components/index.js +90 -0
  267. package/dist/cjs/ui/components/index.js.map +1 -0
  268. package/dist/cjs/ui/components/metrics/AssessmentSection.d.ts +27 -0
  269. package/dist/cjs/ui/components/metrics/AssessmentSection.d.ts.map +1 -0
  270. package/dist/cjs/ui/components/metrics/AssessmentSection.js +79 -0
  271. package/dist/cjs/ui/components/metrics/AssessmentSection.js.map +1 -0
  272. package/dist/cjs/ui/components/metrics/MetricCard.d.ts +20 -0
  273. package/dist/cjs/ui/components/metrics/MetricCard.d.ts.map +1 -0
  274. package/dist/cjs/ui/components/metrics/MetricCard.js +80 -0
  275. package/dist/cjs/ui/components/metrics/MetricCard.js.map +1 -0
  276. package/dist/cjs/ui/components/metrics/MetricSection.d.ts +12 -0
  277. package/dist/cjs/ui/components/metrics/MetricSection.d.ts.map +1 -0
  278. package/dist/cjs/ui/components/metrics/MetricSection.js +8 -0
  279. package/dist/cjs/ui/components/metrics/MetricSection.js.map +1 -0
  280. package/dist/cjs/ui/components/metrics/MetricsOverview.d.ts +89 -0
  281. package/dist/cjs/ui/components/metrics/MetricsOverview.d.ts.map +1 -0
  282. package/dist/cjs/ui/components/metrics/MetricsOverview.js +29 -0
  283. package/dist/cjs/ui/components/metrics/MetricsOverview.js.map +1 -0
  284. package/dist/cjs/ui/components/metrics/metricThresholds.d.ts +40 -0
  285. package/dist/cjs/ui/components/metrics/metricThresholds.d.ts.map +1 -0
  286. package/dist/cjs/ui/components/metrics/metricThresholds.js +208 -0
  287. package/dist/cjs/ui/components/metrics/metricThresholds.js.map +1 -0
  288. package/dist/cjs/ui/components/metrics/sections/AIAssessmentSection.d.ts +12 -0
  289. package/dist/cjs/ui/components/metrics/sections/AIAssessmentSection.d.ts.map +1 -0
  290. package/dist/cjs/ui/components/metrics/sections/AIAssessmentSection.js +31 -0
  291. package/dist/cjs/ui/components/metrics/sections/AIAssessmentSection.js.map +1 -0
  292. package/dist/cjs/ui/components/metrics/sections/ContextMetricsSection.d.ts +10 -0
  293. package/dist/cjs/ui/components/metrics/sections/ContextMetricsSection.d.ts.map +1 -0
  294. package/dist/cjs/ui/components/metrics/sections/ContextMetricsSection.js +21 -0
  295. package/dist/cjs/ui/components/metrics/sections/ContextMetricsSection.js.map +1 -0
  296. package/dist/cjs/ui/components/metrics/sections/EngagementMetricsSection.d.ts +10 -0
  297. package/dist/cjs/ui/components/metrics/sections/EngagementMetricsSection.d.ts.map +1 -0
  298. package/dist/cjs/ui/components/metrics/sections/EngagementMetricsSection.js +21 -0
  299. package/dist/cjs/ui/components/metrics/sections/EngagementMetricsSection.js.map +1 -0
  300. package/dist/cjs/ui/components/metrics/sections/ErrorMetricsSection.d.ts +10 -0
  301. package/dist/cjs/ui/components/metrics/sections/ErrorMetricsSection.d.ts.map +1 -0
  302. package/dist/cjs/ui/components/metrics/sections/ErrorMetricsSection.js +17 -0
  303. package/dist/cjs/ui/components/metrics/sections/ErrorMetricsSection.js.map +1 -0
  304. package/dist/cjs/ui/components/metrics/sections/GitDiffMetricsSection.d.ts +10 -0
  305. package/dist/cjs/ui/components/metrics/sections/GitDiffMetricsSection.d.ts.map +1 -0
  306. package/dist/cjs/ui/components/metrics/sections/GitDiffMetricsSection.js +22 -0
  307. package/dist/cjs/ui/components/metrics/sections/GitDiffMetricsSection.js.map +1 -0
  308. package/dist/cjs/ui/components/metrics/sections/PerformanceMetricsSection.d.ts +10 -0
  309. package/dist/cjs/ui/components/metrics/sections/PerformanceMetricsSection.d.ts.map +1 -0
  310. package/dist/cjs/ui/components/metrics/sections/PerformanceMetricsSection.js +21 -0
  311. package/dist/cjs/ui/components/metrics/sections/PerformanceMetricsSection.js.map +1 -0
  312. package/dist/cjs/ui/components/metrics/sections/QualityMetricsSection.d.ts +10 -0
  313. package/dist/cjs/ui/components/metrics/sections/QualityMetricsSection.d.ts.map +1 -0
  314. package/dist/cjs/ui/components/metrics/sections/QualityMetricsSection.js +26 -0
  315. package/dist/cjs/ui/components/metrics/sections/QualityMetricsSection.js.map +1 -0
  316. package/dist/cjs/ui/components/metrics/sections/UsageMetricsSection.d.ts +10 -0
  317. package/dist/cjs/ui/components/metrics/sections/UsageMetricsSection.d.ts.map +1 -0
  318. package/dist/cjs/ui/components/metrics/sections/UsageMetricsSection.js +17 -0
  319. package/dist/cjs/ui/components/metrics/sections/UsageMetricsSection.js.map +1 -0
  320. package/dist/cjs/ui/components/phase/PhaseBlock.d.ts +19 -0
  321. package/dist/cjs/ui/components/phase/PhaseBlock.d.ts.map +1 -0
  322. package/dist/cjs/ui/components/phase/PhaseBlock.js +16 -0
  323. package/dist/cjs/ui/components/phase/PhaseBlock.js.map +1 -0
  324. package/dist/cjs/ui/components/phase/PhaseHeader.d.ts +10 -0
  325. package/dist/cjs/ui/components/phase/PhaseHeader.d.ts.map +1 -0
  326. package/dist/cjs/ui/components/phase/PhaseHeader.js +15 -0
  327. package/dist/cjs/ui/components/phase/PhaseHeader.js.map +1 -0
  328. package/dist/cjs/ui/components/phase/PhaseIcon.d.ts +25 -0
  329. package/dist/cjs/ui/components/phase/PhaseIcon.d.ts.map +1 -0
  330. package/dist/cjs/ui/components/phase/PhaseIcon.js +77 -0
  331. package/dist/cjs/ui/components/phase/PhaseIcon.js.map +1 -0
  332. package/dist/cjs/ui/components/phase/PhaseStats.d.ts +13 -0
  333. package/dist/cjs/ui/components/phase/PhaseStats.d.ts.map +1 -0
  334. package/dist/cjs/ui/components/phase/PhaseStats.js +27 -0
  335. package/dist/cjs/ui/components/phase/PhaseStats.js.map +1 -0
  336. package/dist/cjs/ui/components/phase/PhaseSummary.d.ts +9 -0
  337. package/dist/cjs/ui/components/phase/PhaseSummary.d.ts.map +1 -0
  338. package/dist/cjs/ui/components/phase/PhaseSummary.js +8 -0
  339. package/dist/cjs/ui/components/phase/PhaseSummary.js.map +1 -0
  340. package/dist/cjs/ui/components/phase/PhaseTimeline.d.ts +17 -0
  341. package/dist/cjs/ui/components/phase/PhaseTimeline.d.ts.map +1 -0
  342. package/dist/cjs/ui/components/phase/PhaseTimeline.js +25 -0
  343. package/dist/cjs/ui/components/phase/PhaseTimeline.js.map +1 -0
  344. package/dist/cjs/ui/components/phase/index.d.ts +12 -0
  345. package/dist/cjs/ui/components/phase/index.d.ts.map +1 -0
  346. package/dist/cjs/ui/components/phase/index.js +22 -0
  347. package/dist/cjs/ui/components/phase/index.js.map +1 -0
  348. package/dist/cjs/ui/components/timeline/ContentRenderer.d.ts +10 -0
  349. package/dist/cjs/ui/components/timeline/ContentRenderer.d.ts.map +1 -0
  350. package/dist/cjs/ui/components/timeline/ContentRenderer.js +76 -0
  351. package/dist/cjs/ui/components/timeline/ContentRenderer.js.map +1 -0
  352. package/dist/cjs/ui/components/timeline/DebugModal.d.ts +14 -0
  353. package/dist/cjs/ui/components/timeline/DebugModal.d.ts.map +1 -0
  354. package/dist/cjs/ui/components/timeline/DebugModal.js +30 -0
  355. package/dist/cjs/ui/components/timeline/DebugModal.js.map +1 -0
  356. package/dist/cjs/ui/components/timeline/MessageHeader.d.ts +11 -0
  357. package/dist/cjs/ui/components/timeline/MessageHeader.d.ts.map +1 -0
  358. package/dist/cjs/ui/components/timeline/MessageHeader.js +10 -0
  359. package/dist/cjs/ui/components/timeline/MessageHeader.js.map +1 -0
  360. package/dist/cjs/ui/components/timeline/TimelineGroup.d.ts +10 -0
  361. package/dist/cjs/ui/components/timeline/TimelineGroup.d.ts.map +1 -0
  362. package/dist/cjs/ui/components/timeline/TimelineGroup.js +10 -0
  363. package/dist/cjs/ui/components/timeline/TimelineGroup.js.map +1 -0
  364. package/dist/cjs/ui/components/timeline/TimelineMessage.d.ts +12 -0
  365. package/dist/cjs/ui/components/timeline/TimelineMessage.d.ts.map +1 -0
  366. package/dist/cjs/ui/components/timeline/TimelineMessage.js +26 -0
  367. package/dist/cjs/ui/components/timeline/TimelineMessage.js.map +1 -0
  368. package/dist/cjs/ui/components/timeline/VirtualizedMessageList.d.ts +36 -0
  369. package/dist/cjs/ui/components/timeline/VirtualizedMessageList.d.ts.map +1 -0
  370. package/dist/cjs/ui/components/timeline/VirtualizedMessageList.js +93 -0
  371. package/dist/cjs/ui/components/timeline/VirtualizedMessageList.js.map +1 -0
  372. package/dist/cjs/ui/components/timeline/blocks/CodeBlock.d.ts +10 -0
  373. package/dist/cjs/ui/components/timeline/blocks/CodeBlock.d.ts.map +1 -0
  374. package/dist/cjs/ui/components/timeline/blocks/CodeBlock.js +17 -0
  375. package/dist/cjs/ui/components/timeline/blocks/CodeBlock.js.map +1 -0
  376. package/dist/cjs/ui/components/timeline/blocks/ImageBlock.d.ts +10 -0
  377. package/dist/cjs/ui/components/timeline/blocks/ImageBlock.d.ts.map +1 -0
  378. package/dist/cjs/ui/components/timeline/blocks/ImageBlock.js +8 -0
  379. package/dist/cjs/ui/components/timeline/blocks/ImageBlock.js.map +1 -0
  380. package/dist/cjs/ui/components/timeline/blocks/JsonBlock.d.ts +10 -0
  381. package/dist/cjs/ui/components/timeline/blocks/JsonBlock.d.ts.map +1 -0
  382. package/dist/cjs/ui/components/timeline/blocks/JsonBlock.js +14 -0
  383. package/dist/cjs/ui/components/timeline/blocks/JsonBlock.js.map +1 -0
  384. package/dist/cjs/ui/components/timeline/blocks/SystemReminderBlock.d.ts +16 -0
  385. package/dist/cjs/ui/components/timeline/blocks/SystemReminderBlock.d.ts.map +1 -0
  386. package/dist/cjs/ui/components/timeline/blocks/SystemReminderBlock.js +93 -0
  387. package/dist/cjs/ui/components/timeline/blocks/SystemReminderBlock.js.map +1 -0
  388. package/dist/cjs/ui/components/timeline/blocks/TextBlock.d.ts +13 -0
  389. package/dist/cjs/ui/components/timeline/blocks/TextBlock.d.ts.map +1 -0
  390. package/dist/cjs/ui/components/timeline/blocks/TextBlock.js +191 -0
  391. package/dist/cjs/ui/components/timeline/blocks/TextBlock.js.map +1 -0
  392. package/dist/cjs/ui/components/timeline/blocks/ThinkingBlock.d.ts +15 -0
  393. package/dist/cjs/ui/components/timeline/blocks/ThinkingBlock.d.ts.map +1 -0
  394. package/dist/cjs/ui/components/timeline/blocks/ThinkingBlock.js +18 -0
  395. package/dist/cjs/ui/components/timeline/blocks/ThinkingBlock.js.map +1 -0
  396. package/dist/cjs/ui/components/timeline/blocks/ToolBlock.d.ts +13 -0
  397. package/dist/cjs/ui/components/timeline/blocks/ToolBlock.d.ts.map +1 -0
  398. package/dist/cjs/ui/components/timeline/blocks/ToolBlock.js +54 -0
  399. package/dist/cjs/ui/components/timeline/blocks/ToolBlock.js.map +1 -0
  400. package/dist/cjs/ui/components/timeline/blocks/ToolResultBlock.d.ts +12 -0
  401. package/dist/cjs/ui/components/timeline/blocks/ToolResultBlock.d.ts.map +1 -0
  402. package/dist/cjs/ui/components/timeline/blocks/ToolResultBlock.js +84 -0
  403. package/dist/cjs/ui/components/timeline/blocks/ToolResultBlock.js.map +1 -0
  404. package/dist/cjs/ui/components/timeline/blocks/index.d.ts +11 -0
  405. package/dist/cjs/ui/components/timeline/blocks/index.d.ts.map +1 -0
  406. package/dist/cjs/ui/components/timeline/blocks/index.js +21 -0
  407. package/dist/cjs/ui/components/timeline/blocks/index.js.map +1 -0
  408. package/dist/cjs/ui/components/timeline/index.d.ts +10 -0
  409. package/dist/cjs/ui/components/timeline/index.d.ts.map +1 -0
  410. package/dist/cjs/ui/components/timeline/index.js +32 -0
  411. package/dist/cjs/ui/components/timeline/index.js.map +1 -0
  412. package/dist/cjs/ui/index.d.ts +10 -0
  413. package/dist/cjs/ui/index.d.ts.map +1 -0
  414. package/dist/cjs/ui/index.js +37 -0
  415. package/dist/cjs/ui/index.js.map +1 -0
  416. package/dist/cjs/ui/utils/extractTokens.d.ts +94 -0
  417. package/dist/cjs/ui/utils/extractTokens.d.ts.map +1 -0
  418. package/dist/cjs/ui/utils/extractTokens.js +191 -0
  419. package/dist/cjs/ui/utils/extractTokens.js.map +1 -0
  420. package/dist/cjs/ui/utils/markdown.d.ts +65 -0
  421. package/dist/cjs/ui/utils/markdown.d.ts.map +1 -0
  422. package/dist/cjs/ui/utils/markdown.js +240 -0
  423. package/dist/cjs/ui/utils/markdown.js.map +1 -0
  424. package/dist/cjs/ui/utils/processors/BaseMessageProcessor.d.ts +133 -0
  425. package/dist/cjs/ui/utils/processors/BaseMessageProcessor.d.ts.map +1 -0
  426. package/dist/cjs/ui/utils/processors/BaseMessageProcessor.js +550 -0
  427. package/dist/cjs/ui/utils/processors/BaseMessageProcessor.js.map +1 -0
  428. package/dist/cjs/ui/utils/processors/CanonicalMessageProcessor.d.ts +81 -0
  429. package/dist/cjs/ui/utils/processors/CanonicalMessageProcessor.d.ts.map +1 -0
  430. package/dist/cjs/ui/utils/processors/CanonicalMessageProcessor.js +449 -0
  431. package/dist/cjs/ui/utils/processors/CanonicalMessageProcessor.js.map +1 -0
  432. package/dist/cjs/ui/utils/processors/GenericMessageProcessor.d.ts +46 -0
  433. package/dist/cjs/ui/utils/processors/GenericMessageProcessor.d.ts.map +1 -0
  434. package/dist/cjs/ui/utils/processors/GenericMessageProcessor.js +176 -0
  435. package/dist/cjs/ui/utils/processors/GenericMessageProcessor.js.map +1 -0
  436. package/dist/cjs/ui/utils/processors/ProcessorRegistry.d.ts +33 -0
  437. package/dist/cjs/ui/utils/processors/ProcessorRegistry.d.ts.map +1 -0
  438. package/dist/cjs/ui/utils/processors/ProcessorRegistry.js +72 -0
  439. package/dist/cjs/ui/utils/processors/ProcessorRegistry.js.map +1 -0
  440. package/dist/cjs/ui/utils/processors/index.d.ts +11 -0
  441. package/dist/cjs/ui/utils/processors/index.d.ts.map +1 -0
  442. package/dist/cjs/ui/utils/processors/index.js +18 -0
  443. package/dist/cjs/ui/utils/processors/index.js.map +1 -0
  444. package/dist/cjs/ui/utils/sessionTypes.d.ts +2 -0
  445. package/dist/cjs/ui/utils/sessionTypes.d.ts.map +1 -0
  446. package/dist/cjs/ui/utils/sessionTypes.js +4 -0
  447. package/dist/cjs/ui/utils/sessionTypes.js.map +1 -0
  448. package/dist/cjs/ui/utils/systemReminderParser.d.ts +40 -0
  449. package/dist/cjs/ui/utils/systemReminderParser.d.ts.map +1 -0
  450. package/dist/cjs/ui/utils/systemReminderParser.js +112 -0
  451. package/dist/cjs/ui/utils/systemReminderParser.js.map +1 -0
  452. package/dist/cjs/ui/utils/timelineTypes.d.ts +201 -0
  453. package/dist/cjs/ui/utils/timelineTypes.d.ts.map +1 -0
  454. package/dist/cjs/ui/utils/timelineTypes.js +44 -0
  455. package/dist/cjs/ui/utils/timelineTypes.js.map +1 -0
  456. package/dist/cjs/ui/utils/todos/extractTodosClaudeCode.d.ts +9 -0
  457. package/dist/cjs/ui/utils/todos/extractTodosClaudeCode.d.ts.map +1 -0
  458. package/dist/cjs/ui/utils/todos/extractTodosClaudeCode.js +43 -0
  459. package/dist/cjs/ui/utils/todos/extractTodosClaudeCode.js.map +1 -0
  460. package/dist/cjs/ui/utils/todos/extractTodosCodex.d.ts +29 -0
  461. package/dist/cjs/ui/utils/todos/extractTodosCodex.d.ts.map +1 -0
  462. package/dist/cjs/ui/utils/todos/extractTodosCodex.js +164 -0
  463. package/dist/cjs/ui/utils/todos/extractTodosCodex.js.map +1 -0
  464. package/dist/cjs/ui/utils/todos/index.d.ts +18 -0
  465. package/dist/cjs/ui/utils/todos/index.d.ts.map +1 -0
  466. package/dist/cjs/ui/utils/todos/index.js +54 -0
  467. package/dist/cjs/ui/utils/todos/index.js.map +1 -0
  468. package/dist/cjs/ui/utils/todos/todoUtils.d.ts +27 -0
  469. package/dist/cjs/ui/utils/todos/todoUtils.d.ts.map +1 -0
  470. package/dist/cjs/ui/utils/todos/todoUtils.js +124 -0
  471. package/dist/cjs/ui/utils/todos/todoUtils.js.map +1 -0
  472. package/dist/cjs/ui/utils/todos/types.d.ts +41 -0
  473. package/dist/cjs/ui/utils/todos/types.d.ts.map +1 -0
  474. package/dist/cjs/ui/utils/todos/types.js +6 -0
  475. package/dist/cjs/ui/utils/todos/types.js.map +1 -0
  476. package/dist/cjs/utils/git-url.d.ts +25 -0
  477. package/dist/cjs/utils/git-url.d.ts.map +1 -0
  478. package/dist/cjs/utils/git-url.js +60 -0
  479. package/dist/cjs/utils/git-url.js.map +1 -0
  480. package/dist/cjs/utils/index.d.ts +7 -0
  481. package/dist/cjs/utils/index.d.ts.map +1 -0
  482. package/dist/cjs/utils/index.js +23 -0
  483. package/dist/cjs/utils/index.js.map +1 -0
  484. package/dist/cjs/utils/rating.d.ts +61 -0
  485. package/dist/cjs/utils/rating.d.ts.map +1 -0
  486. package/dist/cjs/utils/rating.js +96 -0
  487. package/dist/cjs/utils/rating.js.map +1 -0
  488. package/dist/cjs/utils/safe-access.d.ts +43 -0
  489. package/dist/cjs/utils/safe-access.d.ts.map +1 -0
  490. package/dist/cjs/utils/safe-access.js +89 -0
  491. package/dist/cjs/utils/safe-access.js.map +1 -0
  492. package/dist/cjs/utils/user.d.ts +22 -0
  493. package/dist/cjs/utils/user.d.ts.map +1 -0
  494. package/dist/cjs/utils/user.js +39 -0
  495. package/dist/cjs/utils/user.js.map +1 -0
  496. package/dist/cjs/validation/index.d.ts +8 -0
  497. package/dist/cjs/validation/index.d.ts.map +1 -0
  498. package/dist/cjs/validation/index.js +21 -0
  499. package/dist/cjs/validation/index.js.map +1 -0
  500. package/dist/cjs/validation/validator.d.ts +48 -0
  501. package/dist/cjs/validation/validator.d.ts.map +1 -0
  502. package/dist/cjs/validation/validator.js +207 -0
  503. package/dist/cjs/validation/validator.js.map +1 -0
  504. package/dist/esm/ai-models/base/index.d.ts +4 -0
  505. package/dist/esm/ai-models/base/index.d.ts.map +1 -0
  506. package/dist/esm/ai-models/base/index.js +3 -0
  507. package/dist/esm/ai-models/base/index.js.map +1 -0
  508. package/dist/esm/ai-models/base/model-adapter.d.ts +47 -0
  509. package/dist/esm/ai-models/base/model-adapter.d.ts.map +1 -0
  510. package/dist/esm/ai-models/base/model-adapter.js +76 -0
  511. package/dist/esm/ai-models/base/model-adapter.js.map +1 -0
  512. package/dist/esm/ai-models/base/model-task.d.ts +35 -0
  513. package/dist/esm/ai-models/base/model-task.d.ts.map +1 -0
  514. package/dist/esm/ai-models/base/model-task.js +36 -0
  515. package/dist/esm/ai-models/base/model-task.js.map +1 -0
  516. package/dist/esm/ai-models/base/types.d.ts +78 -0
  517. package/dist/esm/ai-models/base/types.d.ts.map +1 -0
  518. package/dist/esm/ai-models/base/types.js +2 -0
  519. package/dist/esm/ai-models/base/types.js.map +1 -0
  520. package/dist/esm/ai-models/index.d.ts +9 -0
  521. package/dist/esm/ai-models/index.d.ts.map +1 -0
  522. package/dist/esm/ai-models/index.js +11 -0
  523. package/dist/esm/ai-models/index.js.map +1 -0
  524. package/dist/esm/ai-models/providers/claude/client.d.ts +122 -0
  525. package/dist/esm/ai-models/providers/claude/client.d.ts.map +1 -0
  526. package/dist/esm/ai-models/providers/claude/client.js +142 -0
  527. package/dist/esm/ai-models/providers/claude/client.js.map +1 -0
  528. package/dist/esm/ai-models/providers/claude/index.d.ts +38 -0
  529. package/dist/esm/ai-models/providers/claude/index.d.ts.map +1 -0
  530. package/dist/esm/ai-models/providers/claude/index.js +141 -0
  531. package/dist/esm/ai-models/providers/claude/index.js.map +1 -0
  532. package/dist/esm/ai-models/providers/claude/tasks/index.d.ts +5 -0
  533. package/dist/esm/ai-models/providers/claude/tasks/index.d.ts.map +1 -0
  534. package/dist/esm/ai-models/providers/claude/tasks/index.js +5 -0
  535. package/dist/esm/ai-models/providers/claude/tasks/index.js.map +1 -0
  536. package/dist/esm/ai-models/providers/claude/tasks/intent-extraction.d.ts +27 -0
  537. package/dist/esm/ai-models/providers/claude/tasks/intent-extraction.d.ts.map +1 -0
  538. package/dist/esm/ai-models/providers/claude/tasks/intent-extraction.js +138 -0
  539. package/dist/esm/ai-models/providers/claude/tasks/intent-extraction.js.map +1 -0
  540. package/dist/esm/ai-models/providers/claude/tasks/quality-assessment.d.ts +31 -0
  541. package/dist/esm/ai-models/providers/claude/tasks/quality-assessment.d.ts.map +1 -0
  542. package/dist/esm/ai-models/providers/claude/tasks/quality-assessment.js +153 -0
  543. package/dist/esm/ai-models/providers/claude/tasks/quality-assessment.js.map +1 -0
  544. package/dist/esm/ai-models/providers/claude/tasks/session-phase-analysis.d.ts +67 -0
  545. package/dist/esm/ai-models/providers/claude/tasks/session-phase-analysis.d.ts.map +1 -0
  546. package/dist/esm/ai-models/providers/claude/tasks/session-phase-analysis.js +272 -0
  547. package/dist/esm/ai-models/providers/claude/tasks/session-phase-analysis.js.map +1 -0
  548. package/dist/esm/ai-models/providers/claude/tasks/session-summary.d.ts +26 -0
  549. package/dist/esm/ai-models/providers/claude/tasks/session-summary.d.ts.map +1 -0
  550. package/dist/esm/ai-models/providers/claude/tasks/session-summary.js +171 -0
  551. package/dist/esm/ai-models/providers/claude/tasks/session-summary.js.map +1 -0
  552. package/dist/esm/ai-models/providers/gemini/client.d.ts +127 -0
  553. package/dist/esm/ai-models/providers/gemini/client.d.ts.map +1 -0
  554. package/dist/esm/ai-models/providers/gemini/client.js +213 -0
  555. package/dist/esm/ai-models/providers/gemini/client.js.map +1 -0
  556. package/dist/esm/ai-models/providers/gemini/index.d.ts +38 -0
  557. package/dist/esm/ai-models/providers/gemini/index.d.ts.map +1 -0
  558. package/dist/esm/ai-models/providers/gemini/index.js +141 -0
  559. package/dist/esm/ai-models/providers/gemini/index.js.map +1 -0
  560. package/dist/esm/ai-models/providers/gemini/tasks/index.d.ts +2 -0
  561. package/dist/esm/ai-models/providers/gemini/tasks/index.d.ts.map +1 -0
  562. package/dist/esm/ai-models/providers/gemini/tasks/index.js +4 -0
  563. package/dist/esm/ai-models/providers/gemini/tasks/index.js.map +1 -0
  564. package/dist/esm/ai-models/providers/index.d.ts +5 -0
  565. package/dist/esm/ai-models/providers/index.d.ts.map +1 -0
  566. package/dist/esm/ai-models/providers/index.js +6 -0
  567. package/dist/esm/ai-models/providers/index.js.map +1 -0
  568. package/dist/esm/ai-models/providers/openai/client.d.ts +120 -0
  569. package/dist/esm/ai-models/providers/openai/client.d.ts.map +1 -0
  570. package/dist/esm/ai-models/providers/openai/client.js +197 -0
  571. package/dist/esm/ai-models/providers/openai/client.js.map +1 -0
  572. package/dist/esm/ai-models/providers/openai/index.d.ts +38 -0
  573. package/dist/esm/ai-models/providers/openai/index.d.ts.map +1 -0
  574. package/dist/esm/ai-models/providers/openai/index.js +141 -0
  575. package/dist/esm/ai-models/providers/openai/index.js.map +1 -0
  576. package/dist/esm/ai-models/providers/openai/tasks/index.d.ts +5 -0
  577. package/dist/esm/ai-models/providers/openai/tasks/index.d.ts.map +1 -0
  578. package/dist/esm/ai-models/providers/openai/tasks/index.js +7 -0
  579. package/dist/esm/ai-models/providers/openai/tasks/index.js.map +1 -0
  580. package/dist/esm/index.d.ts +7 -0
  581. package/dist/esm/index.d.ts.map +1 -0
  582. package/dist/esm/index.js +15 -0
  583. package/dist/esm/index.js.map +1 -0
  584. package/dist/esm/parsers/base/BaseParser.d.ts +67 -0
  585. package/dist/esm/parsers/base/BaseParser.d.ts.map +1 -0
  586. package/dist/esm/parsers/base/BaseParser.js +201 -0
  587. package/dist/esm/parsers/base/BaseParser.js.map +1 -0
  588. package/dist/esm/parsers/base/index.d.ts +3 -0
  589. package/dist/esm/parsers/base/index.d.ts.map +1 -0
  590. package/dist/esm/parsers/base/index.js +2 -0
  591. package/dist/esm/parsers/base/index.js.map +1 -0
  592. package/dist/esm/parsers/base/types.d.ts +112 -0
  593. package/dist/esm/parsers/base/types.d.ts.map +1 -0
  594. package/dist/esm/parsers/base/types.js +8 -0
  595. package/dist/esm/parsers/base/types.js.map +1 -0
  596. package/dist/esm/parsers/canonical/index.d.ts +8 -0
  597. package/dist/esm/parsers/canonical/index.d.ts.map +1 -0
  598. package/dist/esm/parsers/canonical/index.js +7 -0
  599. package/dist/esm/parsers/canonical/index.js.map +1 -0
  600. package/dist/esm/parsers/canonical/parser.d.ts +60 -0
  601. package/dist/esm/parsers/canonical/parser.d.ts.map +1 -0
  602. package/dist/esm/parsers/canonical/parser.js +416 -0
  603. package/dist/esm/parsers/canonical/parser.js.map +1 -0
  604. package/dist/esm/parsers/canonical/types.d.ts +99 -0
  605. package/dist/esm/parsers/canonical/types.d.ts.map +1 -0
  606. package/dist/esm/parsers/canonical/types.js +8 -0
  607. package/dist/esm/parsers/canonical/types.js.map +1 -0
  608. package/dist/esm/parsers/index.d.ts +13 -0
  609. package/dist/esm/parsers/index.d.ts.map +1 -0
  610. package/dist/esm/parsers/index.js +14 -0
  611. package/dist/esm/parsers/index.js.map +1 -0
  612. package/dist/esm/parsers/registry.d.ts +34 -0
  613. package/dist/esm/parsers/registry.d.ts.map +1 -0
  614. package/dist/esm/parsers/registry.js +85 -0
  615. package/dist/esm/parsers/registry.js.map +1 -0
  616. package/dist/esm/processors/base/git-diff-processor.d.ts +38 -0
  617. package/dist/esm/processors/base/git-diff-processor.d.ts.map +1 -0
  618. package/dist/esm/processors/base/git-diff-processor.js +124 -0
  619. package/dist/esm/processors/base/git-diff-processor.js.map +1 -0
  620. package/dist/esm/processors/base/index.d.ts +5 -0
  621. package/dist/esm/processors/base/index.d.ts.map +1 -0
  622. package/dist/esm/processors/base/index.js +4 -0
  623. package/dist/esm/processors/base/index.js.map +1 -0
  624. package/dist/esm/processors/base/metric-processor.d.ts +42 -0
  625. package/dist/esm/processors/base/metric-processor.d.ts.map +1 -0
  626. package/dist/esm/processors/base/metric-processor.js +79 -0
  627. package/dist/esm/processors/base/metric-processor.js.map +1 -0
  628. package/dist/esm/processors/base/provider-processor.d.ts +45 -0
  629. package/dist/esm/processors/base/provider-processor.d.ts.map +1 -0
  630. package/dist/esm/processors/base/provider-processor.js +105 -0
  631. package/dist/esm/processors/base/provider-processor.js.map +1 -0
  632. package/dist/esm/processors/base/types.d.ts +2 -0
  633. package/dist/esm/processors/base/types.d.ts.map +1 -0
  634. package/dist/esm/processors/base/types.js +2 -0
  635. package/dist/esm/processors/base/types.js.map +1 -0
  636. package/dist/esm/processors/canonical/index.d.ts +24 -0
  637. package/dist/esm/processors/canonical/index.d.ts.map +1 -0
  638. package/dist/esm/processors/canonical/index.js +42 -0
  639. package/dist/esm/processors/canonical/index.js.map +1 -0
  640. package/dist/esm/processors/canonical/metrics/context.d.ts +38 -0
  641. package/dist/esm/processors/canonical/metrics/context.d.ts.map +1 -0
  642. package/dist/esm/processors/canonical/metrics/context.js +153 -0
  643. package/dist/esm/processors/canonical/metrics/context.js.map +1 -0
  644. package/dist/esm/processors/canonical/metrics/engagement.d.ts +32 -0
  645. package/dist/esm/processors/canonical/metrics/engagement.d.ts.map +1 -0
  646. package/dist/esm/processors/canonical/metrics/engagement.js +114 -0
  647. package/dist/esm/processors/canonical/metrics/engagement.js.map +1 -0
  648. package/dist/esm/processors/canonical/metrics/error.d.ts +48 -0
  649. package/dist/esm/processors/canonical/metrics/error.d.ts.map +1 -0
  650. package/dist/esm/processors/canonical/metrics/error.js +199 -0
  651. package/dist/esm/processors/canonical/metrics/error.js.map +1 -0
  652. package/dist/esm/processors/canonical/metrics/performance.d.ts +24 -0
  653. package/dist/esm/processors/canonical/metrics/performance.d.ts.map +1 -0
  654. package/dist/esm/processors/canonical/metrics/performance.js +67 -0
  655. package/dist/esm/processors/canonical/metrics/performance.js.map +1 -0
  656. package/dist/esm/processors/canonical/metrics/quality.d.ts +52 -0
  657. package/dist/esm/processors/canonical/metrics/quality.d.ts.map +1 -0
  658. package/dist/esm/processors/canonical/metrics/quality.js +276 -0
  659. package/dist/esm/processors/canonical/metrics/quality.js.map +1 -0
  660. package/dist/esm/processors/canonical/metrics/usage.d.ts +64 -0
  661. package/dist/esm/processors/canonical/metrics/usage.d.ts.map +1 -0
  662. package/dist/esm/processors/canonical/metrics/usage.js +320 -0
  663. package/dist/esm/processors/canonical/metrics/usage.js.map +1 -0
  664. package/dist/esm/processors/index.d.ts +10 -0
  665. package/dist/esm/processors/index.d.ts.map +1 -0
  666. package/dist/esm/processors/index.js +14 -0
  667. package/dist/esm/processors/index.js.map +1 -0
  668. package/dist/esm/processors/providers/claude-code/index.d.ts +39 -0
  669. package/dist/esm/processors/providers/claude-code/index.d.ts.map +1 -0
  670. package/dist/esm/processors/providers/claude-code/index.js +196 -0
  671. package/dist/esm/processors/providers/claude-code/index.js.map +1 -0
  672. package/dist/esm/processors/providers/codex/index.d.ts +11 -0
  673. package/dist/esm/processors/providers/codex/index.d.ts.map +1 -0
  674. package/dist/esm/processors/providers/codex/index.js +31 -0
  675. package/dist/esm/processors/providers/codex/index.js.map +1 -0
  676. package/dist/esm/processors/providers/cursor/index.d.ts +16 -0
  677. package/dist/esm/processors/providers/cursor/index.d.ts.map +1 -0
  678. package/dist/esm/processors/providers/cursor/index.js +92 -0
  679. package/dist/esm/processors/providers/cursor/index.js.map +1 -0
  680. package/dist/esm/processors/providers/gemini/index.d.ts +16 -0
  681. package/dist/esm/processors/providers/gemini/index.d.ts.map +1 -0
  682. package/dist/esm/processors/providers/gemini/index.js +108 -0
  683. package/dist/esm/processors/providers/gemini/index.js.map +1 -0
  684. package/dist/esm/processors/providers/github-copilot/index.d.ts +11 -0
  685. package/dist/esm/processors/providers/github-copilot/index.d.ts.map +1 -0
  686. package/dist/esm/processors/providers/github-copilot/index.js +31 -0
  687. package/dist/esm/processors/providers/github-copilot/index.js.map +1 -0
  688. package/dist/esm/processors/providers/opencode/index.d.ts +11 -0
  689. package/dist/esm/processors/providers/opencode/index.d.ts.map +1 -0
  690. package/dist/esm/processors/providers/opencode/index.js +31 -0
  691. package/dist/esm/processors/providers/opencode/index.js.map +1 -0
  692. package/dist/esm/processors/registry.d.ts +95 -0
  693. package/dist/esm/processors/registry.d.ts.map +1 -0
  694. package/dist/esm/processors/registry.js +210 -0
  695. package/dist/esm/processors/registry.js.map +1 -0
  696. package/dist/esm/ui/components/DateFilter.d.ts +19 -0
  697. package/dist/esm/ui/components/DateFilter.d.ts.map +1 -0
  698. package/dist/esm/ui/components/DateFilter.js +79 -0
  699. package/dist/esm/ui/components/DateFilter.js.map +1 -0
  700. package/dist/esm/ui/components/QuickRatingPopover.d.ts +17 -0
  701. package/dist/esm/ui/components/QuickRatingPopover.d.ts.map +1 -0
  702. package/dist/esm/ui/components/QuickRatingPopover.js +55 -0
  703. package/dist/esm/ui/components/QuickRatingPopover.js.map +1 -0
  704. package/dist/esm/ui/components/RatingBadge.d.ts +17 -0
  705. package/dist/esm/ui/components/RatingBadge.d.ts.map +1 -0
  706. package/dist/esm/ui/components/RatingBadge.js +119 -0
  707. package/dist/esm/ui/components/RatingBadge.js.map +1 -0
  708. package/dist/esm/ui/components/ScrollToTopButton.d.ts +17 -0
  709. package/dist/esm/ui/components/ScrollToTopButton.d.ts.map +1 -0
  710. package/dist/esm/ui/components/ScrollToTopButton.js +60 -0
  711. package/dist/esm/ui/components/ScrollToTopButton.js.map +1 -0
  712. package/dist/esm/ui/components/SessionCard.d.ts +60 -0
  713. package/dist/esm/ui/components/SessionCard.d.ts.map +1 -0
  714. package/dist/esm/ui/components/SessionCard.js +250 -0
  715. package/dist/esm/ui/components/SessionCard.js.map +1 -0
  716. package/dist/esm/ui/components/SessionDetailHeader.d.ts +57 -0
  717. package/dist/esm/ui/components/SessionDetailHeader.d.ts.map +1 -0
  718. package/dist/esm/ui/components/SessionDetailHeader.js +97 -0
  719. package/dist/esm/ui/components/SessionDetailHeader.js.map +1 -0
  720. package/dist/esm/ui/components/SessionTodosTab.d.ts +9 -0
  721. package/dist/esm/ui/components/SessionTodosTab.d.ts.map +1 -0
  722. package/dist/esm/ui/components/SessionTodosTab.js +66 -0
  723. package/dist/esm/ui/components/SessionTodosTab.js.map +1 -0
  724. package/dist/esm/ui/components/TokenUsageChart.d.ts +20 -0
  725. package/dist/esm/ui/components/TokenUsageChart.d.ts.map +1 -0
  726. package/dist/esm/ui/components/TokenUsageChart.js +123 -0
  727. package/dist/esm/ui/components/TokenUsageChart.js.map +1 -0
  728. package/dist/esm/ui/components/assessment/AssessmentModal.d.ts +3 -0
  729. package/dist/esm/ui/components/assessment/AssessmentModal.d.ts.map +1 -0
  730. package/dist/esm/ui/components/assessment/AssessmentModal.js +141 -0
  731. package/dist/esm/ui/components/assessment/AssessmentModal.js.map +1 -0
  732. package/dist/esm/ui/components/assessment/ChoiceResponse.d.ts +9 -0
  733. package/dist/esm/ui/components/assessment/ChoiceResponse.d.ts.map +1 -0
  734. package/dist/esm/ui/components/assessment/ChoiceResponse.js +27 -0
  735. package/dist/esm/ui/components/assessment/ChoiceResponse.js.map +1 -0
  736. package/dist/esm/ui/components/assessment/LikertScale.d.ts +3 -0
  737. package/dist/esm/ui/components/assessment/LikertScale.d.ts.map +1 -0
  738. package/dist/esm/ui/components/assessment/LikertScale.js +73 -0
  739. package/dist/esm/ui/components/assessment/LikertScale.js.map +1 -0
  740. package/dist/esm/ui/components/assessment/ProgressBar.d.ts +3 -0
  741. package/dist/esm/ui/components/assessment/ProgressBar.d.ts.map +1 -0
  742. package/dist/esm/ui/components/assessment/ProgressBar.js +6 -0
  743. package/dist/esm/ui/components/assessment/ProgressBar.js.map +1 -0
  744. package/dist/esm/ui/components/assessment/QuestionCard.d.ts +3 -0
  745. package/dist/esm/ui/components/assessment/QuestionCard.d.ts.map +1 -0
  746. package/dist/esm/ui/components/assessment/QuestionCard.js +124 -0
  747. package/dist/esm/ui/components/assessment/QuestionCard.js.map +1 -0
  748. package/dist/esm/ui/components/assessment/TextResponse.d.ts +3 -0
  749. package/dist/esm/ui/components/assessment/TextResponse.d.ts.map +1 -0
  750. package/dist/esm/ui/components/assessment/TextResponse.js +5 -0
  751. package/dist/esm/ui/components/assessment/TextResponse.js.map +1 -0
  752. package/dist/esm/ui/components/assessment/VersionSelector.d.ts +7 -0
  753. package/dist/esm/ui/components/assessment/VersionSelector.d.ts.map +1 -0
  754. package/dist/esm/ui/components/assessment/VersionSelector.js +68 -0
  755. package/dist/esm/ui/components/assessment/VersionSelector.js.map +1 -0
  756. package/dist/esm/ui/components/assessment/index.d.ts +9 -0
  757. package/dist/esm/ui/components/assessment/index.d.ts.map +1 -0
  758. package/dist/esm/ui/components/assessment/index.js +9 -0
  759. package/dist/esm/ui/components/assessment/index.js.map +1 -0
  760. package/dist/esm/ui/components/assessment/types.d.ts +58 -0
  761. package/dist/esm/ui/components/assessment/types.d.ts.map +1 -0
  762. package/dist/esm/ui/components/assessment/types.js +2 -0
  763. package/dist/esm/ui/components/assessment/types.js.map +1 -0
  764. package/dist/esm/ui/components/index.d.ts +39 -0
  765. package/dist/esm/ui/components/index.d.ts.map +1 -0
  766. package/dist/esm/ui/components/index.js +45 -0
  767. package/dist/esm/ui/components/index.js.map +1 -0
  768. package/dist/esm/ui/components/metrics/AssessmentSection.d.ts +27 -0
  769. package/dist/esm/ui/components/metrics/AssessmentSection.d.ts.map +1 -0
  770. package/dist/esm/ui/components/metrics/AssessmentSection.js +76 -0
  771. package/dist/esm/ui/components/metrics/AssessmentSection.js.map +1 -0
  772. package/dist/esm/ui/components/metrics/MetricCard.d.ts +20 -0
  773. package/dist/esm/ui/components/metrics/MetricCard.d.ts.map +1 -0
  774. package/dist/esm/ui/components/metrics/MetricCard.js +77 -0
  775. package/dist/esm/ui/components/metrics/MetricCard.js.map +1 -0
  776. package/dist/esm/ui/components/metrics/MetricSection.d.ts +12 -0
  777. package/dist/esm/ui/components/metrics/MetricSection.d.ts.map +1 -0
  778. package/dist/esm/ui/components/metrics/MetricSection.js +5 -0
  779. package/dist/esm/ui/components/metrics/MetricSection.js.map +1 -0
  780. package/dist/esm/ui/components/metrics/MetricsOverview.d.ts +89 -0
  781. package/dist/esm/ui/components/metrics/MetricsOverview.d.ts.map +1 -0
  782. package/dist/esm/ui/components/metrics/MetricsOverview.js +26 -0
  783. package/dist/esm/ui/components/metrics/MetricsOverview.js.map +1 -0
  784. package/dist/esm/ui/components/metrics/metricThresholds.d.ts +40 -0
  785. package/dist/esm/ui/components/metrics/metricThresholds.d.ts.map +1 -0
  786. package/dist/esm/ui/components/metrics/metricThresholds.js +203 -0
  787. package/dist/esm/ui/components/metrics/metricThresholds.js.map +1 -0
  788. package/dist/esm/ui/components/metrics/sections/AIAssessmentSection.d.ts +12 -0
  789. package/dist/esm/ui/components/metrics/sections/AIAssessmentSection.d.ts.map +1 -0
  790. package/dist/esm/ui/components/metrics/sections/AIAssessmentSection.js +28 -0
  791. package/dist/esm/ui/components/metrics/sections/AIAssessmentSection.js.map +1 -0
  792. package/dist/esm/ui/components/metrics/sections/ContextMetricsSection.d.ts +10 -0
  793. package/dist/esm/ui/components/metrics/sections/ContextMetricsSection.d.ts.map +1 -0
  794. package/dist/esm/ui/components/metrics/sections/ContextMetricsSection.js +18 -0
  795. package/dist/esm/ui/components/metrics/sections/ContextMetricsSection.js.map +1 -0
  796. package/dist/esm/ui/components/metrics/sections/EngagementMetricsSection.d.ts +10 -0
  797. package/dist/esm/ui/components/metrics/sections/EngagementMetricsSection.d.ts.map +1 -0
  798. package/dist/esm/ui/components/metrics/sections/EngagementMetricsSection.js +18 -0
  799. package/dist/esm/ui/components/metrics/sections/EngagementMetricsSection.js.map +1 -0
  800. package/dist/esm/ui/components/metrics/sections/ErrorMetricsSection.d.ts +10 -0
  801. package/dist/esm/ui/components/metrics/sections/ErrorMetricsSection.d.ts.map +1 -0
  802. package/dist/esm/ui/components/metrics/sections/ErrorMetricsSection.js +14 -0
  803. package/dist/esm/ui/components/metrics/sections/ErrorMetricsSection.js.map +1 -0
  804. package/dist/esm/ui/components/metrics/sections/GitDiffMetricsSection.d.ts +10 -0
  805. package/dist/esm/ui/components/metrics/sections/GitDiffMetricsSection.d.ts.map +1 -0
  806. package/dist/esm/ui/components/metrics/sections/GitDiffMetricsSection.js +19 -0
  807. package/dist/esm/ui/components/metrics/sections/GitDiffMetricsSection.js.map +1 -0
  808. package/dist/esm/ui/components/metrics/sections/PerformanceMetricsSection.d.ts +10 -0
  809. package/dist/esm/ui/components/metrics/sections/PerformanceMetricsSection.d.ts.map +1 -0
  810. package/dist/esm/ui/components/metrics/sections/PerformanceMetricsSection.js +18 -0
  811. package/dist/esm/ui/components/metrics/sections/PerformanceMetricsSection.js.map +1 -0
  812. package/dist/esm/ui/components/metrics/sections/QualityMetricsSection.d.ts +10 -0
  813. package/dist/esm/ui/components/metrics/sections/QualityMetricsSection.d.ts.map +1 -0
  814. package/dist/esm/ui/components/metrics/sections/QualityMetricsSection.js +23 -0
  815. package/dist/esm/ui/components/metrics/sections/QualityMetricsSection.js.map +1 -0
  816. package/dist/esm/ui/components/metrics/sections/UsageMetricsSection.d.ts +10 -0
  817. package/dist/esm/ui/components/metrics/sections/UsageMetricsSection.d.ts.map +1 -0
  818. package/dist/esm/ui/components/metrics/sections/UsageMetricsSection.js +14 -0
  819. package/dist/esm/ui/components/metrics/sections/UsageMetricsSection.js.map +1 -0
  820. package/dist/esm/ui/components/phase/PhaseBlock.d.ts +19 -0
  821. package/dist/esm/ui/components/phase/PhaseBlock.d.ts.map +1 -0
  822. package/dist/esm/ui/components/phase/PhaseBlock.js +13 -0
  823. package/dist/esm/ui/components/phase/PhaseBlock.js.map +1 -0
  824. package/dist/esm/ui/components/phase/PhaseHeader.d.ts +10 -0
  825. package/dist/esm/ui/components/phase/PhaseHeader.d.ts.map +1 -0
  826. package/dist/esm/ui/components/phase/PhaseHeader.js +12 -0
  827. package/dist/esm/ui/components/phase/PhaseHeader.js.map +1 -0
  828. package/dist/esm/ui/components/phase/PhaseIcon.d.ts +22 -0
  829. package/dist/esm/ui/components/phase/PhaseIcon.d.ts.map +1 -0
  830. package/dist/esm/ui/components/phase/PhaseIcon.js +71 -0
  831. package/dist/esm/ui/components/phase/PhaseIcon.js.map +1 -0
  832. package/dist/esm/ui/components/phase/PhaseStats.d.ts +13 -0
  833. package/dist/esm/ui/components/phase/PhaseStats.d.ts.map +1 -0
  834. package/dist/esm/ui/components/phase/PhaseStats.js +24 -0
  835. package/dist/esm/ui/components/phase/PhaseStats.js.map +1 -0
  836. package/dist/esm/ui/components/phase/PhaseSummary.d.ts +9 -0
  837. package/dist/esm/ui/components/phase/PhaseSummary.d.ts.map +1 -0
  838. package/dist/esm/ui/components/phase/PhaseSummary.js +5 -0
  839. package/dist/esm/ui/components/phase/PhaseSummary.js.map +1 -0
  840. package/dist/esm/ui/components/phase/PhaseTimeline.d.ts +17 -0
  841. package/dist/esm/ui/components/phase/PhaseTimeline.d.ts.map +1 -0
  842. package/dist/esm/ui/components/phase/PhaseTimeline.js +22 -0
  843. package/dist/esm/ui/components/phase/PhaseTimeline.js.map +1 -0
  844. package/dist/esm/ui/components/phase/index.d.ts +12 -0
  845. package/dist/esm/ui/components/phase/index.d.ts.map +1 -0
  846. package/dist/esm/ui/components/phase/index.js +10 -0
  847. package/dist/esm/ui/components/phase/index.js.map +1 -0
  848. package/dist/esm/ui/components/timeline/ContentRenderer.d.ts +10 -0
  849. package/dist/esm/ui/components/timeline/ContentRenderer.d.ts.map +1 -0
  850. package/dist/esm/ui/components/timeline/ContentRenderer.js +73 -0
  851. package/dist/esm/ui/components/timeline/ContentRenderer.js.map +1 -0
  852. package/dist/esm/ui/components/timeline/DebugModal.d.ts +14 -0
  853. package/dist/esm/ui/components/timeline/DebugModal.d.ts.map +1 -0
  854. package/dist/esm/ui/components/timeline/DebugModal.js +27 -0
  855. package/dist/esm/ui/components/timeline/DebugModal.js.map +1 -0
  856. package/dist/esm/ui/components/timeline/MessageHeader.d.ts +11 -0
  857. package/dist/esm/ui/components/timeline/MessageHeader.d.ts.map +1 -0
  858. package/dist/esm/ui/components/timeline/MessageHeader.js +7 -0
  859. package/dist/esm/ui/components/timeline/MessageHeader.js.map +1 -0
  860. package/dist/esm/ui/components/timeline/TimelineGroup.d.ts +10 -0
  861. package/dist/esm/ui/components/timeline/TimelineGroup.d.ts.map +1 -0
  862. package/dist/esm/ui/components/timeline/TimelineGroup.js +7 -0
  863. package/dist/esm/ui/components/timeline/TimelineGroup.js.map +1 -0
  864. package/dist/esm/ui/components/timeline/TimelineMessage.d.ts +12 -0
  865. package/dist/esm/ui/components/timeline/TimelineMessage.d.ts.map +1 -0
  866. package/dist/esm/ui/components/timeline/TimelineMessage.js +23 -0
  867. package/dist/esm/ui/components/timeline/TimelineMessage.js.map +1 -0
  868. package/dist/esm/ui/components/timeline/VirtualizedMessageList.d.ts +36 -0
  869. package/dist/esm/ui/components/timeline/VirtualizedMessageList.d.ts.map +1 -0
  870. package/dist/esm/ui/components/timeline/VirtualizedMessageList.js +90 -0
  871. package/dist/esm/ui/components/timeline/VirtualizedMessageList.js.map +1 -0
  872. package/dist/esm/ui/components/timeline/blocks/CodeBlock.d.ts +10 -0
  873. package/dist/esm/ui/components/timeline/blocks/CodeBlock.d.ts.map +1 -0
  874. package/dist/esm/ui/components/timeline/blocks/CodeBlock.js +14 -0
  875. package/dist/esm/ui/components/timeline/blocks/CodeBlock.js.map +1 -0
  876. package/dist/esm/ui/components/timeline/blocks/ImageBlock.d.ts +10 -0
  877. package/dist/esm/ui/components/timeline/blocks/ImageBlock.d.ts.map +1 -0
  878. package/dist/esm/ui/components/timeline/blocks/ImageBlock.js +5 -0
  879. package/dist/esm/ui/components/timeline/blocks/ImageBlock.js.map +1 -0
  880. package/dist/esm/ui/components/timeline/blocks/JsonBlock.d.ts +10 -0
  881. package/dist/esm/ui/components/timeline/blocks/JsonBlock.d.ts.map +1 -0
  882. package/dist/esm/ui/components/timeline/blocks/JsonBlock.js +11 -0
  883. package/dist/esm/ui/components/timeline/blocks/JsonBlock.js.map +1 -0
  884. package/dist/esm/ui/components/timeline/blocks/SystemReminderBlock.d.ts +16 -0
  885. package/dist/esm/ui/components/timeline/blocks/SystemReminderBlock.d.ts.map +1 -0
  886. package/dist/esm/ui/components/timeline/blocks/SystemReminderBlock.js +90 -0
  887. package/dist/esm/ui/components/timeline/blocks/SystemReminderBlock.js.map +1 -0
  888. package/dist/esm/ui/components/timeline/blocks/TextBlock.d.ts +13 -0
  889. package/dist/esm/ui/components/timeline/blocks/TextBlock.d.ts.map +1 -0
  890. package/dist/esm/ui/components/timeline/blocks/TextBlock.js +188 -0
  891. package/dist/esm/ui/components/timeline/blocks/TextBlock.js.map +1 -0
  892. package/dist/esm/ui/components/timeline/blocks/ThinkingBlock.d.ts +15 -0
  893. package/dist/esm/ui/components/timeline/blocks/ThinkingBlock.d.ts.map +1 -0
  894. package/dist/esm/ui/components/timeline/blocks/ThinkingBlock.js +15 -0
  895. package/dist/esm/ui/components/timeline/blocks/ThinkingBlock.js.map +1 -0
  896. package/dist/esm/ui/components/timeline/blocks/ToolBlock.d.ts +13 -0
  897. package/dist/esm/ui/components/timeline/blocks/ToolBlock.d.ts.map +1 -0
  898. package/dist/esm/ui/components/timeline/blocks/ToolBlock.js +51 -0
  899. package/dist/esm/ui/components/timeline/blocks/ToolBlock.js.map +1 -0
  900. package/dist/esm/ui/components/timeline/blocks/ToolResultBlock.d.ts +12 -0
  901. package/dist/esm/ui/components/timeline/blocks/ToolResultBlock.d.ts.map +1 -0
  902. package/dist/esm/ui/components/timeline/blocks/ToolResultBlock.js +81 -0
  903. package/dist/esm/ui/components/timeline/blocks/ToolResultBlock.js.map +1 -0
  904. package/dist/esm/ui/components/timeline/blocks/index.d.ts +11 -0
  905. package/dist/esm/ui/components/timeline/blocks/index.d.ts.map +1 -0
  906. package/dist/esm/ui/components/timeline/blocks/index.js +11 -0
  907. package/dist/esm/ui/components/timeline/blocks/index.js.map +1 -0
  908. package/dist/esm/ui/components/timeline/index.d.ts +10 -0
  909. package/dist/esm/ui/components/timeline/index.d.ts.map +1 -0
  910. package/dist/esm/ui/components/timeline/index.js +10 -0
  911. package/dist/esm/ui/components/timeline/index.js.map +1 -0
  912. package/dist/esm/ui/index.d.ts +10 -0
  913. package/dist/esm/ui/index.d.ts.map +1 -0
  914. package/dist/esm/ui/index.js +15 -0
  915. package/dist/esm/ui/index.js.map +1 -0
  916. package/dist/esm/ui/utils/extractTokens.d.ts +94 -0
  917. package/dist/esm/ui/utils/extractTokens.d.ts.map +1 -0
  918. package/dist/esm/ui/utils/extractTokens.js +185 -0
  919. package/dist/esm/ui/utils/extractTokens.js.map +1 -0
  920. package/dist/esm/ui/utils/markdown.d.ts +65 -0
  921. package/dist/esm/ui/utils/markdown.d.ts.map +1 -0
  922. package/dist/esm/ui/utils/markdown.js +199 -0
  923. package/dist/esm/ui/utils/markdown.js.map +1 -0
  924. package/dist/esm/ui/utils/processors/BaseMessageProcessor.d.ts +133 -0
  925. package/dist/esm/ui/utils/processors/BaseMessageProcessor.d.ts.map +1 -0
  926. package/dist/esm/ui/utils/processors/BaseMessageProcessor.js +546 -0
  927. package/dist/esm/ui/utils/processors/BaseMessageProcessor.js.map +1 -0
  928. package/dist/esm/ui/utils/processors/CanonicalMessageProcessor.d.ts +81 -0
  929. package/dist/esm/ui/utils/processors/CanonicalMessageProcessor.d.ts.map +1 -0
  930. package/dist/esm/ui/utils/processors/CanonicalMessageProcessor.js +442 -0
  931. package/dist/esm/ui/utils/processors/CanonicalMessageProcessor.js.map +1 -0
  932. package/dist/esm/ui/utils/processors/GenericMessageProcessor.d.ts +46 -0
  933. package/dist/esm/ui/utils/processors/GenericMessageProcessor.d.ts.map +1 -0
  934. package/dist/esm/ui/utils/processors/GenericMessageProcessor.js +169 -0
  935. package/dist/esm/ui/utils/processors/GenericMessageProcessor.js.map +1 -0
  936. package/dist/esm/ui/utils/processors/ProcessorRegistry.d.ts +33 -0
  937. package/dist/esm/ui/utils/processors/ProcessorRegistry.d.ts.map +1 -0
  938. package/dist/esm/ui/utils/processors/ProcessorRegistry.js +71 -0
  939. package/dist/esm/ui/utils/processors/ProcessorRegistry.js.map +1 -0
  940. package/dist/esm/ui/utils/processors/index.d.ts +11 -0
  941. package/dist/esm/ui/utils/processors/index.d.ts.map +1 -0
  942. package/dist/esm/ui/utils/processors/index.js +11 -0
  943. package/dist/esm/ui/utils/processors/index.js.map +1 -0
  944. package/dist/esm/ui/utils/sessionTypes.d.ts +2 -0
  945. package/dist/esm/ui/utils/sessionTypes.d.ts.map +1 -0
  946. package/dist/esm/ui/utils/sessionTypes.js +3 -0
  947. package/dist/esm/ui/utils/sessionTypes.js.map +1 -0
  948. package/dist/esm/ui/utils/systemReminderParser.d.ts +40 -0
  949. package/dist/esm/ui/utils/systemReminderParser.d.ts.map +1 -0
  950. package/dist/esm/ui/utils/systemReminderParser.js +104 -0
  951. package/dist/esm/ui/utils/systemReminderParser.js.map +1 -0
  952. package/dist/esm/ui/utils/timelineTypes.d.ts +201 -0
  953. package/dist/esm/ui/utils/timelineTypes.d.ts.map +1 -0
  954. package/dist/esm/ui/utils/timelineTypes.js +38 -0
  955. package/dist/esm/ui/utils/timelineTypes.js.map +1 -0
  956. package/dist/esm/ui/utils/todos/extractTodosClaudeCode.d.ts +9 -0
  957. package/dist/esm/ui/utils/todos/extractTodosClaudeCode.d.ts.map +1 -0
  958. package/dist/esm/ui/utils/todos/extractTodosClaudeCode.js +37 -0
  959. package/dist/esm/ui/utils/todos/extractTodosClaudeCode.js.map +1 -0
  960. package/dist/esm/ui/utils/todos/extractTodosCodex.d.ts +29 -0
  961. package/dist/esm/ui/utils/todos/extractTodosCodex.d.ts.map +1 -0
  962. package/dist/esm/ui/utils/todos/extractTodosCodex.js +158 -0
  963. package/dist/esm/ui/utils/todos/extractTodosCodex.js.map +1 -0
  964. package/dist/esm/ui/utils/todos/index.d.ts +18 -0
  965. package/dist/esm/ui/utils/todos/index.d.ts.map +1 -0
  966. package/dist/esm/ui/utils/todos/index.js +36 -0
  967. package/dist/esm/ui/utils/todos/index.js.map +1 -0
  968. package/dist/esm/ui/utils/todos/todoUtils.d.ts +27 -0
  969. package/dist/esm/ui/utils/todos/todoUtils.d.ts.map +1 -0
  970. package/dist/esm/ui/utils/todos/todoUtils.js +117 -0
  971. package/dist/esm/ui/utils/todos/todoUtils.js.map +1 -0
  972. package/dist/esm/ui/utils/todos/types.d.ts +41 -0
  973. package/dist/esm/ui/utils/todos/types.d.ts.map +1 -0
  974. package/dist/esm/ui/utils/todos/types.js +5 -0
  975. package/dist/esm/ui/utils/todos/types.js.map +1 -0
  976. package/dist/esm/utils/git-url.d.ts +25 -0
  977. package/dist/esm/utils/git-url.d.ts.map +1 -0
  978. package/dist/esm/utils/git-url.js +56 -0
  979. package/dist/esm/utils/git-url.js.map +1 -0
  980. package/dist/esm/utils/index.d.ts +7 -0
  981. package/dist/esm/utils/index.d.ts.map +1 -0
  982. package/dist/esm/utils/index.js +7 -0
  983. package/dist/esm/utils/index.js.map +1 -0
  984. package/dist/esm/utils/rating.d.ts +61 -0
  985. package/dist/esm/utils/rating.d.ts.map +1 -0
  986. package/dist/esm/utils/rating.js +91 -0
  987. package/dist/esm/utils/rating.js.map +1 -0
  988. package/dist/esm/utils/safe-access.d.ts +43 -0
  989. package/dist/esm/utils/safe-access.d.ts.map +1 -0
  990. package/dist/esm/utils/safe-access.js +78 -0
  991. package/dist/esm/utils/safe-access.js.map +1 -0
  992. package/dist/esm/utils/user.d.ts +22 -0
  993. package/dist/esm/utils/user.d.ts.map +1 -0
  994. package/dist/esm/utils/user.js +36 -0
  995. package/dist/esm/utils/user.js.map +1 -0
  996. package/dist/esm/validation/index.d.ts +8 -0
  997. package/dist/esm/validation/index.d.ts.map +1 -0
  998. package/dist/esm/validation/index.js +10 -0
  999. package/dist/esm/validation/index.js.map +1 -0
  1000. package/dist/esm/validation/validator.d.ts +48 -0
  1001. package/dist/esm/validation/validator.d.ts.map +1 -0
  1002. package/dist/esm/validation/validator.js +203 -0
  1003. package/dist/esm/validation/validator.js.map +1 -0
  1004. package/dist/tsconfig.tsbuildinfo +1 -0
  1005. package/index.css +31 -0
  1006. package/package.json +144 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/index.ts"],"names":[],"mappings":"AACA,cAAc,uBAAuB,CAAA;AAGrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AAGnC,cAAc,0BAA0B,CAAA;AAGxC,cAAc,wBAAwB,CAAA;AAGtC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAGpD,YAAY,EACV,eAAe,IAAI,mBAAmB,EACtC,aAAa,IAAI,iBAAiB,EAClC,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,GACZ,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,0BAA0B,CAAA;AAGjC,cAAc,6BAA6B,CAAA"}
@@ -0,0 +1,15 @@
1
+ // Export all components
2
+ export * from './components/index.js';
3
+ // Export utilities
4
+ export * from './utils/sessionTypes.js';
5
+ export * from './utils/markdown.js';
6
+ // Export token extraction utilities
7
+ export * from './utils/extractTokens.js';
8
+ // Export todo extraction utilities
9
+ export * from './utils/todos/index.js';
10
+ // Re-export parser registry for convenience (already exported from parsers/index.js)
11
+ export { parserRegistry } from '../parsers/index.js';
12
+ export { isTimelineGroup, isTimelineMessage, createDisplayMetadata, createContentBlock, } from './utils/timelineTypes.js';
13
+ // Export message processors
14
+ export * from './utils/processors/index.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/index.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,cAAc,uBAAuB,CAAA;AAErC,mBAAmB;AACnB,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AAEnC,oCAAoC;AACpC,cAAc,0BAA0B,CAAA;AAExC,mCAAmC;AACnC,cAAc,wBAAwB,CAAA;AAEtC,qFAAqF;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAcpD,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,0BAA0B,CAAA;AAEjC,4BAA4B;AAC5B,cAAc,6BAA6B,CAAA"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Token extraction and aggregation utilities for transcript visualization
3
+ *
4
+ * Handles token data extraction from various AI provider message formats
5
+ * and provides both per-message and cumulative token calculations.
6
+ *
7
+ * Uses the SAME logic as the session-processing metrics to ensure consistency:
8
+ * - Claude Code & Codex: metadata.usage.{input_tokens, output_tokens, cache_creation_input_tokens, cache_read_input_tokens}
9
+ * - Gemini: metadata.tokens.{input, output, cached, thoughts, tool}
10
+ * - Excludes sidechain messages from main context calculations
11
+ */
12
+ import type { TimelineItem, TimelineMessage } from './timelineTypes.js';
13
+ /**
14
+ * Token data for a single message
15
+ * Matches the structure used in PerMessageTokens from metrics
16
+ */
17
+ export interface MessageTokenData {
18
+ messageId: string;
19
+ messageIndex: number;
20
+ inputTokens: number;
21
+ outputTokens: number;
22
+ cacheCreated: number;
23
+ cacheRead: number;
24
+ totalTokens: number;
25
+ isSidechain: boolean;
26
+ }
27
+ /**
28
+ * Token data with cumulative totals (for context length visualization)
29
+ * Shows how context grows over time as messages are added
30
+ *
31
+ * Note: cacheRead is NOT accumulated here because it's already cumulative
32
+ * from the API (cache_read_input_tokens shows total cached tokens up to that point)
33
+ */
34
+ export interface CumulativeTokenData extends MessageTokenData {
35
+ cumulativeInput: number;
36
+ cumulativeOutput: number;
37
+ cumulativeCacheCreated: number;
38
+ cumulativeTotal: number;
39
+ }
40
+ /**
41
+ * Extract token usage from a timeline message
42
+ * Supports multiple provider formats (Claude, Gemini, etc.)
43
+ */
44
+ export declare function extractMessageTokens(message: TimelineMessage): {
45
+ input: number;
46
+ output: number;
47
+ cacheCreated: number;
48
+ cacheRead: number;
49
+ isSidechain: boolean;
50
+ };
51
+ /**
52
+ * Calculate per-message token data from timeline items
53
+ * Includes ALL messages (main chain and sidechain) for total token visualization
54
+ */
55
+ export declare function calculatePerMessageTokens(items: TimelineItem[]): MessageTokenData[];
56
+ /**
57
+ * Calculate cumulative token data (actual context size as it grows)
58
+ *
59
+ * Shows the ACTUAL context composition at each message point:
60
+ * - cache_read_input_tokens: Already cumulative from API (total cached tokens)
61
+ * - input_tokens: NEW tokens for this message (not cumulative - fresh per message)
62
+ * - output_tokens: Cumulative sum of all outputs generated so far
63
+ *
64
+ * Total context = cacheRead + input + cumulativeOutput
65
+ *
66
+ * This matches what the API actually sees as context and should equal the
67
+ * context_length metric on the metrics page.
68
+ *
69
+ * IMPORTANT: Unlike billable token tracking which sums ALL inputs, this shows
70
+ * the actual context window composition where cache_read represents reused tokens.
71
+ */
72
+ export declare function calculateCumulativeTokens(items: TimelineItem[]): CumulativeTokenData[];
73
+ /**
74
+ * Format token data for recharts (stacked bar chart)
75
+ * Returns data in the format recharts expects for stacked bars
76
+ *
77
+ * Key naming convention matches how tokens are labeled in the UI:
78
+ * - input: Input tokens (user + assistant input)
79
+ * - output: Output tokens (assistant response)
80
+ * - cacheCreated: Cache creation tokens
81
+ * - cacheRead: Cache read tokens
82
+ */
83
+ export interface RechartsTokenData {
84
+ index: number;
85
+ messageId: string;
86
+ input: number;
87
+ output: number;
88
+ cacheCreated: number;
89
+ cacheRead: number;
90
+ total: number;
91
+ isSidechain: boolean;
92
+ }
93
+ export declare function formatForRecharts(tokenData: MessageTokenData[] | CumulativeTokenData[], mode: 'per-message' | 'cumulative'): RechartsTokenData[];
94
+ //# sourceMappingURL=extractTokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractTokens.d.ts","sourceRoot":"","sources":["../../../../src/ui/utils/extractTokens.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAGvE;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,eAAe,EAAE,MAAM,CAAA;CACxB;AA0DD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,eAAe,GAAG;IAC9D,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,OAAO,CAAA;CACrB,CA8BA;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,gBAAgB,EAAE,CAsCnF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,mBAAmB,EAAE,CAiCtF;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,gBAAgB,EAAE,GAAG,mBAAmB,EAAE,EACrD,IAAI,EAAE,aAAa,GAAG,YAAY,GACjC,iBAAiB,EAAE,CA2BrB"}
@@ -0,0 +1,185 @@
1
+ /**
2
+ * Token extraction and aggregation utilities for transcript visualization
3
+ *
4
+ * Handles token data extraction from various AI provider message formats
5
+ * and provides both per-message and cumulative token calculations.
6
+ *
7
+ * Uses the SAME logic as the session-processing metrics to ensure consistency:
8
+ * - Claude Code & Codex: metadata.usage.{input_tokens, output_tokens, cache_creation_input_tokens, cache_read_input_tokens}
9
+ * - Gemini: metadata.tokens.{input, output, cached, thoughts, tool}
10
+ * - Excludes sidechain messages from main context calculations
11
+ */
12
+ import { isTimelineGroup, isTimelineMessage } from './timelineTypes.js';
13
+ /**
14
+ * Extract token usage from Claude Code and Codex message metadata
15
+ * Both providers use the same usage schema.
16
+ * Matches the exact field names from ClaudeContextProcessor and CodexContextProcessor.
17
+ */
18
+ function extractClaudeTokens(metadata) {
19
+ const usage = metadata?.usage;
20
+ return {
21
+ input: usage?.input_tokens || 0,
22
+ output: usage?.output_tokens || 0,
23
+ cacheCreated: usage?.cache_creation_input_tokens || 0,
24
+ cacheRead: usage?.cache_read_input_tokens || 0,
25
+ };
26
+ }
27
+ /**
28
+ * Extract token usage from Gemini message metadata
29
+ * Matches the structure from calculateTotalTokens() in gemini/helpers.ts
30
+ */
31
+ function extractGeminiTokens(metadata) {
32
+ const tokens = metadata?.tokens;
33
+ return {
34
+ input: tokens?.input || 0,
35
+ output: tokens?.output || 0,
36
+ cacheCreated: 0, // Gemini doesn't have separate cache_creation
37
+ cacheRead: tokens?.cached || 0,
38
+ };
39
+ }
40
+ /**
41
+ * Extract token usage from a timeline message
42
+ * Supports multiple provider formats (Claude, Gemini, etc.)
43
+ */
44
+ export function extractMessageTokens(message) {
45
+ const metadata = message.originalMessage.metadata || {};
46
+ // Check if this is a sidechain message (used in metrics to calculate context_length)
47
+ const isSidechain = metadata.isSidechain === true;
48
+ // Try Claude format first (most common)
49
+ if (metadata.usage) {
50
+ return {
51
+ ...extractClaudeTokens(metadata),
52
+ isSidechain,
53
+ };
54
+ }
55
+ // Try Gemini format
56
+ if (metadata.tokens) {
57
+ return {
58
+ ...extractGeminiTokens(metadata),
59
+ isSidechain,
60
+ };
61
+ }
62
+ // No token data found
63
+ return {
64
+ input: 0,
65
+ output: 0,
66
+ cacheCreated: 0,
67
+ cacheRead: 0,
68
+ isSidechain,
69
+ };
70
+ }
71
+ /**
72
+ * Calculate per-message token data from timeline items
73
+ * Includes ALL messages (main chain and sidechain) for total token visualization
74
+ */
75
+ export function calculatePerMessageTokens(items) {
76
+ const result = [];
77
+ let messageIndex = 0;
78
+ for (const item of items) {
79
+ if (isTimelineMessage(item)) {
80
+ const tokens = extractMessageTokens(item);
81
+ result.push({
82
+ messageId: item.id,
83
+ messageIndex,
84
+ inputTokens: tokens.input,
85
+ outputTokens: tokens.output,
86
+ cacheCreated: tokens.cacheCreated,
87
+ cacheRead: tokens.cacheRead,
88
+ totalTokens: tokens.input + tokens.output, // Only billable tokens
89
+ isSidechain: tokens.isSidechain,
90
+ });
91
+ messageIndex++;
92
+ }
93
+ else if (isTimelineGroup(item)) {
94
+ // For groups, process each message in the group
95
+ for (const groupMessage of item.messages) {
96
+ const tokens = extractMessageTokens(groupMessage);
97
+ result.push({
98
+ messageId: groupMessage.id,
99
+ messageIndex,
100
+ inputTokens: tokens.input,
101
+ outputTokens: tokens.output,
102
+ cacheCreated: tokens.cacheCreated,
103
+ cacheRead: tokens.cacheRead,
104
+ totalTokens: tokens.input + tokens.output, // Only billable tokens
105
+ isSidechain: tokens.isSidechain,
106
+ });
107
+ messageIndex++;
108
+ }
109
+ }
110
+ }
111
+ return result;
112
+ }
113
+ /**
114
+ * Calculate cumulative token data (actual context size as it grows)
115
+ *
116
+ * Shows the ACTUAL context composition at each message point:
117
+ * - cache_read_input_tokens: Already cumulative from API (total cached tokens)
118
+ * - input_tokens: NEW tokens for this message (not cumulative - fresh per message)
119
+ * - output_tokens: Cumulative sum of all outputs generated so far
120
+ *
121
+ * Total context = cacheRead + input + cumulativeOutput
122
+ *
123
+ * This matches what the API actually sees as context and should equal the
124
+ * context_length metric on the metrics page.
125
+ *
126
+ * IMPORTANT: Unlike billable token tracking which sums ALL inputs, this shows
127
+ * the actual context window composition where cache_read represents reused tokens.
128
+ */
129
+ export function calculateCumulativeTokens(items) {
130
+ const perMessageData = calculatePerMessageTokens(items);
131
+ const result = [];
132
+ let cumulativeOutput = 0;
133
+ let cumulativeCacheCreated = 0;
134
+ let lastCacheRead = 0; // Track last non-zero cache read value
135
+ for (const data of perMessageData) {
136
+ // Output accumulates (all responses generated so far)
137
+ cumulativeOutput += data.outputTokens;
138
+ cumulativeCacheCreated += data.cacheCreated;
139
+ // Cache reads are cumulative from the API, but may be 0 for some messages
140
+ // Carry forward the last known value to maintain cumulative nature
141
+ if (data.cacheRead > 0) {
142
+ lastCacheRead = data.cacheRead;
143
+ }
144
+ // For cumulative view:
145
+ // - cumulativeInput is NOT used (we show per-message input instead)
146
+ // - Total context = cacheRead + input + cumulativeOutput
147
+ result.push({
148
+ ...data,
149
+ cacheRead: lastCacheRead, // Total cached tokens (from API)
150
+ cumulativeInput: data.inputTokens, // Per-message new input (NOT summed)
151
+ cumulativeOutput,
152
+ cumulativeCacheCreated,
153
+ cumulativeTotal: lastCacheRead + data.inputTokens + cumulativeOutput, // Actual context size
154
+ });
155
+ }
156
+ return result;
157
+ }
158
+ export function formatForRecharts(tokenData, mode) {
159
+ return tokenData.map(data => {
160
+ if (mode === 'cumulative' && 'cumulativeInput' in data) {
161
+ return {
162
+ index: data.messageIndex,
163
+ messageId: data.messageId,
164
+ input: data.cumulativeInput,
165
+ output: data.cumulativeOutput,
166
+ cacheCreated: data.cumulativeCacheCreated,
167
+ cacheRead: data.cacheRead, // Use raw value - already cumulative from API
168
+ total: data.cumulativeTotal,
169
+ isSidechain: data.isSidechain,
170
+ };
171
+ }
172
+ // Per-message mode: hide cache reads (they're cumulative, not per-message)
173
+ return {
174
+ index: data.messageIndex,
175
+ messageId: data.messageId,
176
+ input: data.inputTokens,
177
+ output: data.outputTokens,
178
+ cacheCreated: data.cacheCreated,
179
+ cacheRead: 0, // Hide cache reads in per-message mode
180
+ total: data.totalTokens,
181
+ isSidechain: data.isSidechain,
182
+ };
183
+ });
184
+ }
185
+ //# sourceMappingURL=extractTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractTokens.js","sourceRoot":"","sources":["../../../../src/ui/utils/extractTokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Markdown utilities for parsing, sanitizing, and truncating markdown content.
3
+ * Uses marked for fast parsing and DOMPurify for XSS protection.
4
+ */
5
+ export declare const DEFAULT_TRUNCATION_THRESHOLD: {
6
+ lines: number;
7
+ bytes: number;
8
+ };
9
+ export interface ContentSize {
10
+ lines: number;
11
+ bytes: number;
12
+ }
13
+ export interface TruncationResult {
14
+ truncated: string;
15
+ original: string;
16
+ isTruncated: boolean;
17
+ truncatedLines: number;
18
+ originalLines: number;
19
+ }
20
+ export interface TruncationThreshold {
21
+ lines: number;
22
+ bytes: number;
23
+ }
24
+ /**
25
+ * Parse markdown content to HTML using marked with syntax highlighting.
26
+ * This is significantly faster than react-markdown (10-50x improvement).
27
+ *
28
+ * @param content - Raw markdown string
29
+ * @param sanitize - Whether to sanitize output with DOMPurify (default: true)
30
+ * @param enableSyntaxHighlighting - Whether to apply syntax highlighting to code blocks (default: true)
31
+ * @returns Parsed and optionally sanitized HTML string
32
+ */
33
+ export declare function parseMarkdown(content: string, sanitize?: boolean, enableSyntaxHighlighting?: boolean): Promise<string>;
34
+ /**
35
+ * Calculate the size of content in lines and bytes.
36
+ *
37
+ * @param content - Text content to measure
38
+ * @returns Object with line count and byte size
39
+ */
40
+ export declare function getContentSize(content: string): ContentSize;
41
+ /**
42
+ * Determine if content should be truncated based on threshold.
43
+ *
44
+ * @param content - Text content to check
45
+ * @param threshold - Truncation threshold (default: 500 lines or 50KB)
46
+ * @returns True if content exceeds threshold
47
+ */
48
+ export declare function shouldTruncate(content: string, threshold?: TruncationThreshold): boolean;
49
+ /**
50
+ * Truncate content to a maximum number of lines.
51
+ *
52
+ * @param content - Text content to truncate
53
+ * @param maxLines - Maximum number of lines to keep
54
+ * @returns Object with truncated content, original content, and truncation flag
55
+ */
56
+ export declare function truncateContent(content: string, maxLines: number): TruncationResult;
57
+ /**
58
+ * Smart truncation that considers threshold and returns appropriate content.
59
+ *
60
+ * @param content - Text content to potentially truncate
61
+ * @param threshold - Truncation threshold (default: 500 lines or 50KB)
62
+ * @returns Truncation result with appropriate content
63
+ */
64
+ export declare function smartTruncate(content: string, threshold?: TruncationThreshold): TruncationResult;
65
+ //# sourceMappingURL=markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/ui/utils/markdown.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,eAAO,MAAM,4BAA4B;;;CAGxC,CAAA;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,OAAO,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,QAAQ,UAAO,EACf,wBAAwB,UAAO,GAC9B,OAAO,CAAC,MAAM,CAAC,CAoHjB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAK3D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,mBAAkD,GAC5D,OAAO,CAGT;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAwBnF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,mBAAkD,GAC5D,gBAAgB,CAclB"}
@@ -0,0 +1,199 @@
1
+ /**
2
+ * Markdown utilities for parsing, sanitizing, and truncating markdown content.
3
+ * Uses marked for fast parsing and DOMPurify for XSS protection.
4
+ */
5
+ // Conservative thresholds for content truncation
6
+ export const DEFAULT_TRUNCATION_THRESHOLD = {
7
+ lines: 500,
8
+ bytes: 50000, // 50KB
9
+ };
10
+ /**
11
+ * Parse markdown content to HTML using marked with syntax highlighting.
12
+ * This is significantly faster than react-markdown (10-50x improvement).
13
+ *
14
+ * @param content - Raw markdown string
15
+ * @param sanitize - Whether to sanitize output with DOMPurify (default: true)
16
+ * @param enableSyntaxHighlighting - Whether to apply syntax highlighting to code blocks (default: true)
17
+ * @returns Parsed and optionally sanitized HTML string
18
+ */
19
+ export async function parseMarkdown(content, sanitize = true, enableSyntaxHighlighting = true) {
20
+ // Dynamic import to reduce bundle size
21
+ const { marked } = await import('marked');
22
+ // Load Prism for syntax highlighting with common languages
23
+ let Prism = null;
24
+ if (enableSyntaxHighlighting) {
25
+ try {
26
+ // Import base Prism (includes markup, css, clike, javascript)
27
+ Prism = await import('prismjs');
28
+ // Import common languages used in coding sessions
29
+ // @ts-ignore - Prism language components exist but lack type definitions
30
+ await import('prismjs/components/prism-typescript');
31
+ // @ts-ignore - Prism language components exist but lack type definitions
32
+ await import('prismjs/components/prism-tsx');
33
+ // @ts-ignore - Prism language components exist but lack type definitions
34
+ await import('prismjs/components/prism-jsx');
35
+ // @ts-ignore - Prism language components exist but lack type definitions
36
+ await import('prismjs/components/prism-python');
37
+ // @ts-ignore - Prism language components exist but lack type definitions
38
+ await import('prismjs/components/prism-bash');
39
+ // @ts-ignore - Prism language components exist but lack type definitions
40
+ await import('prismjs/components/prism-json');
41
+ // @ts-ignore - Prism language components exist but lack type definitions
42
+ await import('prismjs/components/prism-yaml');
43
+ // @ts-ignore - Prism language components exist but lack type definitions
44
+ await import('prismjs/components/prism-markdown');
45
+ // @ts-ignore - Prism language components exist but lack type definitions
46
+ await import('prismjs/components/prism-sql');
47
+ // @ts-ignore - Prism language components exist but lack type definitions
48
+ await import('prismjs/components/prism-rust');
49
+ // @ts-ignore - Prism language components exist but lack type definitions
50
+ await import('prismjs/components/prism-go');
51
+ // @ts-ignore - Prism language components exist but lack type definitions
52
+ await import('prismjs/components/prism-java');
53
+ }
54
+ catch (err) {
55
+ console.warn('Failed to load Prism for syntax highlighting:', err);
56
+ }
57
+ }
58
+ // Create custom renderer to add language classes and proper highlighting
59
+ const renderer = new marked.Renderer();
60
+ // Override code rendering to add language classes and syntax highlighting
61
+ renderer.code = (code, language) => {
62
+ const lang = language || 'plaintext';
63
+ let highlightedCode = code;
64
+ // Apply Prism highlighting if available
65
+ if (Prism && language && Prism.languages[language]) {
66
+ try {
67
+ highlightedCode = Prism.highlight(code, Prism.languages[language], language);
68
+ }
69
+ catch (err) {
70
+ console.warn(`Failed to highlight ${language}:`, err);
71
+ }
72
+ }
73
+ // Return pre > code with proper language class on BOTH elements
74
+ // This ensures Prism CSS can target both pre[class*="language-"] and code[class*="language-"]
75
+ return `<pre class="language-${lang}"><code class="language-${lang}">${highlightedCode}</code></pre>`;
76
+ };
77
+ // Configure marked for GFM support
78
+ marked.setOptions({
79
+ gfm: true,
80
+ breaks: true,
81
+ renderer,
82
+ });
83
+ // Parse markdown to HTML
84
+ const html = await marked.parse(content);
85
+ // Sanitize if requested
86
+ if (sanitize) {
87
+ const DOMPurify = await import('dompurify');
88
+ const purify = DOMPurify.default || DOMPurify;
89
+ return purify.sanitize(html, {
90
+ ALLOWED_TAGS: [
91
+ 'p',
92
+ 'br',
93
+ 'strong',
94
+ 'em',
95
+ 'u',
96
+ 's',
97
+ 'code',
98
+ 'pre',
99
+ 'a',
100
+ 'ul',
101
+ 'ol',
102
+ 'li',
103
+ 'blockquote',
104
+ 'h1',
105
+ 'h2',
106
+ 'h3',
107
+ 'h4',
108
+ 'h5',
109
+ 'h6',
110
+ 'table',
111
+ 'thead',
112
+ 'tbody',
113
+ 'tr',
114
+ 'td',
115
+ 'th',
116
+ 'img',
117
+ 'hr',
118
+ 'div',
119
+ 'span',
120
+ ],
121
+ ALLOWED_ATTR: ['href', 'title', 'src', 'alt', 'class', 'id', 'style'],
122
+ ALLOW_DATA_ATTR: false,
123
+ });
124
+ }
125
+ return html;
126
+ }
127
+ /**
128
+ * Calculate the size of content in lines and bytes.
129
+ *
130
+ * @param content - Text content to measure
131
+ * @returns Object with line count and byte size
132
+ */
133
+ export function getContentSize(content) {
134
+ const lines = content.split('\n').length;
135
+ const bytes = new TextEncoder().encode(content).length;
136
+ return { lines, bytes };
137
+ }
138
+ /**
139
+ * Determine if content should be truncated based on threshold.
140
+ *
141
+ * @param content - Text content to check
142
+ * @param threshold - Truncation threshold (default: 500 lines or 50KB)
143
+ * @returns True if content exceeds threshold
144
+ */
145
+ export function shouldTruncate(content, threshold = DEFAULT_TRUNCATION_THRESHOLD) {
146
+ const size = getContentSize(content);
147
+ return size.lines > threshold.lines || size.bytes > threshold.bytes;
148
+ }
149
+ /**
150
+ * Truncate content to a maximum number of lines.
151
+ *
152
+ * @param content - Text content to truncate
153
+ * @param maxLines - Maximum number of lines to keep
154
+ * @returns Object with truncated content, original content, and truncation flag
155
+ */
156
+ export function truncateContent(content, maxLines) {
157
+ const lines = content.split('\n');
158
+ const originalLines = lines.length;
159
+ if (originalLines <= maxLines) {
160
+ return {
161
+ truncated: content,
162
+ original: content,
163
+ isTruncated: false,
164
+ truncatedLines: originalLines,
165
+ originalLines,
166
+ };
167
+ }
168
+ const truncatedLines = lines.slice(0, maxLines);
169
+ const truncated = truncatedLines.join('\n');
170
+ return {
171
+ truncated,
172
+ original: content,
173
+ isTruncated: true,
174
+ truncatedLines: maxLines,
175
+ originalLines,
176
+ };
177
+ }
178
+ /**
179
+ * Smart truncation that considers threshold and returns appropriate content.
180
+ *
181
+ * @param content - Text content to potentially truncate
182
+ * @param threshold - Truncation threshold (default: 500 lines or 50KB)
183
+ * @returns Truncation result with appropriate content
184
+ */
185
+ export function smartTruncate(content, threshold = DEFAULT_TRUNCATION_THRESHOLD) {
186
+ if (!shouldTruncate(content, threshold)) {
187
+ const lines = content.split('\n').length;
188
+ return {
189
+ truncated: content,
190
+ original: content,
191
+ isTruncated: false,
192
+ truncatedLines: lines,
193
+ originalLines: lines,
194
+ };
195
+ }
196
+ // Use the line threshold for truncation
197
+ return truncateContent(content, threshold.lines);
198
+ }
199
+ //# sourceMappingURL=markdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../../src/ui/utils/markdown.ts"],"names":[],"mappings":"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"}