@contraagent/ui 0.0.0-stage → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (731) hide show
  1. package/README.md +137 -2
  2. package/custom-elements.json +7286 -0
  3. package/dist/adapters/check-rows.d.ts +20 -0
  4. package/dist/adapters/check-rows.d.ts.map +1 -0
  5. package/dist/adapters/check-rows.js +77 -0
  6. package/dist/adapters/check-rows.js.map +1 -0
  7. package/dist/adapters/filters.d.ts +29 -0
  8. package/dist/adapters/filters.d.ts.map +1 -0
  9. package/dist/adapters/filters.js +74 -0
  10. package/dist/adapters/filters.js.map +1 -0
  11. package/dist/adapters/graph/compound.d.ts +93 -0
  12. package/dist/adapters/graph/compound.d.ts.map +1 -0
  13. package/dist/adapters/graph/compound.js +322 -0
  14. package/dist/adapters/graph/compound.js.map +1 -0
  15. package/dist/adapters/graph/flow-index.d.ts +54 -0
  16. package/dist/adapters/graph/flow-index.d.ts.map +1 -0
  17. package/dist/adapters/graph/flow-index.js +129 -0
  18. package/dist/adapters/graph/flow-index.js.map +1 -0
  19. package/dist/adapters/graph/highlight.d.ts +14 -0
  20. package/dist/adapters/graph/highlight.d.ts.map +1 -0
  21. package/dist/adapters/graph/highlight.js +33 -0
  22. package/dist/adapters/graph/highlight.js.map +1 -0
  23. package/dist/adapters/graph/input.d.ts +50 -0
  24. package/dist/adapters/graph/input.d.ts.map +1 -0
  25. package/dist/adapters/graph/input.js +201 -0
  26. package/dist/adapters/graph/input.js.map +1 -0
  27. package/dist/adapters/graph/layer.d.ts +33 -0
  28. package/dist/adapters/graph/layer.d.ts.map +1 -0
  29. package/dist/adapters/graph/layer.js +94 -0
  30. package/dist/adapters/graph/layer.js.map +1 -0
  31. package/dist/adapters/graph/matrix.d.ts +62 -0
  32. package/dist/adapters/graph/matrix.d.ts.map +1 -0
  33. package/dist/adapters/graph/matrix.js +96 -0
  34. package/dist/adapters/graph/matrix.js.map +1 -0
  35. package/dist/adapters/graph/project.d.ts +49 -0
  36. package/dist/adapters/graph/project.d.ts.map +1 -0
  37. package/dist/adapters/graph/project.js +319 -0
  38. package/dist/adapters/graph/project.js.map +1 -0
  39. package/dist/adapters/graph/selection.d.ts +31 -0
  40. package/dist/adapters/graph/selection.d.ts.map +1 -0
  41. package/dist/adapters/graph/selection.js +48 -0
  42. package/dist/adapters/graph/selection.js.map +1 -0
  43. package/dist/adapters/graph/states.d.ts +6 -0
  44. package/dist/adapters/graph/states.d.ts.map +1 -0
  45. package/dist/adapters/graph/states.js +5 -0
  46. package/dist/adapters/graph/states.js.map +1 -0
  47. package/dist/adapters/graph/types.d.ts +141 -0
  48. package/dist/adapters/graph/types.d.ts.map +1 -0
  49. package/dist/adapters/graph/types.js +3 -0
  50. package/dist/adapters/graph/types.js.map +1 -0
  51. package/dist/adapters/graph/words.d.ts +48 -0
  52. package/dist/adapters/graph/words.d.ts.map +1 -0
  53. package/dist/adapters/graph/words.js +128 -0
  54. package/dist/adapters/graph/words.js.map +1 -0
  55. package/dist/adapters/index.d.ts +18 -0
  56. package/dist/adapters/index.d.ts.map +1 -0
  57. package/dist/adapters/index.js +23 -0
  58. package/dist/adapters/index.js.map +1 -0
  59. package/dist/adapters/journal-columns.d.ts +21 -0
  60. package/dist/adapters/journal-columns.d.ts.map +1 -0
  61. package/dist/adapters/journal-columns.js +179 -0
  62. package/dist/adapters/journal-columns.js.map +1 -0
  63. package/dist/adapters/kpi-tiles.d.ts +47 -0
  64. package/dist/adapters/kpi-tiles.d.ts.map +1 -0
  65. package/dist/adapters/kpi-tiles.js +173 -0
  66. package/dist/adapters/kpi-tiles.js.map +1 -0
  67. package/dist/adapters/lanes.d.ts +31 -0
  68. package/dist/adapters/lanes.d.ts.map +1 -0
  69. package/dist/adapters/lanes.js +75 -0
  70. package/dist/adapters/lanes.js.map +1 -0
  71. package/dist/adapters/model-shares.d.ts +27 -0
  72. package/dist/adapters/model-shares.d.ts.map +1 -0
  73. package/dist/adapters/model-shares.js +52 -0
  74. package/dist/adapters/model-shares.js.map +1 -0
  75. package/dist/adapters/panel-body.d.ts +34 -0
  76. package/dist/adapters/panel-body.d.ts.map +1 -0
  77. package/dist/adapters/panel-body.js +90 -0
  78. package/dist/adapters/panel-body.js.map +1 -0
  79. package/dist/adapters/preflight.d.ts +12 -0
  80. package/dist/adapters/preflight.d.ts.map +1 -0
  81. package/dist/adapters/preflight.js +15 -0
  82. package/dist/adapters/preflight.js.map +1 -0
  83. package/dist/adapters/task-columns.d.ts +19 -0
  84. package/dist/adapters/task-columns.d.ts.map +1 -0
  85. package/dist/adapters/task-columns.js +107 -0
  86. package/dist/adapters/task-columns.js.map +1 -0
  87. package/dist/adapters/transcript/index.d.ts +6 -0
  88. package/dist/adapters/transcript/index.d.ts.map +1 -0
  89. package/dist/adapters/transcript/index.js +8 -0
  90. package/dist/adapters/transcript/index.js.map +1 -0
  91. package/dist/adapters/transcript/model.d.ts +42 -0
  92. package/dist/adapters/transcript/model.d.ts.map +1 -0
  93. package/dist/adapters/transcript/model.js +128 -0
  94. package/dist/adapters/transcript/model.js.map +1 -0
  95. package/dist/adapters/transcript/rounds.d.ts +15 -0
  96. package/dist/adapters/transcript/rounds.d.ts.map +1 -0
  97. package/dist/adapters/transcript/rounds.js +74 -0
  98. package/dist/adapters/transcript/rounds.js.map +1 -0
  99. package/dist/adapters/transcript/sections.d.ts +18 -0
  100. package/dist/adapters/transcript/sections.d.ts.map +1 -0
  101. package/dist/adapters/transcript/sections.js +69 -0
  102. package/dist/adapters/transcript/sections.js.map +1 -0
  103. package/dist/adapters/transcript/web.d.ts +12 -0
  104. package/dist/adapters/transcript/web.d.ts.map +1 -0
  105. package/dist/adapters/transcript/web.js +39 -0
  106. package/dist/adapters/transcript/web.js.map +1 -0
  107. package/dist/adapters/transcript/who.d.ts +15 -0
  108. package/dist/adapters/transcript/who.d.ts.map +1 -0
  109. package/dist/adapters/transcript/who.js +42 -0
  110. package/dist/adapters/transcript/who.js.map +1 -0
  111. package/dist/adapters/trends.d.ts +11 -0
  112. package/dist/adapters/trends.d.ts.map +1 -0
  113. package/dist/adapters/trends.js +316 -0
  114. package/dist/adapters/trends.js.map +1 -0
  115. package/dist/contraagent-ui.js +1028 -0
  116. package/dist/controllers/locale.d.ts +25 -0
  117. package/dist/controllers/locale.d.ts.map +1 -0
  118. package/dist/controllers/locale.js +33 -0
  119. package/dist/controllers/locale.js.map +1 -0
  120. package/dist/controllers/shortcuts.d.ts +29 -0
  121. package/dist/controllers/shortcuts.d.ts.map +1 -0
  122. package/dist/controllers/shortcuts.js +51 -0
  123. package/dist/controllers/shortcuts.js.map +1 -0
  124. package/dist/controllers/stream.d.ts +41 -0
  125. package/dist/controllers/stream.d.ts.map +1 -0
  126. package/dist/controllers/stream.js +90 -0
  127. package/dist/controllers/stream.js.map +1 -0
  128. package/dist/controllers/task-detail.d.ts +22 -0
  129. package/dist/controllers/task-detail.d.ts.map +1 -0
  130. package/dist/controllers/task-detail.js +50 -0
  131. package/dist/controllers/task-detail.js.map +1 -0
  132. package/dist/controllers/theme.d.ts +32 -0
  133. package/dist/controllers/theme.d.ts.map +1 -0
  134. package/dist/controllers/theme.js +56 -0
  135. package/dist/controllers/theme.js.map +1 -0
  136. package/dist/core/events.d.ts +107 -0
  137. package/dist/core/events.d.ts.map +1 -0
  138. package/dist/core/events.js +5 -0
  139. package/dist/core/events.js.map +1 -0
  140. package/dist/core/i18n.d.ts +21 -0
  141. package/dist/core/i18n.d.ts.map +1 -0
  142. package/dist/core/i18n.js +71 -0
  143. package/dist/core/i18n.js.map +1 -0
  144. package/dist/core/index.d.ts +5 -0
  145. package/dist/core/index.d.ts.map +1 -0
  146. package/dist/core/index.js +7 -0
  147. package/dist/core/index.js.map +1 -0
  148. package/dist/core/memory.d.ts +51 -0
  149. package/dist/core/memory.d.ts.map +1 -0
  150. package/dist/core/memory.js +174 -0
  151. package/dist/core/memory.js.map +1 -0
  152. package/dist/core/scroll.d.ts +21 -0
  153. package/dist/core/scroll.d.ts.map +1 -0
  154. package/dist/core/scroll.js +74 -0
  155. package/dist/core/scroll.js.map +1 -0
  156. package/dist/core/view-route.d.ts +62 -0
  157. package/dist/core/view-route.d.ts.map +1 -0
  158. package/dist/core/view-route.js +143 -0
  159. package/dist/core/view-route.js.map +1 -0
  160. package/dist/core/view-router.d.ts +27 -0
  161. package/dist/core/view-router.d.ts.map +1 -0
  162. package/dist/core/view-router.js +57 -0
  163. package/dist/core/view-router.js.map +1 -0
  164. package/dist/define/all.d.ts +13 -0
  165. package/dist/define/all.d.ts.map +1 -0
  166. package/dist/define/all.js +14 -0
  167. package/dist/define/all.js.map +1 -0
  168. package/dist/define/contracts.d.ts +2 -0
  169. package/dist/define/contracts.d.ts.map +1 -0
  170. package/dist/define/contracts.js +3 -0
  171. package/dist/define/contracts.js.map +1 -0
  172. package/dist/define/definitions.d.ts +3 -0
  173. package/dist/define/definitions.d.ts.map +1 -0
  174. package/dist/define/definitions.js +4 -0
  175. package/dist/define/definitions.js.map +1 -0
  176. package/dist/define/journal-table.d.ts +2 -0
  177. package/dist/define/journal-table.d.ts.map +1 -0
  178. package/dist/define/journal-table.js +3 -0
  179. package/dist/define/journal-table.js.map +1 -0
  180. package/dist/define/kpis.d.ts +2 -0
  181. package/dist/define/kpis.d.ts.map +1 -0
  182. package/dist/define/kpis.js +3 -0
  183. package/dist/define/kpis.js.map +1 -0
  184. package/dist/define/monitor.d.ts +2 -0
  185. package/dist/define/monitor.d.ts.map +1 -0
  186. package/dist/define/monitor.js +3 -0
  187. package/dist/define/monitor.js.map +1 -0
  188. package/dist/define/overview.d.ts +2 -0
  189. package/dist/define/overview.d.ts.map +1 -0
  190. package/dist/define/overview.js +3 -0
  191. package/dist/define/overview.js.map +1 -0
  192. package/dist/define/pipeline-graph.d.ts +2 -0
  193. package/dist/define/pipeline-graph.d.ts.map +1 -0
  194. package/dist/define/pipeline-graph.js +3 -0
  195. package/dist/define/pipeline-graph.js.map +1 -0
  196. package/dist/define/procs.d.ts +3 -0
  197. package/dist/define/procs.d.ts.map +1 -0
  198. package/dist/define/procs.js +4 -0
  199. package/dist/define/procs.js.map +1 -0
  200. package/dist/define/task-table.d.ts +2 -0
  201. package/dist/define/task-table.d.ts.map +1 -0
  202. package/dist/define/task-table.js +3 -0
  203. package/dist/define/task-table.js.map +1 -0
  204. package/dist/define/task-view.d.ts +2 -0
  205. package/dist/define/task-view.d.ts.map +1 -0
  206. package/dist/define/task-view.js +3 -0
  207. package/dist/define/task-view.js.map +1 -0
  208. package/dist/define/timeline.d.ts +2 -0
  209. package/dist/define/timeline.d.ts.map +1 -0
  210. package/dist/define/timeline.js +3 -0
  211. package/dist/define/timeline.js.map +1 -0
  212. package/dist/define/transcript.d.ts +2 -0
  213. package/dist/define/transcript.d.ts.map +1 -0
  214. package/dist/define/transcript.js +3 -0
  215. package/dist/define/transcript.js.map +1 -0
  216. package/dist/elements/lists/ca-contracts.d.ts +46 -0
  217. package/dist/elements/lists/ca-contracts.d.ts.map +1 -0
  218. package/dist/elements/lists/ca-contracts.js +199 -0
  219. package/dist/elements/lists/ca-contracts.js.map +1 -0
  220. package/dist/elements/lists/ca-definitions.d.ts +41 -0
  221. package/dist/elements/lists/ca-definitions.d.ts.map +1 -0
  222. package/dist/elements/lists/ca-definitions.js +182 -0
  223. package/dist/elements/lists/ca-definitions.js.map +1 -0
  224. package/dist/elements/lists/ca-journal-table.d.ts +37 -0
  225. package/dist/elements/lists/ca-journal-table.d.ts.map +1 -0
  226. package/dist/elements/lists/ca-journal-table.js +170 -0
  227. package/dist/elements/lists/ca-journal-table.js.map +1 -0
  228. package/dist/elements/lists/ca-panel-body.d.ts +42 -0
  229. package/dist/elements/lists/ca-panel-body.d.ts.map +1 -0
  230. package/dist/elements/lists/ca-panel-body.js +210 -0
  231. package/dist/elements/lists/ca-panel-body.js.map +1 -0
  232. package/dist/elements/lists/ca-panel-view.d.ts +21 -0
  233. package/dist/elements/lists/ca-panel-view.d.ts.map +1 -0
  234. package/dist/elements/lists/ca-panel-view.js +59 -0
  235. package/dist/elements/lists/ca-panel-view.js.map +1 -0
  236. package/dist/elements/lists/ca-proc-tree.d.ts +16 -0
  237. package/dist/elements/lists/ca-proc-tree.d.ts.map +1 -0
  238. package/dist/elements/lists/ca-proc-tree.js +63 -0
  239. package/dist/elements/lists/ca-proc-tree.js.map +1 -0
  240. package/dist/elements/lists/ca-procs-view.d.ts +27 -0
  241. package/dist/elements/lists/ca-procs-view.d.ts.map +1 -0
  242. package/dist/elements/lists/ca-procs-view.js +91 -0
  243. package/dist/elements/lists/ca-procs-view.js.map +1 -0
  244. package/dist/elements/lists/ca-task-table.d.ts +33 -0
  245. package/dist/elements/lists/ca-task-table.d.ts.map +1 -0
  246. package/dist/elements/lists/ca-task-table.js +115 -0
  247. package/dist/elements/lists/ca-task-table.js.map +1 -0
  248. package/dist/elements/lists/index.d.ts +9 -0
  249. package/dist/elements/lists/index.d.ts.map +1 -0
  250. package/dist/elements/lists/index.js +9 -0
  251. package/dist/elements/lists/index.js.map +1 -0
  252. package/dist/elements/overview/ca-kpis.d.ts +32 -0
  253. package/dist/elements/overview/ca-kpis.d.ts.map +1 -0
  254. package/dist/elements/overview/ca-kpis.js +62 -0
  255. package/dist/elements/overview/ca-kpis.js.map +1 -0
  256. package/dist/elements/overview/ca-model-usage.d.ts +25 -0
  257. package/dist/elements/overview/ca-model-usage.d.ts.map +1 -0
  258. package/dist/elements/overview/ca-model-usage.js +118 -0
  259. package/dist/elements/overview/ca-model-usage.js.map +1 -0
  260. package/dist/elements/overview/ca-overview.d.ts +67 -0
  261. package/dist/elements/overview/ca-overview.d.ts.map +1 -0
  262. package/dist/elements/overview/ca-overview.js +463 -0
  263. package/dist/elements/overview/ca-overview.js.map +1 -0
  264. package/dist/elements/overview/ca-pipeline-graph.d.ts +211 -0
  265. package/dist/elements/overview/ca-pipeline-graph.d.ts.map +1 -0
  266. package/dist/elements/overview/ca-pipeline-graph.js +616 -0
  267. package/dist/elements/overview/ca-pipeline-graph.js.map +1 -0
  268. package/dist/elements/overview/ca-quota.d.ts +42 -0
  269. package/dist/elements/overview/ca-quota.d.ts.map +1 -0
  270. package/dist/elements/overview/ca-quota.js +179 -0
  271. package/dist/elements/overview/ca-quota.js.map +1 -0
  272. package/dist/elements/overview/ca-run-driver.d.ts +33 -0
  273. package/dist/elements/overview/ca-run-driver.d.ts.map +1 -0
  274. package/dist/elements/overview/ca-run-driver.js +146 -0
  275. package/dist/elements/overview/ca-run-driver.js.map +1 -0
  276. package/dist/elements/overview/ca-services.d.ts +25 -0
  277. package/dist/elements/overview/ca-services.d.ts.map +1 -0
  278. package/dist/elements/overview/ca-services.js +77 -0
  279. package/dist/elements/overview/ca-services.js.map +1 -0
  280. package/dist/elements/overview/ca-spend-breakdown.d.ts +24 -0
  281. package/dist/elements/overview/ca-spend-breakdown.d.ts.map +1 -0
  282. package/dist/elements/overview/ca-spend-breakdown.js +108 -0
  283. package/dist/elements/overview/ca-spend-breakdown.js.map +1 -0
  284. package/dist/elements/overview/ca-timeline.d.ts +28 -0
  285. package/dist/elements/overview/ca-timeline.d.ts.map +1 -0
  286. package/dist/elements/overview/ca-timeline.js +72 -0
  287. package/dist/elements/overview/ca-timeline.js.map +1 -0
  288. package/dist/elements/overview/ca-workers.d.ts +23 -0
  289. package/dist/elements/overview/ca-workers.d.ts.map +1 -0
  290. package/dist/elements/overview/ca-workers.js +86 -0
  291. package/dist/elements/overview/ca-workers.js.map +1 -0
  292. package/dist/elements/overview/index.d.ts +11 -0
  293. package/dist/elements/overview/index.d.ts.map +1 -0
  294. package/dist/elements/overview/index.js +11 -0
  295. package/dist/elements/overview/index.js.map +1 -0
  296. package/dist/elements/overview/pipeline-graph/actions.d.ts +16 -0
  297. package/dist/elements/overview/pipeline-graph/actions.d.ts.map +1 -0
  298. package/dist/elements/overview/pipeline-graph/actions.js +42 -0
  299. package/dist/elements/overview/pipeline-graph/actions.js.map +1 -0
  300. package/dist/elements/overview/pipeline-graph/crumbs.d.ts +15 -0
  301. package/dist/elements/overview/pipeline-graph/crumbs.d.ts.map +1 -0
  302. package/dist/elements/overview/pipeline-graph/crumbs.js +70 -0
  303. package/dist/elements/overview/pipeline-graph/crumbs.js.map +1 -0
  304. package/dist/elements/overview/pipeline-graph/host.d.ts +24 -0
  305. package/dist/elements/overview/pipeline-graph/host.d.ts.map +1 -0
  306. package/dist/elements/overview/pipeline-graph/host.js +2 -0
  307. package/dist/elements/overview/pipeline-graph/host.js.map +1 -0
  308. package/dist/elements/overview/pipeline-graph/inspector.d.ts +5 -0
  309. package/dist/elements/overview/pipeline-graph/inspector.d.ts.map +1 -0
  310. package/dist/elements/overview/pipeline-graph/inspector.js +100 -0
  311. package/dist/elements/overview/pipeline-graph/inspector.js.map +1 -0
  312. package/dist/elements/overview/pipeline-graph/outline.d.ts +53 -0
  313. package/dist/elements/overview/pipeline-graph/outline.d.ts.map +1 -0
  314. package/dist/elements/overview/pipeline-graph/outline.js +111 -0
  315. package/dist/elements/overview/pipeline-graph/outline.js.map +1 -0
  316. package/dist/elements/overview/pipeline-graph/strings.d.ts +11 -0
  317. package/dist/elements/overview/pipeline-graph/strings.d.ts.map +1 -0
  318. package/dist/elements/overview/pipeline-graph/strings.js +49 -0
  319. package/dist/elements/overview/pipeline-graph/strings.js.map +1 -0
  320. package/dist/elements/overview/pipeline-graph/styles.d.ts +4 -0
  321. package/dist/elements/overview/pipeline-graph/styles.d.ts.map +1 -0
  322. package/dist/elements/overview/pipeline-graph/styles.js +96 -0
  323. package/dist/elements/overview/pipeline-graph/styles.js.map +1 -0
  324. package/dist/elements/shared/ca-definition.d.ts +26 -0
  325. package/dist/elements/shared/ca-definition.d.ts.map +1 -0
  326. package/dist/elements/shared/ca-definition.js +202 -0
  327. package/dist/elements/shared/ca-definition.js.map +1 -0
  328. package/dist/elements/shared/contract-parts.d.ts +35 -0
  329. package/dist/elements/shared/contract-parts.d.ts.map +1 -0
  330. package/dist/elements/shared/contract-parts.js +167 -0
  331. package/dist/elements/shared/contract-parts.js.map +1 -0
  332. package/dist/elements/shared/file-card.d.ts +17 -0
  333. package/dist/elements/shared/file-card.d.ts.map +1 -0
  334. package/dist/elements/shared/file-card.js +37 -0
  335. package/dist/elements/shared/file-card.js.map +1 -0
  336. package/dist/elements/shared/prompt-text.d.ts +5 -0
  337. package/dist/elements/shared/prompt-text.d.ts.map +1 -0
  338. package/dist/elements/shared/prompt-text.js +13 -0
  339. package/dist/elements/shared/prompt-text.js.map +1 -0
  340. package/dist/elements/shared/task-chip.d.ts +10 -0
  341. package/dist/elements/shared/task-chip.d.ts.map +1 -0
  342. package/dist/elements/shared/task-chip.js +19 -0
  343. package/dist/elements/shared/task-chip.js.map +1 -0
  344. package/dist/elements/shell/ca-clock.d.ts +13 -0
  345. package/dist/elements/shell/ca-clock.d.ts.map +1 -0
  346. package/dist/elements/shell/ca-clock.js +30 -0
  347. package/dist/elements/shell/ca-clock.js.map +1 -0
  348. package/dist/elements/shell/ca-hosts.d.ts +21 -0
  349. package/dist/elements/shell/ca-hosts.d.ts.map +1 -0
  350. package/dist/elements/shell/ca-hosts.js +97 -0
  351. package/dist/elements/shell/ca-hosts.js.map +1 -0
  352. package/dist/elements/shell/ca-monitor.d.ts +182 -0
  353. package/dist/elements/shell/ca-monitor.d.ts.map +1 -0
  354. package/dist/elements/shell/ca-monitor.js +549 -0
  355. package/dist/elements/shell/ca-monitor.js.map +1 -0
  356. package/dist/elements/shell/ca-run-picker.d.ts +71 -0
  357. package/dist/elements/shell/ca-run-picker.d.ts.map +1 -0
  358. package/dist/elements/shell/ca-run-picker.js +313 -0
  359. package/dist/elements/shell/ca-run-picker.js.map +1 -0
  360. package/dist/elements/shell/ca-theme-switch.d.ts +36 -0
  361. package/dist/elements/shell/ca-theme-switch.d.ts.map +1 -0
  362. package/dist/elements/shell/ca-theme-switch.js +186 -0
  363. package/dist/elements/shell/ca-theme-switch.js.map +1 -0
  364. package/dist/elements/shell/ca-toasts.d.ts +23 -0
  365. package/dist/elements/shell/ca-toasts.d.ts.map +1 -0
  366. package/dist/elements/shell/ca-toasts.js +88 -0
  367. package/dist/elements/shell/ca-toasts.js.map +1 -0
  368. package/dist/elements/shell/header.d.ts +13 -0
  369. package/dist/elements/shell/header.d.ts.map +1 -0
  370. package/dist/elements/shell/header.js +38 -0
  371. package/dist/elements/shell/header.js.map +1 -0
  372. package/dist/elements/shell/styles.d.ts +2 -0
  373. package/dist/elements/shell/styles.d.ts.map +1 -0
  374. package/dist/elements/shell/styles.js +72 -0
  375. package/dist/elements/shell/styles.js.map +1 -0
  376. package/dist/elements/shell/tabs.d.ts +32 -0
  377. package/dist/elements/shell/tabs.d.ts.map +1 -0
  378. package/dist/elements/shell/tabs.js +125 -0
  379. package/dist/elements/shell/tabs.js.map +1 -0
  380. package/dist/elements/shell/views.d.ts +27 -0
  381. package/dist/elements/shell/views.d.ts.map +1 -0
  382. package/dist/elements/shell/views.js +55 -0
  383. package/dist/elements/shell/views.js.map +1 -0
  384. package/dist/elements/task/ca-task-view.d.ts +55 -0
  385. package/dist/elements/task/ca-task-view.d.ts.map +1 -0
  386. package/dist/elements/task/ca-task-view.js +199 -0
  387. package/dist/elements/task/ca-task-view.js.map +1 -0
  388. package/dist/elements/task/ca-transcript.d.ts +74 -0
  389. package/dist/elements/task/ca-transcript.d.ts.map +1 -0
  390. package/dist/elements/task/ca-transcript.js +241 -0
  391. package/dist/elements/task/ca-transcript.js.map +1 -0
  392. package/dist/elements/task/context.d.ts +57 -0
  393. package/dist/elements/task/context.d.ts.map +1 -0
  394. package/dist/elements/task/context.js +61 -0
  395. package/dist/elements/task/context.js.map +1 -0
  396. package/dist/elements/task/header.d.ts +9 -0
  397. package/dist/elements/task/header.d.ts.map +1 -0
  398. package/dist/elements/task/header.js +291 -0
  399. package/dist/elements/task/header.js.map +1 -0
  400. package/dist/elements/task/index.d.ts +3 -0
  401. package/dist/elements/task/index.d.ts.map +1 -0
  402. package/dist/elements/task/index.js +3 -0
  403. package/dist/elements/task/index.js.map +1 -0
  404. package/dist/elements/task/inputs.d.ts +28 -0
  405. package/dist/elements/task/inputs.d.ts.map +1 -0
  406. package/dist/elements/task/inputs.js +27 -0
  407. package/dist/elements/task/inputs.js.map +1 -0
  408. package/dist/elements/task/panes/definition.d.ts +5 -0
  409. package/dist/elements/task/panes/definition.d.ts.map +1 -0
  410. package/dist/elements/task/panes/definition.js +5 -0
  411. package/dist/elements/task/panes/definition.js.map +1 -0
  412. package/dist/elements/task/panes/io.d.ts +8 -0
  413. package/dist/elements/task/panes/io.d.ts.map +1 -0
  414. package/dist/elements/task/panes/io.js +184 -0
  415. package/dist/elements/task/panes/io.js.map +1 -0
  416. package/dist/elements/task/panes/transcript.d.ts +5 -0
  417. package/dist/elements/task/panes/transcript.d.ts.map +1 -0
  418. package/dist/elements/task/panes/transcript.js +29 -0
  419. package/dist/elements/task/panes/transcript.js.map +1 -0
  420. package/dist/elements/task/styles.d.ts +2 -0
  421. package/dist/elements/task/styles.d.ts.map +1 -0
  422. package/dist/elements/task/styles.js +66 -0
  423. package/dist/elements/task/styles.js.map +1 -0
  424. package/dist/elements/trends/ca-trends.d.ts +55 -0
  425. package/dist/elements/trends/ca-trends.d.ts.map +1 -0
  426. package/dist/elements/trends/ca-trends.js +213 -0
  427. package/dist/elements/trends/ca-trends.js.map +1 -0
  428. package/dist/index.d.ts +14 -0
  429. package/dist/index.d.ts.map +1 -0
  430. package/dist/index.js +22 -0
  431. package/dist/index.js.map +1 -0
  432. package/dist/lib/tone.d.ts +29 -0
  433. package/dist/lib/tone.d.ts.map +1 -0
  434. package/dist/lib/tone.js +97 -0
  435. package/dist/lib/tone.js.map +1 -0
  436. package/dist/lib/trends.d.ts +15 -0
  437. package/dist/lib/trends.d.ts.map +1 -0
  438. package/dist/lib/trends.js +36 -0
  439. package/dist/lib/trends.js.map +1 -0
  440. package/dist/locales/codes.d.ts +14 -0
  441. package/dist/locales/codes.d.ts.map +1 -0
  442. package/dist/locales/codes.js +21 -0
  443. package/dist/locales/codes.js.map +1 -0
  444. package/dist/locales/ja.d.ts +785 -0
  445. package/dist/locales/ja.d.ts.map +1 -0
  446. package/dist/locales/ja.js +791 -0
  447. package/dist/locales/ja.js.map +1 -0
  448. package/dist/words/api-error.d.ts +4 -0
  449. package/dist/words/api-error.d.ts.map +1 -0
  450. package/dist/words/api-error.js +13 -0
  451. package/dist/words/api-error.js.map +1 -0
  452. package/dist/words/attempts.d.ts +17 -0
  453. package/dist/words/attempts.d.ts.map +1 -0
  454. package/dist/words/attempts.js +26 -0
  455. package/dist/words/attempts.js.map +1 -0
  456. package/dist/words/causes.d.ts +33 -0
  457. package/dist/words/causes.d.ts.map +1 -0
  458. package/dist/words/causes.js +58 -0
  459. package/dist/words/causes.js.map +1 -0
  460. package/dist/words/changes.d.ts +9 -0
  461. package/dist/words/changes.d.ts.map +1 -0
  462. package/dist/words/changes.js +23 -0
  463. package/dist/words/changes.js.map +1 -0
  464. package/dist/words/claims.d.ts +9 -0
  465. package/dist/words/claims.d.ts.map +1 -0
  466. package/dist/words/claims.js +12 -0
  467. package/dist/words/claims.js.map +1 -0
  468. package/dist/words/context.d.ts +18 -0
  469. package/dist/words/context.d.ts.map +1 -0
  470. package/dist/words/context.js +39 -0
  471. package/dist/words/context.js.map +1 -0
  472. package/dist/words/contract.d.ts +25 -0
  473. package/dist/words/contract.d.ts.map +1 -0
  474. package/dist/words/contract.js +52 -0
  475. package/dist/words/contract.js.map +1 -0
  476. package/dist/words/credential.d.ts +5 -0
  477. package/dist/words/credential.d.ts.map +1 -0
  478. package/dist/words/credential.js +7 -0
  479. package/dist/words/credential.js.map +1 -0
  480. package/dist/words/executor.d.ts +12 -0
  481. package/dist/words/executor.d.ts.map +1 -0
  482. package/dist/words/executor.js +20 -0
  483. package/dist/words/executor.js.map +1 -0
  484. package/dist/words/export.d.ts +8 -0
  485. package/dist/words/export.d.ts.map +1 -0
  486. package/dist/words/export.js +17 -0
  487. package/dist/words/export.js.map +1 -0
  488. package/dist/words/format.d.ts +36 -0
  489. package/dist/words/format.d.ts.map +1 -0
  490. package/dist/words/format.js +109 -0
  491. package/dist/words/format.js.map +1 -0
  492. package/dist/words/hops.d.ts +12 -0
  493. package/dist/words/hops.d.ts.map +1 -0
  494. package/dist/words/hops.js +27 -0
  495. package/dist/words/hops.js.map +1 -0
  496. package/dist/words/hosts.d.ts +18 -0
  497. package/dist/words/hosts.d.ts.map +1 -0
  498. package/dist/words/hosts.js +22 -0
  499. package/dist/words/hosts.js.map +1 -0
  500. package/dist/words/index.d.ts +28 -0
  501. package/dist/words/index.d.ts.map +1 -0
  502. package/dist/words/index.js +32 -0
  503. package/dist/words/index.js.map +1 -0
  504. package/dist/words/models.d.ts +10 -0
  505. package/dist/words/models.d.ts.map +1 -0
  506. package/dist/words/models.js +45 -0
  507. package/dist/words/models.js.map +1 -0
  508. package/dist/words/outcome.d.ts +14 -0
  509. package/dist/words/outcome.d.ts.map +1 -0
  510. package/dist/words/outcome.js +58 -0
  511. package/dist/words/outcome.js.map +1 -0
  512. package/dist/words/panels.d.ts +17 -0
  513. package/dist/words/panels.d.ts.map +1 -0
  514. package/dist/words/panels.js +63 -0
  515. package/dist/words/panels.js.map +1 -0
  516. package/dist/words/passes.d.ts +11 -0
  517. package/dist/words/passes.d.ts.map +1 -0
  518. package/dist/words/passes.js +13 -0
  519. package/dist/words/passes.js.map +1 -0
  520. package/dist/words/preflight.d.ts +28 -0
  521. package/dist/words/preflight.d.ts.map +1 -0
  522. package/dist/words/preflight.js +30 -0
  523. package/dist/words/preflight.js.map +1 -0
  524. package/dist/words/priority.d.ts +5 -0
  525. package/dist/words/priority.d.ts.map +1 -0
  526. package/dist/words/priority.js +7 -0
  527. package/dist/words/priority.js.map +1 -0
  528. package/dist/words/prompt.d.ts +10 -0
  529. package/dist/words/prompt.d.ts.map +1 -0
  530. package/dist/words/prompt.js +17 -0
  531. package/dist/words/prompt.js.map +1 -0
  532. package/dist/words/quota.d.ts +35 -0
  533. package/dist/words/quota.d.ts.map +1 -0
  534. package/dist/words/quota.js +102 -0
  535. package/dist/words/quota.js.map +1 -0
  536. package/dist/words/rests.d.ts +26 -0
  537. package/dist/words/rests.d.ts.map +1 -0
  538. package/dist/words/rests.js +77 -0
  539. package/dist/words/rests.js.map +1 -0
  540. package/dist/words/rounds.d.ts +14 -0
  541. package/dist/words/rounds.d.ts.map +1 -0
  542. package/dist/words/rounds.js +60 -0
  543. package/dist/words/rounds.js.map +1 -0
  544. package/dist/words/row-extras.d.ts +7 -0
  545. package/dist/words/row-extras.d.ts.map +1 -0
  546. package/dist/words/row-extras.js +26 -0
  547. package/dist/words/row-extras.js.map +1 -0
  548. package/dist/words/run-line.d.ts +40 -0
  549. package/dist/words/run-line.d.ts.map +1 -0
  550. package/dist/words/run-line.js +66 -0
  551. package/dist/words/run-line.js.map +1 -0
  552. package/dist/words/services.d.ts +16 -0
  553. package/dist/words/services.d.ts.map +1 -0
  554. package/dist/words/services.js +45 -0
  555. package/dist/words/services.js.map +1 -0
  556. package/dist/words/stop.d.ts +6 -0
  557. package/dist/words/stop.d.ts.map +1 -0
  558. package/dist/words/stop.js +69 -0
  559. package/dist/words/stop.js.map +1 -0
  560. package/dist/words/table.d.ts +4 -0
  561. package/dist/words/table.d.ts.map +1 -0
  562. package/dist/words/table.js +8 -0
  563. package/dist/words/table.js.map +1 -0
  564. package/dist/words/task-definition.d.ts +23 -0
  565. package/dist/words/task-definition.d.ts.map +1 -0
  566. package/dist/words/task-definition.js +27 -0
  567. package/dist/words/task-definition.js.map +1 -0
  568. package/dist/words/time-box.d.ts +8 -0
  569. package/dist/words/time-box.d.ts.map +1 -0
  570. package/dist/words/time-box.js +12 -0
  571. package/dist/words/time-box.js.map +1 -0
  572. package/dist/words/trends.d.ts +86 -0
  573. package/dist/words/trends.d.ts.map +1 -0
  574. package/dist/words/trends.js +104 -0
  575. package/dist/words/trends.js.map +1 -0
  576. package/docs/embed.md +121 -0
  577. package/docs/events.md +38 -0
  578. package/docs/examples/embed.html +31 -0
  579. package/docs/examples/journal.ts +32 -0
  580. package/docs/examples/live-transcript.ts +22 -0
  581. package/docs/examples/vite/index.html +30 -0
  582. package/docs/examples/vite/main.ts +23 -0
  583. package/docs/languages.md +48 -0
  584. package/docs/live-data.md +17 -0
  585. package/docs/theming.md +21 -0
  586. package/docs/tsconfig.json +14 -0
  587. package/package.json +131 -4
  588. package/src/adapters/check-rows.ts +81 -0
  589. package/src/adapters/filters.ts +76 -0
  590. package/src/adapters/graph/compound.ts +359 -0
  591. package/src/adapters/graph/flow-index.ts +154 -0
  592. package/src/adapters/graph/highlight.ts +40 -0
  593. package/src/adapters/graph/input.ts +236 -0
  594. package/src/adapters/graph/layer.ts +92 -0
  595. package/src/adapters/graph/matrix.ts +133 -0
  596. package/src/adapters/graph/plans.fixture.ts +194 -0
  597. package/src/adapters/graph/project.ts +358 -0
  598. package/src/adapters/graph/selection.ts +54 -0
  599. package/src/adapters/graph/states.ts +10 -0
  600. package/src/adapters/graph/types.ts +148 -0
  601. package/src/adapters/graph/words.ts +146 -0
  602. package/src/adapters/index.ts +22 -0
  603. package/src/adapters/journal-columns.ts +200 -0
  604. package/src/adapters/kpi-tiles.ts +211 -0
  605. package/src/adapters/lanes.ts +98 -0
  606. package/src/adapters/model-shares.ts +62 -0
  607. package/src/adapters/panel-body.ts +112 -0
  608. package/src/adapters/preflight.ts +27 -0
  609. package/src/adapters/task-columns.ts +120 -0
  610. package/src/adapters/transcript/index.ts +14 -0
  611. package/src/adapters/transcript/model.ts +156 -0
  612. package/src/adapters/transcript/rounds.ts +86 -0
  613. package/src/adapters/transcript/sections.ts +82 -0
  614. package/src/adapters/transcript/web.ts +40 -0
  615. package/src/adapters/transcript/who.ts +53 -0
  616. package/src/adapters/trends.ts +337 -0
  617. package/src/controllers/locale.ts +47 -0
  618. package/src/controllers/shortcuts.ts +69 -0
  619. package/src/controllers/stream.ts +103 -0
  620. package/src/controllers/task-detail.ts +54 -0
  621. package/src/controllers/theme.ts +73 -0
  622. package/src/core/events.ts +120 -0
  623. package/src/core/i18n.ts +76 -0
  624. package/src/core/index.ts +6 -0
  625. package/src/core/memory.ts +177 -0
  626. package/src/core/scroll.ts +73 -0
  627. package/src/core/view-route.ts +177 -0
  628. package/src/core/view-router.ts +66 -0
  629. package/src/define/all.ts +13 -0
  630. package/src/define/contracts.ts +2 -0
  631. package/src/define/definitions.ts +3 -0
  632. package/src/define/journal-table.ts +2 -0
  633. package/src/define/kpis.ts +2 -0
  634. package/src/define/monitor.ts +2 -0
  635. package/src/define/overview.ts +2 -0
  636. package/src/define/pipeline-graph.ts +2 -0
  637. package/src/define/procs.ts +3 -0
  638. package/src/define/task-table.ts +2 -0
  639. package/src/define/task-view.ts +2 -0
  640. package/src/define/timeline.ts +2 -0
  641. package/src/define/transcript.ts +2 -0
  642. package/src/elements/lists/ca-contracts.ts +204 -0
  643. package/src/elements/lists/ca-definitions.ts +170 -0
  644. package/src/elements/lists/ca-journal-table.ts +141 -0
  645. package/src/elements/lists/ca-panel-body.ts +200 -0
  646. package/src/elements/lists/ca-panel-view.ts +50 -0
  647. package/src/elements/lists/ca-proc-tree.ts +57 -0
  648. package/src/elements/lists/ca-procs-view.ts +89 -0
  649. package/src/elements/lists/ca-task-table.ts +94 -0
  650. package/src/elements/lists/index.ts +8 -0
  651. package/src/elements/overview/ca-kpis.ts +51 -0
  652. package/src/elements/overview/ca-model-usage.ts +113 -0
  653. package/src/elements/overview/ca-overview.ts +499 -0
  654. package/src/elements/overview/ca-pipeline-graph.ts +617 -0
  655. package/src/elements/overview/ca-quota.ts +164 -0
  656. package/src/elements/overview/ca-run-driver.ts +140 -0
  657. package/src/elements/overview/ca-services.ts +66 -0
  658. package/src/elements/overview/ca-spend-breakdown.ts +107 -0
  659. package/src/elements/overview/ca-timeline.ts +57 -0
  660. package/src/elements/overview/ca-workers.ts +82 -0
  661. package/src/elements/overview/index.ts +10 -0
  662. package/src/elements/overview/pipeline-graph/actions.ts +45 -0
  663. package/src/elements/overview/pipeline-graph/crumbs.ts +75 -0
  664. package/src/elements/overview/pipeline-graph/host.ts +26 -0
  665. package/src/elements/overview/pipeline-graph/inspector.ts +104 -0
  666. package/src/elements/overview/pipeline-graph/outline.ts +150 -0
  667. package/src/elements/overview/pipeline-graph/strings.ts +53 -0
  668. package/src/elements/overview/pipeline-graph/styles.ts +97 -0
  669. package/src/elements/shared/ca-definition.ts +206 -0
  670. package/src/elements/shared/contract-parts.ts +174 -0
  671. package/src/elements/shared/file-card.ts +49 -0
  672. package/src/elements/shared/prompt-text.ts +13 -0
  673. package/src/elements/shared/task-chip.ts +18 -0
  674. package/src/elements/shell/ca-clock.ts +27 -0
  675. package/src/elements/shell/ca-hosts.ts +93 -0
  676. package/src/elements/shell/ca-monitor.ts +528 -0
  677. package/src/elements/shell/ca-run-picker.ts +284 -0
  678. package/src/elements/shell/ca-theme-switch.ts +170 -0
  679. package/src/elements/shell/ca-toasts.ts +100 -0
  680. package/src/elements/shell/header.ts +45 -0
  681. package/src/elements/shell/styles.ts +72 -0
  682. package/src/elements/shell/tabs.ts +143 -0
  683. package/src/elements/shell/views.ts +67 -0
  684. package/src/elements/task/ca-task-view.ts +157 -0
  685. package/src/elements/task/ca-transcript.ts +214 -0
  686. package/src/elements/task/context.ts +105 -0
  687. package/src/elements/task/header.ts +296 -0
  688. package/src/elements/task/index.ts +2 -0
  689. package/src/elements/task/inputs.ts +46 -0
  690. package/src/elements/task/panes/definition.ts +7 -0
  691. package/src/elements/task/panes/io.ts +190 -0
  692. package/src/elements/task/panes/transcript.ts +29 -0
  693. package/src/elements/task/styles.ts +66 -0
  694. package/src/elements/trends/ca-trends.ts +204 -0
  695. package/src/index.ts +23 -0
  696. package/src/lib/tone.ts +109 -0
  697. package/src/lib/trends.ts +44 -0
  698. package/src/locales/codes.ts +23 -0
  699. package/src/locales/ja.ts +795 -0
  700. package/src/words/api-error.ts +17 -0
  701. package/src/words/attempts.ts +28 -0
  702. package/src/words/causes.ts +67 -0
  703. package/src/words/changes.ts +29 -0
  704. package/src/words/claims.ts +16 -0
  705. package/src/words/context.ts +47 -0
  706. package/src/words/contract.ts +63 -0
  707. package/src/words/credential.ts +8 -0
  708. package/src/words/executor.ts +22 -0
  709. package/src/words/export.ts +22 -0
  710. package/src/words/format.ts +107 -0
  711. package/src/words/hops.ts +30 -0
  712. package/src/words/hosts.ts +37 -0
  713. package/src/words/index.ts +31 -0
  714. package/src/words/models.ts +50 -0
  715. package/src/words/outcome.ts +61 -0
  716. package/src/words/panels.ts +71 -0
  717. package/src/words/passes.ts +18 -0
  718. package/src/words/preflight.ts +53 -0
  719. package/src/words/priority.ts +8 -0
  720. package/src/words/prompt.ts +20 -0
  721. package/src/words/quota.ts +108 -0
  722. package/src/words/rests.ts +96 -0
  723. package/src/words/rounds.ts +56 -0
  724. package/src/words/row-extras.ts +24 -0
  725. package/src/words/run-line.ts +77 -0
  726. package/src/words/services.ts +57 -0
  727. package/src/words/stop.ts +65 -0
  728. package/src/words/table.ts +10 -0
  729. package/src/words/task-definition.ts +37 -0
  730. package/src/words/time-box.ts +21 -0
  731. package/src/words/trends.ts +118 -0
@@ -0,0 +1,25 @@
1
+ import type { ReactiveController, ReactiveControllerHost } from 'lit';
2
+ import { type Locale } from '../core/i18n.js';
3
+ export interface LocaleOptions {
4
+ /** The element's `locale` property; '' for the reader's earlier choice, else the browser's language. */
5
+ locale: () => Locale | '';
6
+ /** The element is the page: `<html lang>` follows the language too. */
7
+ pageWide: () => boolean;
8
+ }
9
+ /**
10
+ * Sets the language when the host connects and when its `locale` changes, and
11
+ * sets `lang` on the host (and on `<html>` when the host is the page) after
12
+ * every update.
13
+ */
14
+ export declare class LocaleController implements ReactiveController {
15
+ private readonly host;
16
+ private readonly opts;
17
+ /** The `locale` the last update saw; undefined before the first. */
18
+ private seen;
19
+ /** Settles when the language chosen at connect is loaded (a locale's module loads when first chosen). */
20
+ ready: Promise<void>;
21
+ constructor(host: ReactiveControllerHost & HTMLElement, opts: LocaleOptions);
22
+ hostConnected(): void;
23
+ hostUpdated(): void;
24
+ }
25
+ //# sourceMappingURL=locale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.d.ts","sourceRoot":"","sources":["../../src/controllers/locale.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AACtE,OAAO,EAAmD,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE/F,MAAM,WAAW,aAAa;IAC5B,wGAAwG;IACxG,MAAM,EAAE,MAAM,MAAM,GAAG,EAAE,CAAC;IAC1B,uEAAuE;IACvE,QAAQ,EAAE,MAAM,OAAO,CAAC;CACzB;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,kBAAkB;IAOvD,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAPvB,oEAAoE;IACpE,OAAO,CAAC,IAAI,CAA0B;IACtC,yGAAyG;IACzG,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAqB;gBAGtB,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAC1C,IAAI,EAAE,aAAa;IAKtC,aAAa,IAAI,IAAI;IAKrB,WAAW,IAAI,IAAI;CAWpB"}
@@ -0,0 +1,33 @@
1
+ import { getLocale, isLocale, preferredLocale, setLocale } from '../core/i18n.js';
2
+ /**
3
+ * Sets the language when the host connects and when its `locale` changes, and
4
+ * sets `lang` on the host (and on `<html>` when the host is the page) after
5
+ * every update.
6
+ */
7
+ export class LocaleController {
8
+ constructor(host, opts) {
9
+ this.host = host;
10
+ this.opts = opts;
11
+ /** Settles when the language chosen at connect is loaded (a locale's module loads when first chosen). */
12
+ this.ready = Promise.resolve();
13
+ host.addController(this);
14
+ }
15
+ hostConnected() {
16
+ const l = this.opts.locale();
17
+ this.ready = setLocale(isLocale(l) ? l : preferredLocale()).catch(() => { });
18
+ }
19
+ hostUpdated() {
20
+ const l = this.opts.locale();
21
+ if (l !== this.seen) {
22
+ this.seen = l;
23
+ if (isLocale(l) && l !== getLocale())
24
+ void setLocale(l);
25
+ }
26
+ // A page that is the monitor speaks its language; an embedded monitor leaves the host's <html lang> alone.
27
+ if (this.opts.pageWide())
28
+ document.documentElement.lang = getLocale();
29
+ // Its own text is in its language either way (line breaking between Japanese phrases reads it).
30
+ this.host.lang = getLocale();
31
+ }
32
+ }
33
+ //# sourceMappingURL=locale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/controllers/locale.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAe,MAAM,iBAAiB,CAAC;AAS/F;;;;GAIG;AACH,MAAM,OAAO,gBAAgB;IAM3B,YACmB,IAA0C,EAC1C,IAAmB;QADnB,SAAI,GAAJ,IAAI,CAAsC;QAC1C,SAAI,GAAJ,IAAI,CAAe;QALtC,yGAAyG;QACzG,UAAK,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;QAMvC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,aAAa;QACX,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,WAAW;QACT,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;YACd,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;gBAAE,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC;QACD,2GAA2G;QAC3G,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAAE,QAAQ,CAAC,eAAe,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC;QACtE,gGAAgG;QAChG,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC;IAC/B,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ import type { ReactiveController, ReactiveControllerHost } from 'lit';
2
+ /**
3
+ * Where an element's single-key shortcuts work: `page`, anywhere in the page
4
+ * (an element that is the page); `element`, only while the focus is inside the
5
+ * element (an element embedded in another page); `off`, nowhere.
6
+ */
7
+ export type ShortcutScope = 'page' | 'element' | 'off';
8
+ export declare const isShortcutScope: (s: unknown) => s is ShortcutScope;
9
+ /**
10
+ * Calls `onKey` for each key the reader presses in the scope `scope()` names,
11
+ * while the host is connected; never in a text field, with Ctrl, Alt or Meta,
12
+ * or for a key another listener already handled (`defaultPrevented`).
13
+ */
14
+ export declare class ShortcutsController implements ReactiveController {
15
+ private readonly host;
16
+ private readonly onKey;
17
+ private readonly scope;
18
+ /** The target listened on now, and its scope. */
19
+ private bound;
20
+ private boundScope;
21
+ private readonly listener;
22
+ constructor(host: ReactiveControllerHost & HTMLElement, onKey: (e: KeyboardEvent) => void, scope: () => ShortcutScope);
23
+ hostConnected(): void;
24
+ hostUpdated(): void;
25
+ hostDisconnected(): void;
26
+ private bind;
27
+ private unbind;
28
+ }
29
+ //# sourceMappingURL=shortcuts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortcuts.d.ts","sourceRoot":"","sources":["../../src/controllers/shortcuts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAEtE;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC;AAEvD,eAAO,MAAM,eAAe,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,aAA+D,CAAC;AAQlH;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,kBAAkB;IAY1D,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAbxB,iDAAiD;IACjD,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,UAAU,CAAwB;IAE1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAIvB;gBAGiB,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAC1C,KAAK,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,EACjC,KAAK,EAAE,MAAM,aAAa;IAK7C,aAAa,IAAI,IAAI;IAIrB,WAAW,IAAI,IAAI;IAInB,gBAAgB,IAAI,IAAI;IAIxB,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,MAAM;CAKf"}
@@ -0,0 +1,51 @@
1
+ export const isShortcutScope = (s) => s === 'page' || s === 'element' || s === 'off';
2
+ /** Whether the key went to something the reader types into. */
3
+ function typing(e) {
4
+ const t = e.composedPath()[0];
5
+ return t instanceof HTMLElement && (t.isContentEditable || t.matches('input, select, textarea, [contenteditable]:not([contenteditable="false"])'));
6
+ }
7
+ /**
8
+ * Calls `onKey` for each key the reader presses in the scope `scope()` names,
9
+ * while the host is connected; never in a text field, with Ctrl, Alt or Meta,
10
+ * or for a key another listener already handled (`defaultPrevented`).
11
+ */
12
+ export class ShortcutsController {
13
+ constructor(host, onKey, scope) {
14
+ this.host = host;
15
+ this.onKey = onKey;
16
+ this.scope = scope;
17
+ /** The target listened on now, and its scope. */
18
+ this.bound = null;
19
+ this.boundScope = 'off';
20
+ this.listener = (e) => {
21
+ const k = e;
22
+ if (k.defaultPrevented || typing(k) || k.metaKey || k.ctrlKey || k.altKey)
23
+ return;
24
+ this.onKey(k);
25
+ };
26
+ host.addController(this);
27
+ }
28
+ hostConnected() {
29
+ this.bind();
30
+ }
31
+ hostUpdated() {
32
+ if (this.scope() !== this.boundScope)
33
+ this.bind();
34
+ }
35
+ hostDisconnected() {
36
+ this.unbind();
37
+ }
38
+ bind() {
39
+ this.unbind();
40
+ const scope = this.scope();
41
+ this.boundScope = scope;
42
+ this.bound = scope === 'page' ? document : scope === 'element' ? this.host : null;
43
+ this.bound?.addEventListener('keydown', this.listener);
44
+ }
45
+ unbind() {
46
+ this.bound?.removeEventListener('keydown', this.listener);
47
+ this.bound = null;
48
+ this.boundScope = 'off';
49
+ }
50
+ }
51
+ //# sourceMappingURL=shortcuts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortcuts.js","sourceRoot":"","sources":["../../src/controllers/shortcuts.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAU,EAAsB,EAAE,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,KAAK,CAAC;AAElH,+DAA+D;AAC/D,SAAS,MAAM,CAAC,CAAgB;IAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9B,OAAO,CAAC,YAAY,WAAW,IAAI,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,OAAO,CAAC,2EAA2E,CAAC,CAAC,CAAC;AACrJ,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,mBAAmB;IAW9B,YACmB,IAA0C,EAC1C,KAAiC,EACjC,KAA0B;QAF1B,SAAI,GAAJ,IAAI,CAAsC;QAC1C,UAAK,GAAL,KAAK,CAA4B;QACjC,UAAK,GAAL,KAAK,CAAqB;QAb7C,iDAAiD;QACzC,UAAK,GAAuB,IAAI,CAAC;QACjC,eAAU,GAAkB,KAAK,CAAC;QAEzB,aAAQ,GAAG,CAAC,CAAQ,EAAQ,EAAE;YAC7C,MAAM,CAAC,GAAG,CAAkB,CAAC;YAC7B,IAAI,CAAC,CAAC,gBAAgB,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO;YAClF,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC;QAOA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,WAAW;QACT,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IACpD,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAEO,IAAI;QACV,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAClF,IAAI,CAAC,KAAK,EAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAEO,MAAM;QACZ,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;CACF"}
@@ -0,0 +1,41 @@
1
+ import { type MonitorClient, type TranscriptEvent } from '@contraagent/api';
2
+ import type { ReactiveController, ReactiveControllerHost } from 'lit';
3
+ import { type Transcript } from '../adapters/transcript/model.js';
4
+ /** What to load: a saved transcript, or the transcript of task `stream` in `run`, tailed from `baseUrl`. */
5
+ export type StreamSource = {
6
+ events: readonly TranscriptEvent[];
7
+ } | {
8
+ run: string;
9
+ stream: string;
10
+ baseUrl: string;
11
+ };
12
+ export declare class StreamController implements ReactiveController {
13
+ private readonly host;
14
+ model: Transcript;
15
+ /** Transcript lines before the first page that are not loaded. */
16
+ behind: number;
17
+ /** The events shown so far: the pages' events that showed something. */
18
+ count: number;
19
+ /** The first page has arrived (a saved transcript: at once). */
20
+ ready: boolean;
21
+ /** Changes with every page, and with every load. */
22
+ version: number;
23
+ /** Changes with every load: a new transcript, or the same one after the host was attached again. */
24
+ generation: number;
25
+ /** The key of what is loaded (`load`); '' after the host was detached. */
26
+ loaded: string;
27
+ private close;
28
+ constructor(host: ReactiveControllerHost);
29
+ /** The feed is open: the transcript is being tailed. */
30
+ get tailing(): boolean;
31
+ hostDisconnected(): void;
32
+ private stop;
33
+ /** Start over with `source` (none: an empty transcript); `key` names it for `loaded`. */
34
+ load(key: string, source: StreamSource | null): void;
35
+ /** More events of the saved transcript loaded last: folded in after the others, the same transcript (no new `generation`). */
36
+ append(events: readonly TranscriptEvent[]): void;
37
+ private onPage;
38
+ /** Load the transcript again from further back: the lines `behind` the first page, up to 3000. */
39
+ loadEarlier(client: MonitorClient, run: string, stream: string): Promise<void>;
40
+ }
41
+ //# sourceMappingURL=stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/controllers/stream.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,eAAe,EAErB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AACtE,OAAO,EAAgC,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAKhG,4GAA4G;AAC5G,MAAM,MAAM,YAAY,GAAG;IAAE,MAAM,EAAE,SAAS,eAAe,EAAE,CAAA;CAAE,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAErH,qBAAa,gBAAiB,YAAW,kBAAkB;IAgB7C,OAAO,CAAC,QAAQ,CAAC,IAAI;IAfjC,KAAK,EAAE,UAAU,CAAqB;IACtC,kEAAkE;IAClE,MAAM,SAAK;IACX,wEAAwE;IACxE,KAAK,SAAK;IACV,gEAAgE;IAChE,KAAK,UAAS;IACd,oDAAoD;IACpD,OAAO,SAAK;IACZ,oGAAoG;IACpG,UAAU,SAAK;IACf,0EAA0E;IAC1E,MAAM,SAAM;IACZ,OAAO,CAAC,KAAK,CAA4B;gBAEZ,IAAI,EAAE,sBAAsB;IAIzD,wDAAwD;IACxD,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,gBAAgB,IAAI,IAAI;IAKxB,OAAO,CAAC,IAAI;IAKZ,yFAAyF;IACzF,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,IAAI;IAkBpD,8HAA8H;IAC9H,MAAM,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,GAAG,IAAI;IAMhD,OAAO,CAAC,MAAM;IASd,kGAAkG;IAC5F,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAYrF"}
@@ -0,0 +1,90 @@
1
+ // A task's transcript as it arrives: a saved one folded at once, or one tailed
2
+ // from the monitor's stream feed (`openStreamFeed`), page by page, with "load
3
+ // earlier" through the client. The host re-renders on every page.
4
+ import { openStreamFeed, } from '@contraagent/api';
5
+ import { applyEvents, emptyTranscript } from '../adapters/transcript/model.js';
6
+ /** How far back "load earlier" reaches, in transcript lines. */
7
+ const EARLIER_LINES = 3000;
8
+ export class StreamController {
9
+ constructor(host) {
10
+ this.host = host;
11
+ this.model = emptyTranscript();
12
+ /** Transcript lines before the first page that are not loaded. */
13
+ this.behind = 0;
14
+ /** The events shown so far: the pages' events that showed something. */
15
+ this.count = 0;
16
+ /** The first page has arrived (a saved transcript: at once). */
17
+ this.ready = false;
18
+ /** Changes with every page, and with every load. */
19
+ this.version = 0;
20
+ /** Changes with every load: a new transcript, or the same one after the host was attached again. */
21
+ this.generation = 0;
22
+ /** The key of what is loaded (`load`); '' after the host was detached. */
23
+ this.loaded = '';
24
+ this.close = null;
25
+ host.addController(this);
26
+ }
27
+ /** The feed is open: the transcript is being tailed. */
28
+ get tailing() {
29
+ return this.close !== null;
30
+ }
31
+ hostDisconnected() {
32
+ this.stop();
33
+ this.loaded = '';
34
+ }
35
+ stop() {
36
+ this.close?.();
37
+ this.close = null;
38
+ }
39
+ /** Start over with `source` (none: an empty transcript); `key` names it for `loaded`. */
40
+ load(key, source) {
41
+ this.stop();
42
+ this.loaded = key;
43
+ this.generation++;
44
+ this.version++;
45
+ this.model = emptyTranscript();
46
+ this.behind = 0;
47
+ this.count = 0;
48
+ this.ready = false;
49
+ if (source && 'events' in source) {
50
+ this.count = applyEvents(this.model, source.events);
51
+ this.ready = true;
52
+ }
53
+ else if (source) {
54
+ const generation = this.generation;
55
+ this.close = openStreamFeed(source.run, source.stream, { message: (page) => this.onPage(page, generation) }, { baseUrl: source.baseUrl });
56
+ }
57
+ }
58
+ /** More events of the saved transcript loaded last: folded in after the others, the same transcript (no new `generation`). */
59
+ append(events) {
60
+ if (!events.length)
61
+ return;
62
+ this.count += applyEvents(this.model, events);
63
+ this.version++;
64
+ }
65
+ onPage(page, generation) {
66
+ if (generation !== this.generation)
67
+ return;
68
+ if (!this.ready && page.behind)
69
+ this.behind = page.behind;
70
+ this.count += applyEvents(this.model, page.events);
71
+ this.ready = true;
72
+ this.version++;
73
+ this.host.requestUpdate();
74
+ }
75
+ /** Load the transcript again from further back: the lines `behind` the first page, up to 3000. */
76
+ async loadEarlier(client, run, stream) {
77
+ const generation = this.generation;
78
+ const back = Math.max(0, this.behind - EARLIER_LINES);
79
+ this.behind = 0;
80
+ this.host.requestUpdate();
81
+ const page = await client.stream(run, stream, back);
82
+ if (generation !== this.generation)
83
+ return;
84
+ this.model = emptyTranscript();
85
+ applyEvents(this.model, page.events);
86
+ this.version++;
87
+ this.host.requestUpdate();
88
+ }
89
+ }
90
+ //# sourceMappingURL=stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/controllers/stream.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { MonitorClient, TaskDetail } from '@contraagent/api';
2
+ import type { ReactiveControllerHost } from 'lit';
3
+ /** The detail of a task the server could not return: no attempts, no files, no definition. */
4
+ export declare const emptyDetail: (key: string) => TaskDetail;
5
+ /**
6
+ * Holds `value`, the detail of the task `load` named last: null until it
7
+ * arrives, `emptyDetail` (and `error`) when the request failed. The host
8
+ * re-renders when it arrives.
9
+ */
10
+ export declare class TaskDetailController {
11
+ private readonly host;
12
+ /** The detail; null while it loads, or when there is no task to load. */
13
+ value: TaskDetail | null;
14
+ /** Why the last request failed; null when it did not. */
15
+ error: unknown;
16
+ private token;
17
+ constructor(host: ReactiveControllerHost);
18
+ /** Load the detail of `key` in `run`; an earlier request still on its way is dropped. */
19
+ load(client: MonitorClient | undefined, run: string, key: string | null): void;
20
+ private fetch;
21
+ }
22
+ //# sourceMappingURL=task-detail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-detail.d.ts","sourceRoot":"","sources":["../../src/controllers/task-detail.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAElD,8FAA8F;AAC9F,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,UAOxC,CAAC;AAEH;;;;GAIG;AACH,qBAAa,oBAAoB;IAOnB,OAAO,CAAC,QAAQ,CAAC,IAAI;IANjC,yEAAyE;IACzE,KAAK,EAAE,UAAU,GAAG,IAAI,CAAQ;IAChC,yDAAyD;IACzD,KAAK,EAAE,OAAO,CAAQ;IACtB,OAAO,CAAC,KAAK,CAAK;gBAEW,IAAI,EAAE,sBAAsB;IAEzD,yFAAyF;IACzF,IAAI,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;YAQhE,KAAK;CAcpB"}
@@ -0,0 +1,50 @@
1
+ /** The detail of a task the server could not return: no attempts, no files, no definition. */
2
+ export const emptyDetail = (key) => ({
3
+ key,
4
+ rows: [],
5
+ launches: [],
6
+ definition: null,
7
+ io: { params: {}, inputs: [], outputs: [], executor: 'agent', upstream: [], downstream: [] },
8
+ stream: null,
9
+ });
10
+ /**
11
+ * Holds `value`, the detail of the task `load` named last: null until it
12
+ * arrives, `emptyDetail` (and `error`) when the request failed. The host
13
+ * re-renders when it arrives.
14
+ */
15
+ export class TaskDetailController {
16
+ constructor(host) {
17
+ this.host = host;
18
+ /** The detail; null while it loads, or when there is no task to load. */
19
+ this.value = null;
20
+ /** Why the last request failed; null when it did not. */
21
+ this.error = null;
22
+ this.token = 0;
23
+ }
24
+ /** Load the detail of `key` in `run`; an earlier request still on its way is dropped. */
25
+ load(client, run, key) {
26
+ const token = ++this.token;
27
+ this.value = null;
28
+ this.error = null;
29
+ if (!run || !key || !client)
30
+ return;
31
+ void this.fetch(token, client, run, key);
32
+ }
33
+ async fetch(token, client, run, key) {
34
+ let d;
35
+ let error = null;
36
+ try {
37
+ d = await client.task(run, key);
38
+ }
39
+ catch (e) {
40
+ d = emptyDetail(key);
41
+ error = e;
42
+ }
43
+ if (token !== this.token)
44
+ return;
45
+ this.value = d;
46
+ this.error = error;
47
+ this.host.requestUpdate();
48
+ }
49
+ }
50
+ //# sourceMappingURL=task-detail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-detail.js","sourceRoot":"","sources":["../../src/controllers/task-detail.ts"],"names":[],"mappings":"AAMA,8FAA8F;AAC9F,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAc,EAAE,CAAC,CAAC;IACvD,GAAG;IACH,IAAI,EAAE,EAAE;IACR,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,IAAI;IAChB,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IAC5F,MAAM,EAAE,IAAI;CACb,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,OAAO,oBAAoB;IAO/B,YAA6B,IAA4B;QAA5B,SAAI,GAAJ,IAAI,CAAwB;QANzD,yEAAyE;QACzE,UAAK,GAAsB,IAAI,CAAC;QAChC,yDAAyD;QACzD,UAAK,GAAY,IAAI,CAAC;QACd,UAAK,GAAG,CAAC,CAAC;IAE0C,CAAC;IAE7D,yFAAyF;IACzF,IAAI,CAAC,MAAiC,EAAE,GAAW,EAAE,GAAkB;QACrE,MAAM,KAAK,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM;YAAE,OAAO;QACpC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC3C,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,MAAqB,EAAE,GAAW,EAAE,GAAW;QAChF,IAAI,CAAa,CAAC;QAClB,IAAI,KAAK,GAAY,IAAI,CAAC;QAC1B,IAAI,CAAC;YACH,CAAC,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YACrB,KAAK,GAAG,CAAC,CAAC;QACZ,CAAC;QACD,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK;YAAE,OAAO;QACjC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;IAC5B,CAAC;CACF"}
@@ -0,0 +1,32 @@
1
+ import type { ReactiveController, ReactiveControllerHost } from 'lit';
2
+ import { type ThemeChoice, type ThemeName } from '@contraagent/elements/themes';
3
+ export interface ThemeOptions {
4
+ /** The element's `theme` property: a choice, or '' for the choice remembered from an earlier visit. */
5
+ theme: () => ThemeChoice | '';
6
+ /** The element is the page: the theme goes on `<html>` too. */
7
+ pageWide: () => boolean;
8
+ }
9
+ /**
10
+ * Shows the theme on its host (and on `<html>` when the host is the page),
11
+ * after every update, and follows the system's colour scheme for `system`.
12
+ */
13
+ export declare class ThemeController implements ReactiveController {
14
+ private readonly host;
15
+ private readonly opts;
16
+ /** Whether the system asks for a light colour scheme (what `system` follows). */
17
+ light: boolean;
18
+ private stop;
19
+ constructor(host: ReactiveControllerHost & HTMLElement, opts: ThemeOptions);
20
+ /** The reader's choice: the `theme` property, else the choice remembered from an earlier visit. */
21
+ get choice(): ThemeChoice;
22
+ /** The theme shown now. */
23
+ get shown(): ThemeName;
24
+ /** What `system` resolves to now. */
25
+ get system(): ThemeName;
26
+ hostConnected(): void;
27
+ hostDisconnected(): void;
28
+ hostUpdated(): void;
29
+ /** Show the theme: on the host, and on the page when the host is the page. */
30
+ private apply;
31
+ }
32
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/controllers/theme.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AACtE,OAAO,EAA6D,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAE3I,MAAM,WAAW,YAAY;IAC3B,uGAAuG;IACvG,KAAK,EAAE,MAAM,WAAW,GAAG,EAAE,CAAC;IAC9B,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,qBAAa,eAAgB,YAAW,kBAAkB;IAMtD,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,IAAI;IANvB,iFAAiF;IACjF,KAAK,UAAkB;IACvB,OAAO,CAAC,IAAI,CAA6B;gBAGtB,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAC1C,IAAI,EAAE,YAAY;IAKrC,mGAAmG;IACnG,IAAI,MAAM,IAAI,WAAW,CAGxB;IAED,2BAA2B;IAC3B,IAAI,KAAK,IAAI,SAAS,CAErB;IAED,qCAAqC;IACrC,IAAI,MAAM,IAAI,SAAS,CAEtB;IAED,aAAa,IAAI,IAAI;IAYrB,gBAAgB,IAAI,IAAI;IAKxB,WAAW,IAAI,IAAI;IAInB,8EAA8E;IAC9E,OAAO,CAAC,KAAK;CAMd"}
@@ -0,0 +1,56 @@
1
+ import { isThemeChoice, preferredTheme, prefersLight, resolveTheme } from '@contraagent/elements/themes';
2
+ /**
3
+ * Shows the theme on its host (and on `<html>` when the host is the page),
4
+ * after every update, and follows the system's colour scheme for `system`.
5
+ */
6
+ export class ThemeController {
7
+ constructor(host, opts) {
8
+ this.host = host;
9
+ this.opts = opts;
10
+ /** Whether the system asks for a light colour scheme (what `system` follows). */
11
+ this.light = prefersLight();
12
+ this.stop = null;
13
+ host.addController(this);
14
+ }
15
+ /** The reader's choice: the `theme` property, else the choice remembered from an earlier visit. */
16
+ get choice() {
17
+ const t = this.opts.theme();
18
+ return isThemeChoice(t) ? t : preferredTheme();
19
+ }
20
+ /** The theme shown now. */
21
+ get shown() {
22
+ return resolveTheme(this.choice, this.light);
23
+ }
24
+ /** What `system` resolves to now. */
25
+ get system() {
26
+ return resolveTheme('system', this.light);
27
+ }
28
+ hostConnected() {
29
+ this.apply();
30
+ const scheme = globalThis.matchMedia?.('(prefers-color-scheme: light)');
31
+ if (!scheme)
32
+ return;
33
+ const onScheme = (e) => {
34
+ this.light = e.matches;
35
+ this.host.requestUpdate();
36
+ };
37
+ scheme.addEventListener('change', onScheme);
38
+ this.stop = () => scheme.removeEventListener('change', onScheme);
39
+ }
40
+ hostDisconnected() {
41
+ this.stop?.();
42
+ this.stop = null;
43
+ }
44
+ hostUpdated() {
45
+ this.apply();
46
+ }
47
+ /** Show the theme: on the host, and on the page when the host is the page. */
48
+ apply() {
49
+ const name = this.shown;
50
+ if (this.host.getAttribute('data-ca-theme') !== name)
51
+ this.host.setAttribute('data-ca-theme', name);
52
+ if (this.opts.pageWide() && document.documentElement.getAttribute('data-ca-theme') !== name)
53
+ document.documentElement.setAttribute('data-ca-theme', name);
54
+ }
55
+ }
56
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/controllers/theme.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAoC,MAAM,8BAA8B,CAAC;AAS3I;;;GAGG;AACH,MAAM,OAAO,eAAe;IAK1B,YACmB,IAA0C,EAC1C,IAAkB;QADlB,SAAI,GAAJ,IAAI,CAAsC;QAC1C,SAAI,GAAJ,IAAI,CAAc;QANrC,iFAAiF;QACjF,UAAK,GAAG,YAAY,EAAE,CAAC;QACf,SAAI,GAAwB,IAAI,CAAC;QAMvC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,mGAAmG;IACnG,IAAI,MAAM;QACR,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC5B,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;IACjD,CAAC;IAED,2BAA2B;IAC3B,IAAI,KAAK;QACP,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,qCAAqC;IACrC,IAAI,MAAM;QACR,OAAO,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,aAAa;QACX,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,+BAA+B,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,QAAQ,GAAG,CAAC,CAAsB,EAAE,EAAE;YAC1C,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5B,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnE,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,8EAA8E;IACtE,KAAK;QACX,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QACpG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,IAAI;YACzF,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;CACF"}
@@ -0,0 +1,107 @@
1
+ import type { LaunchEvent } from '@contraagent/api';
2
+ import type { ViewRoutePatch, TaskView } from './view-route.js';
3
+ import type { ThemeChoice } from '@contraagent/elements/themes';
4
+ export interface OpenTaskDetail {
5
+ /** A task key. */
6
+ key: string;
7
+ /** What to show of it; the host's choice when absent. */
8
+ view?: TaskView;
9
+ }
10
+ export interface SelectRunDetail {
11
+ run: string;
12
+ }
13
+ export interface FilterDetail {
14
+ kind?: string;
15
+ /** A journal stop, or 'bad' for every attempt that did not complete. */
16
+ stop?: string;
17
+ q?: string;
18
+ }
19
+ /** Where to go; `replace`: in place of where the reader is (a link that named nothing, set right), not a step back can return to. */
20
+ export type NavigateDetail = ViewRoutePatch & {
21
+ replace?: boolean;
22
+ };
23
+ export interface ChooseThemeDetail {
24
+ /** The reader's choice: a theme, or `system`. */
25
+ theme: ThemeChoice;
26
+ }
27
+ /** What a journal row says about a try (the fields this needs). */
28
+ export interface TryResult {
29
+ attempt?: number | null;
30
+ ok: boolean;
31
+ stop: string;
32
+ reason?: string | null;
33
+ /** The models this try went through, one per hop of the failover chain. */
34
+ hops?: readonly {
35
+ model?: string | null;
36
+ route?: string | null;
37
+ stop?: string | null;
38
+ }[] | null;
39
+ }
40
+ export interface RoundInfo {
41
+ kind: 'try' | 'fixup' | 'switch';
42
+ /** 1-based try number. */
43
+ tryNo: number;
44
+ /** 0 for a try's first answer, else the fix-up's number within its try. */
45
+ fixupNo: number;
46
+ /** 0 for the try's first model, else the model switch's number within the try. */
47
+ hopNo: number;
48
+ /** The model of this round's hop, when the journal names it. */
49
+ model: string;
50
+ /**
51
+ * `ok`: this round's output passed (the try's last round, the try succeeded);
52
+ * `rejected`: a later fix-up in the same try followed it (its output failed its checks);
53
+ * `failed`: the try's last round, and the try failed;
54
+ * `switched`: a model switch followed it (its model stopped, e.g. rate limited);
55
+ * null: not known yet (running).
56
+ */
57
+ result: 'ok' | 'rejected' | 'failed' | 'switched' | null;
58
+ /** For a switched round: how its model's session ended (a stop value). */
59
+ switchedStop: string;
60
+ /** For a switched round: the model the next session ran on ('' when the journal names none). */
61
+ switchedTo: string;
62
+ /** For a rejected round: the errors the next round was sent back with. */
63
+ rejectedWith: string[];
64
+ /** For a failed round: the journal row of its try. */
65
+ row: TryResult | null;
66
+ }
67
+ export interface RoundsChangedDetail {
68
+ /** Each round's launch event (null for events before any launch). */
69
+ launches: (LaunchEvent | null)[];
70
+ /** The round shown, 0-based; -1 while there is none. */
71
+ shown: number;
72
+ /** Each round as a try or a fix-up, with its result when known. */
73
+ rounds: RoundInfo[];
74
+ }
75
+ /** Every event an element sends, by name. */
76
+ export interface CaEventMap {
77
+ /** Open a task: its transcript, or `view` of it. */
78
+ 'ca-open-task': OpenTaskDetail;
79
+ /** Switch to another run. */
80
+ 'ca-select-run': SelectRunDetail;
81
+ /** Change a list filter. */
82
+ 'ca-filter': FilterDetail;
83
+ /** Go elsewhere in the monitor (its own views use this). */
84
+ 'ca-navigate': NavigateDetail;
85
+ /** Show another theme (the theme control). */
86
+ 'ca-choose-theme': ChooseThemeDetail;
87
+ /** Close the element (the run picker). */
88
+ 'ca-close': Record<string, never>;
89
+ /** A transcript's rounds or its shown round changed; does not bubble (`ca-transcript`). */
90
+ 'ca-rounds': RoundsChangedDetail;
91
+ }
92
+ declare global {
93
+ interface HTMLElementEventMap {
94
+ 'ca-open-task': CustomEvent<OpenTaskDetail>;
95
+ 'ca-select-run': CustomEvent<SelectRunDetail>;
96
+ 'ca-filter': CustomEvent<FilterDetail>;
97
+ 'ca-navigate': CustomEvent<NavigateDetail>;
98
+ 'ca-choose-theme': CustomEvent<ChooseThemeDetail>;
99
+ 'ca-close': CustomEvent<Record<string, never>>;
100
+ 'ca-rounds': CustomEvent<RoundsChangedDetail>;
101
+ }
102
+ }
103
+ /** Sends `name` from `from`; it bubbles unless `bubbles: false`. */
104
+ export declare function emit<K extends keyof CaEventMap>(from: EventTarget, name: K, detail: CaEventMap[K], { bubbles }?: {
105
+ bubbles?: boolean;
106
+ }): void;
107
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/core/events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /** Sends `name` from `from`; it bubbles unless `bubbles: false`. */
2
+ export function emit(from, name, detail, { bubbles = true } = {}) {
3
+ from.dispatchEvent(new CustomEvent(name, { detail, bubbles, composed: true }));
4
+ }
5
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/core/events.ts"],"names":[],"mappings":"AA+GA,oEAAoE;AACpE,MAAM,UAAU,IAAI,CAClB,IAAiB,EACjB,IAAO,EACP,MAAqB,EACrB,EAAE,OAAO,GAAG,IAAI,KAA4B,EAAE;IAE9C,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACjF,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { allLocales } from '../locales/codes.js';
2
+ export type Locale = (typeof allLocales)[number];
3
+ export { allLocales };
4
+ /** Each locale's name, written in itself (for a language switch). */
5
+ export declare const LOCALE_NAMES: Record<Locale, string>;
6
+ /**
7
+ * Sets up Lit Localize for these elements, once; true when the elements can
8
+ * switch language. False when the page had already configured Lit Localize
9
+ * (it can be configured once per page): the elements then stay in English.
10
+ */
11
+ export declare function configureLocales(): boolean;
12
+ /** The language shown now: English before `configureLocales()`. */
13
+ export declare const getLocale: () => Locale;
14
+ /** Show every element in `locale`; it configures the locales first if nothing has. */
15
+ export declare function setLocale(locale: Locale): Promise<void>;
16
+ export declare const isLocale: (x: unknown) => x is Locale;
17
+ /** The reader's choice from an earlier visit, else the first of the browser's languages we have, else English. */
18
+ export declare function preferredLocale(): Locale;
19
+ /** Switch every element to `locale`, and remember the choice for the next visit. */
20
+ export declare function chooseLocale(locale: Locale): Promise<void>;
21
+ //# sourceMappingURL=i18n.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/core/i18n.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,UAAU,EAA+B,MAAM,qBAAqB,CAAC;AAE9E,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,qEAAqE;AACrE,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAgC,CAAC;AASjF;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAS1C;AAED,mEAAmE;AACnE,eAAO,MAAM,SAAS,QAAO,MAA2E,CAAC;AAEzG,sFAAsF;AACtF,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAID,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAAwD,CAAC;AAEpG,kHAAkH;AAClH,wBAAgB,eAAe,IAAI,MAAM,CAYxC;AAED,oFAAoF;AACpF,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAOhE"}