@contraagent/ui 0.1.0 → 0.3.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 (389) hide show
  1. package/README.md +9 -2
  2. package/custom-elements.json +3300 -3098
  3. package/dist/adapters/check-rows.d.ts +2 -0
  4. package/dist/adapters/check-rows.d.ts.map +1 -1
  5. package/dist/adapters/check-rows.js +2 -0
  6. package/dist/adapters/check-rows.js.map +1 -1
  7. package/dist/adapters/panel-body.d.ts +15 -1
  8. package/dist/adapters/panel-body.d.ts.map +1 -1
  9. package/dist/adapters/panel-body.js +27 -0
  10. package/dist/adapters/panel-body.js.map +1 -1
  11. package/dist/contraagent-ui.js +684 -641
  12. package/dist/elements/lists/ca-panel-body.d.ts +16 -3
  13. package/dist/elements/lists/ca-panel-body.d.ts.map +1 -1
  14. package/dist/elements/lists/ca-panel-body.js +74 -8
  15. package/dist/elements/lists/ca-panel-body.js.map +1 -1
  16. package/dist/elements/overview/ca-overview.d.ts +2 -1
  17. package/dist/elements/overview/ca-overview.d.ts.map +1 -1
  18. package/dist/elements/overview/ca-overview.js +8 -1
  19. package/dist/elements/overview/ca-overview.js.map +1 -1
  20. package/dist/elements/overview/ca-services.d.ts +25 -0
  21. package/dist/elements/overview/ca-services.d.ts.map +1 -0
  22. package/dist/elements/overview/ca-services.js +77 -0
  23. package/dist/elements/overview/ca-services.js.map +1 -0
  24. package/dist/elements/overview/index.d.ts +1 -0
  25. package/dist/elements/overview/index.d.ts.map +1 -1
  26. package/dist/elements/overview/index.js +1 -0
  27. package/dist/elements/overview/index.js.map +1 -1
  28. package/dist/elements/shared/contract-parts.d.ts.map +1 -1
  29. package/dist/elements/shared/contract-parts.js +18 -2
  30. package/dist/elements/shared/contract-parts.js.map +1 -1
  31. package/dist/elements/shell/ca-monitor.d.ts +4 -2
  32. package/dist/elements/shell/ca-monitor.d.ts.map +1 -1
  33. package/dist/elements/shell/ca-monitor.js +4 -2
  34. package/dist/elements/shell/ca-monitor.js.map +1 -1
  35. package/dist/elements/task/header.d.ts.map +1 -1
  36. package/dist/elements/task/header.js +7 -3
  37. package/dist/elements/task/header.js.map +1 -1
  38. package/dist/locales/ja.d.ts +24 -0
  39. package/dist/locales/ja.d.ts.map +1 -1
  40. package/dist/locales/ja.js +24 -0
  41. package/dist/locales/ja.js.map +1 -1
  42. package/dist/words/changes.d.ts +2 -2
  43. package/dist/words/changes.d.ts.map +1 -1
  44. package/dist/words/changes.js +2 -0
  45. package/dist/words/changes.js.map +1 -1
  46. package/dist/words/index.d.ts +1 -0
  47. package/dist/words/index.d.ts.map +1 -1
  48. package/dist/words/index.js +1 -0
  49. package/dist/words/index.js.map +1 -1
  50. package/dist/words/panels.d.ts +6 -0
  51. package/dist/words/panels.d.ts.map +1 -1
  52. package/dist/words/panels.js +13 -0
  53. package/dist/words/panels.js.map +1 -1
  54. package/dist/words/services.d.ts +16 -0
  55. package/dist/words/services.d.ts.map +1 -0
  56. package/dist/words/services.js +45 -0
  57. package/dist/words/services.js.map +1 -0
  58. package/docs/embed.md +4 -1
  59. package/package.json +4 -4
  60. package/src/adapters/check-rows.ts +3 -0
  61. package/src/adapters/panel-body.ts +40 -2
  62. package/src/elements/lists/ca-panel-body.ts +70 -9
  63. package/src/elements/overview/ca-overview.ts +8 -1
  64. package/src/elements/overview/ca-services.ts +66 -0
  65. package/src/elements/overview/index.ts +1 -0
  66. package/src/elements/shared/contract-parts.ts +18 -2
  67. package/src/elements/shell/ca-monitor.ts +4 -2
  68. package/src/elements/task/header.ts +7 -3
  69. package/src/locales/ja.ts +24 -0
  70. package/src/words/changes.ts +4 -2
  71. package/src/words/index.ts +1 -0
  72. package/src/words/panels.ts +18 -0
  73. package/src/words/services.ts +57 -0
  74. package/dist/core/clock.d.ts +0 -20
  75. package/dist/core/clock.d.ts.map +0 -1
  76. package/dist/core/clock.js +0 -45
  77. package/dist/core/clock.js.map +0 -1
  78. package/dist/core/route.d.ts +0 -62
  79. package/dist/core/route.d.ts.map +0 -1
  80. package/dist/core/route.js +0 -143
  81. package/dist/core/route.js.map +0 -1
  82. package/dist/core/router.d.ts +0 -27
  83. package/dist/core/router.d.ts.map +0 -1
  84. package/dist/core/router.js +0 -57
  85. package/dist/core/router.js.map +0 -1
  86. package/dist/elements/lists/filters.d.ts +0 -28
  87. package/dist/elements/lists/filters.d.ts.map +0 -1
  88. package/dist/elements/lists/filters.js +0 -71
  89. package/dist/elements/lists/filters.js.map +0 -1
  90. package/dist/elements/overview/ca-pipeline-progress.d.ts +0 -17
  91. package/dist/elements/overview/ca-pipeline-progress.d.ts.map +0 -1
  92. package/dist/elements/overview/ca-pipeline-progress.js +0 -119
  93. package/dist/elements/overview/ca-pipeline-progress.js.map +0 -1
  94. package/dist/elements/overview/ca-plan-matrix.d.ts +0 -27
  95. package/dist/elements/overview/ca-plan-matrix.d.ts.map +0 -1
  96. package/dist/elements/overview/ca-plan-matrix.js +0 -113
  97. package/dist/elements/overview/ca-plan-matrix.js.map +0 -1
  98. package/dist/elements/overview/flow-types.d.ts +0 -2
  99. package/dist/elements/overview/flow-types.d.ts.map +0 -1
  100. package/dist/elements/overview/flow-types.js +0 -2
  101. package/dist/elements/overview/flow-types.js.map +0 -1
  102. package/dist/elements/overview/graph/arrange.d.ts +0 -16
  103. package/dist/elements/overview/graph/arrange.d.ts.map +0 -1
  104. package/dist/elements/overview/graph/arrange.js +0 -152
  105. package/dist/elements/overview/graph/arrange.js.map +0 -1
  106. package/dist/elements/overview/graph/card.d.ts +0 -64
  107. package/dist/elements/overview/graph/card.d.ts.map +0 -1
  108. package/dist/elements/overview/graph/card.js +0 -160
  109. package/dist/elements/overview/graph/card.js.map +0 -1
  110. package/dist/elements/overview/graph/flow-index.d.ts +0 -52
  111. package/dist/elements/overview/graph/flow-index.d.ts.map +0 -1
  112. package/dist/elements/overview/graph/flow-index.js +0 -121
  113. package/dist/elements/overview/graph/flow-index.js.map +0 -1
  114. package/dist/elements/overview/graph/highlight.d.ts +0 -14
  115. package/dist/elements/overview/graph/highlight.d.ts.map +0 -1
  116. package/dist/elements/overview/graph/highlight.js +0 -33
  117. package/dist/elements/overview/graph/highlight.js.map +0 -1
  118. package/dist/elements/overview/graph/layer.d.ts +0 -32
  119. package/dist/elements/overview/graph/layer.d.ts.map +0 -1
  120. package/dist/elements/overview/graph/layer.js +0 -92
  121. package/dist/elements/overview/graph/layer.js.map +0 -1
  122. package/dist/elements/overview/graph/layout.d.ts +0 -80
  123. package/dist/elements/overview/graph/layout.d.ts.map +0 -1
  124. package/dist/elements/overview/graph/layout.js +0 -261
  125. package/dist/elements/overview/graph/layout.js.map +0 -1
  126. package/dist/elements/overview/graph/marks.d.ts +0 -18
  127. package/dist/elements/overview/graph/marks.d.ts.map +0 -1
  128. package/dist/elements/overview/graph/marks.js +0 -17
  129. package/dist/elements/overview/graph/marks.js.map +0 -1
  130. package/dist/elements/overview/graph/matrix.d.ts +0 -58
  131. package/dist/elements/overview/graph/matrix.d.ts.map +0 -1
  132. package/dist/elements/overview/graph/matrix.js +0 -93
  133. package/dist/elements/overview/graph/matrix.js.map +0 -1
  134. package/dist/elements/overview/graph/nav.d.ts +0 -15
  135. package/dist/elements/overview/graph/nav.d.ts.map +0 -1
  136. package/dist/elements/overview/graph/nav.js +0 -80
  137. package/dist/elements/overview/graph/nav.js.map +0 -1
  138. package/dist/elements/overview/graph/pan-zoom.d.ts +0 -83
  139. package/dist/elements/overview/graph/pan-zoom.d.ts.map +0 -1
  140. package/dist/elements/overview/graph/pan-zoom.js +0 -189
  141. package/dist/elements/overview/graph/pan-zoom.js.map +0 -1
  142. package/dist/elements/overview/graph/paths.d.ts +0 -9
  143. package/dist/elements/overview/graph/paths.d.ts.map +0 -1
  144. package/dist/elements/overview/graph/paths.js +0 -44
  145. package/dist/elements/overview/graph/paths.js.map +0 -1
  146. package/dist/elements/overview/graph/place-card.d.ts +0 -36
  147. package/dist/elements/overview/graph/place-card.d.ts.map +0 -1
  148. package/dist/elements/overview/graph/place-card.js +0 -68
  149. package/dist/elements/overview/graph/place-card.js.map +0 -1
  150. package/dist/elements/overview/graph/project.d.ts +0 -31
  151. package/dist/elements/overview/graph/project.d.ts.map +0 -1
  152. package/dist/elements/overview/graph/project.js +0 -455
  153. package/dist/elements/overview/graph/project.js.map +0 -1
  154. package/dist/elements/overview/graph/selection.d.ts +0 -31
  155. package/dist/elements/overview/graph/selection.d.ts.map +0 -1
  156. package/dist/elements/overview/graph/selection.js +0 -44
  157. package/dist/elements/overview/graph/selection.js.map +0 -1
  158. package/dist/elements/overview/graph/states.d.ts +0 -6
  159. package/dist/elements/overview/graph/states.d.ts.map +0 -1
  160. package/dist/elements/overview/graph/states.js +0 -5
  161. package/dist/elements/overview/graph/states.js.map +0 -1
  162. package/dist/elements/overview/graph/types.d.ts +0 -124
  163. package/dist/elements/overview/graph/types.d.ts.map +0 -1
  164. package/dist/elements/overview/graph/types.js +0 -3
  165. package/dist/elements/overview/graph/types.js.map +0 -1
  166. package/dist/elements/overview/graph/view.d.ts +0 -16
  167. package/dist/elements/overview/graph/view.d.ts.map +0 -1
  168. package/dist/elements/overview/graph/view.js +0 -20
  169. package/dist/elements/overview/graph/view.js.map +0 -1
  170. package/dist/elements/overview/kpis-model.d.ts +0 -31
  171. package/dist/elements/overview/kpis-model.d.ts.map +0 -1
  172. package/dist/elements/overview/kpis-model.js +0 -30
  173. package/dist/elements/overview/kpis-model.js.map +0 -1
  174. package/dist/elements/overview/logic.d.ts +0 -442
  175. package/dist/elements/overview/logic.d.ts.map +0 -1
  176. package/dist/elements/overview/logic.js +0 -1431
  177. package/dist/elements/overview/logic.js.map +0 -1
  178. package/dist/elements/overview/pipeline-graph/dag.d.ts +0 -4
  179. package/dist/elements/overview/pipeline-graph/dag.d.ts.map +0 -1
  180. package/dist/elements/overview/pipeline-graph/dag.js +0 -259
  181. package/dist/elements/overview/pipeline-graph/dag.js.map +0 -1
  182. package/dist/elements/overview/pipeline-graph/icons.d.ts +0 -5
  183. package/dist/elements/overview/pipeline-graph/icons.d.ts.map +0 -1
  184. package/dist/elements/overview/pipeline-graph/icons.js +0 -13
  185. package/dist/elements/overview/pipeline-graph/icons.js.map +0 -1
  186. package/dist/elements/overview/pipeline-graph/legend.d.ts +0 -9
  187. package/dist/elements/overview/pipeline-graph/legend.d.ts.map +0 -1
  188. package/dist/elements/overview/pipeline-graph/legend.js +0 -59
  189. package/dist/elements/overview/pipeline-graph/legend.js.map +0 -1
  190. package/dist/elements/overview/pipeline-graph/matrix.d.ts +0 -4
  191. package/dist/elements/overview/pipeline-graph/matrix.d.ts.map +0 -1
  192. package/dist/elements/overview/pipeline-graph/matrix.js +0 -193
  193. package/dist/elements/overview/pipeline-graph/matrix.js.map +0 -1
  194. package/dist/elements/overview/pipeline-graph/table.d.ts +0 -11
  195. package/dist/elements/overview/pipeline-graph/table.d.ts.map +0 -1
  196. package/dist/elements/overview/pipeline-graph/table.js +0 -74
  197. package/dist/elements/overview/pipeline-graph/table.js.map +0 -1
  198. package/dist/elements/overview/pipeline-graph/tools.d.ts +0 -5
  199. package/dist/elements/overview/pipeline-graph/tools.d.ts.map +0 -1
  200. package/dist/elements/overview/pipeline-graph/tools.js +0 -48
  201. package/dist/elements/overview/pipeline-graph/tools.js.map +0 -1
  202. package/dist/elements/overview/pipeline-graph/words.d.ts +0 -45
  203. package/dist/elements/overview/pipeline-graph/words.d.ts.map +0 -1
  204. package/dist/elements/overview/pipeline-graph/words.js +0 -108
  205. package/dist/elements/overview/pipeline-graph/words.js.map +0 -1
  206. package/dist/elements/overview/place-card.d.ts +0 -36
  207. package/dist/elements/overview/place-card.d.ts.map +0 -1
  208. package/dist/elements/overview/place-card.js +0 -68
  209. package/dist/elements/overview/place-card.js.map +0 -1
  210. package/dist/elements/overview/timeline-model.d.ts +0 -44
  211. package/dist/elements/overview/timeline-model.d.ts.map +0 -1
  212. package/dist/elements/overview/timeline-model.js +0 -53
  213. package/dist/elements/overview/timeline-model.js.map +0 -1
  214. package/dist/elements/shared/ca-count.d.ts +0 -17
  215. package/dist/elements/shared/ca-count.d.ts.map +0 -1
  216. package/dist/elements/shared/ca-count.js +0 -59
  217. package/dist/elements/shared/ca-count.js.map +0 -1
  218. package/dist/elements/shared/ca-elapsed.d.ts +0 -14
  219. package/dist/elements/shared/ca-elapsed.d.ts.map +0 -1
  220. package/dist/elements/shared/ca-elapsed.js +0 -33
  221. package/dist/elements/shared/ca-elapsed.js.map +0 -1
  222. package/dist/elements/shared/ca-json-tree.d.ts +0 -16
  223. package/dist/elements/shared/ca-json-tree.d.ts.map +0 -1
  224. package/dist/elements/shared/ca-json-tree.js +0 -52
  225. package/dist/elements/shared/ca-json-tree.js.map +0 -1
  226. package/dist/elements/shared/ca-markdown.d.ts +0 -19
  227. package/dist/elements/shared/ca-markdown.d.ts.map +0 -1
  228. package/dist/elements/shared/ca-markdown.js +0 -59
  229. package/dist/elements/shared/ca-markdown.js.map +0 -1
  230. package/dist/elements/shared/fact-line.d.ts +0 -4
  231. package/dist/elements/shared/fact-line.d.ts.map +0 -1
  232. package/dist/elements/shared/fact-line.js +0 -8
  233. package/dist/elements/shared/fact-line.js.map +0 -1
  234. package/dist/elements/task/rounds.d.ts +0 -14
  235. package/dist/elements/task/rounds.d.ts.map +0 -1
  236. package/dist/elements/task/rounds.js +0 -59
  237. package/dist/elements/task/rounds.js.map +0 -1
  238. package/dist/elements/task/transcript-model.d.ts +0 -106
  239. package/dist/elements/task/transcript-model.d.ts.map +0 -1
  240. package/dist/elements/task/transcript-model.js +0 -280
  241. package/dist/elements/task/transcript-model.js.map +0 -1
  242. package/dist/elements/task/who.d.ts +0 -5
  243. package/dist/elements/task/who.d.ts.map +0 -1
  244. package/dist/elements/task/who.js +0 -30
  245. package/dist/elements/task/who.js.map +0 -1
  246. package/dist/events.d.ts +0 -107
  247. package/dist/events.d.ts.map +0 -1
  248. package/dist/events.js +0 -5
  249. package/dist/events.js.map +0 -1
  250. package/dist/i18n.d.ts +0 -16
  251. package/dist/i18n.d.ts.map +0 -1
  252. package/dist/i18n.js +0 -48
  253. package/dist/i18n.js.map +0 -1
  254. package/dist/lib/clock.d.ts +0 -20
  255. package/dist/lib/clock.d.ts.map +0 -1
  256. package/dist/lib/clock.js +0 -45
  257. package/dist/lib/clock.js.map +0 -1
  258. package/dist/lib/format.d.ts +0 -35
  259. package/dist/lib/format.d.ts.map +0 -1
  260. package/dist/lib/format.js +0 -117
  261. package/dist/lib/format.js.map +0 -1
  262. package/dist/lib/highlight.d.ts +0 -5
  263. package/dist/lib/highlight.d.ts.map +0 -1
  264. package/dist/lib/highlight.js +0 -86
  265. package/dist/lib/highlight.js.map +0 -1
  266. package/dist/lib/labels.d.ts +0 -103
  267. package/dist/lib/labels.d.ts.map +0 -1
  268. package/dist/lib/labels.js +0 -249
  269. package/dist/lib/labels.js.map +0 -1
  270. package/dist/lib/markdown.d.ts +0 -13
  271. package/dist/lib/markdown.d.ts.map +0 -1
  272. package/dist/lib/markdown.js +0 -118
  273. package/dist/lib/markdown.js.map +0 -1
  274. package/dist/lib/memory.d.ts +0 -27
  275. package/dist/lib/memory.d.ts.map +0 -1
  276. package/dist/lib/memory.js +0 -117
  277. package/dist/lib/memory.js.map +0 -1
  278. package/dist/lib/quota-format.d.ts +0 -28
  279. package/dist/lib/quota-format.d.ts.map +0 -1
  280. package/dist/lib/quota-format.js +0 -67
  281. package/dist/lib/quota-format.js.map +0 -1
  282. package/dist/lib/scroll.d.ts +0 -16
  283. package/dist/lib/scroll.d.ts.map +0 -1
  284. package/dist/lib/scroll.js +0 -70
  285. package/dist/lib/scroll.js.map +0 -1
  286. package/dist/lib/status.d.ts +0 -25
  287. package/dist/lib/status.d.ts.map +0 -1
  288. package/dist/lib/status.js +0 -40
  289. package/dist/lib/status.js.map +0 -1
  290. package/dist/route.d.ts +0 -46
  291. package/dist/route.d.ts.map +0 -1
  292. package/dist/route.js +0 -102
  293. package/dist/route.js.map +0 -1
  294. package/dist/router.d.ts +0 -23
  295. package/dist/router.d.ts.map +0 -1
  296. package/dist/router.js +0 -55
  297. package/dist/router.js.map +0 -1
  298. package/dist/styles/base.d.ts +0 -11
  299. package/dist/styles/base.d.ts.map +0 -1
  300. package/dist/styles/base.js +0 -241
  301. package/dist/styles/base.js.map +0 -1
  302. package/dist/styles/chips.d.ts +0 -2
  303. package/dist/styles/chips.d.ts.map +0 -1
  304. package/dist/styles/chips.js +0 -18
  305. package/dist/styles/chips.js.map +0 -1
  306. package/dist/styles/executor-icon.d.ts +0 -3
  307. package/dist/styles/executor-icon.d.ts.map +0 -1
  308. package/dist/styles/executor-icon.js +0 -9
  309. package/dist/styles/executor-icon.js.map +0 -1
  310. package/dist/styles/facts.d.ts +0 -2
  311. package/dist/styles/facts.d.ts.map +0 -1
  312. package/dist/styles/facts.js +0 -7
  313. package/dist/styles/facts.js.map +0 -1
  314. package/dist/styles/index.d.ts +0 -17
  315. package/dist/styles/index.d.ts.map +0 -1
  316. package/dist/styles/index.js +0 -16
  317. package/dist/styles/index.js.map +0 -1
  318. package/dist/styles/layout.d.ts +0 -2
  319. package/dist/styles/layout.d.ts.map +0 -1
  320. package/dist/styles/layout.js +0 -30
  321. package/dist/styles/layout.js.map +0 -1
  322. package/dist/styles/legend.d.ts +0 -2
  323. package/dist/styles/legend.d.ts.map +0 -1
  324. package/dist/styles/legend.js +0 -8
  325. package/dist/styles/legend.js.map +0 -1
  326. package/dist/styles/meter.d.ts +0 -3
  327. package/dist/styles/meter.d.ts.map +0 -1
  328. package/dist/styles/meter.js +0 -9
  329. package/dist/styles/meter.js.map +0 -1
  330. package/dist/styles/motion.d.ts +0 -2
  331. package/dist/styles/motion.d.ts.map +0 -1
  332. package/dist/styles/motion.js +0 -27
  333. package/dist/styles/motion.js.map +0 -1
  334. package/dist/styles/prose.d.ts +0 -3
  335. package/dist/styles/prose.d.ts.map +0 -1
  336. package/dist/styles/prose.js +0 -59
  337. package/dist/styles/prose.js.map +0 -1
  338. package/dist/styles/reset.d.ts +0 -2
  339. package/dist/styles/reset.d.ts.map +0 -1
  340. package/dist/styles/reset.js +0 -13
  341. package/dist/styles/reset.js.map +0 -1
  342. package/dist/styles/status.d.ts +0 -2
  343. package/dist/styles/status.d.ts.map +0 -1
  344. package/dist/styles/status.js +0 -52
  345. package/dist/styles/status.js.map +0 -1
  346. package/dist/styles/text.d.ts +0 -2
  347. package/dist/styles/text.d.ts.map +0 -1
  348. package/dist/styles/text.js +0 -21
  349. package/dist/styles/text.js.map +0 -1
  350. package/dist/styles/theme-sheet.d.ts +0 -12
  351. package/dist/styles/theme-sheet.d.ts.map +0 -1
  352. package/dist/styles/theme-sheet.js +0 -24
  353. package/dist/styles/theme-sheet.js.map +0 -1
  354. package/dist/styles/themes.d.ts +0 -75
  355. package/dist/styles/themes.d.ts.map +0 -1
  356. package/dist/styles/themes.js +0 -452
  357. package/dist/styles/themes.js.map +0 -1
  358. package/dist/styles/tokens.d.ts +0 -8
  359. package/dist/styles/tokens.d.ts.map +0 -1
  360. package/dist/styles/tokens.js +0 -32
  361. package/dist/styles/tokens.js.map +0 -1
  362. package/dist/themes/boot.d.ts +0 -7
  363. package/dist/themes/boot.d.ts.map +0 -1
  364. package/dist/themes/boot.js +0 -14
  365. package/dist/themes/boot.js.map +0 -1
  366. package/dist/themes/choice.d.ts +0 -16
  367. package/dist/themes/choice.d.ts.map +0 -1
  368. package/dist/themes/choice.js +0 -45
  369. package/dist/themes/choice.js.map +0 -1
  370. package/dist/themes/data.d.ts +0 -42
  371. package/dist/themes/data.d.ts.map +0 -1
  372. package/dist/themes/data.js +0 -356
  373. package/dist/themes/data.js.map +0 -1
  374. package/dist/themes/index.d.ts +0 -5
  375. package/dist/themes/index.d.ts.map +0 -1
  376. package/dist/themes/index.js +0 -8
  377. package/dist/themes/index.js.map +0 -1
  378. package/dist/themes/sheet.d.ts +0 -12
  379. package/dist/themes/sheet.d.ts.map +0 -1
  380. package/dist/themes/sheet.js +0 -24
  381. package/dist/themes/sheet.js.map +0 -1
  382. package/dist/themes/tokens-list.d.ts +0 -15
  383. package/dist/themes/tokens-list.d.ts.map +0 -1
  384. package/dist/themes/tokens-list.js +0 -62
  385. package/dist/themes/tokens-list.js.map +0 -1
  386. package/dist/words/units.d.ts +0 -9
  387. package/dist/words/units.d.ts.map +0 -1
  388. package/dist/words/units.js +0 -12
  389. package/dist/words/units.js.map +0 -1
@@ -1,455 +0,0 @@
1
- // The pipeline graph, by layer: the plan projected onto one layer of its flow.
2
- // --- the pipeline graph, by layer ---------------------------------------------------
3
- //
4
- // The run as a graph of what its flow's code did, one layer at a time. A layer is
5
- // a prefix of the flow path (the names of the functions a task was created in,
6
- // outermost first). At a layer, a task created in the layer's own function is
7
- // shown in a kind node (its plan group); a task created deeper is shown in the
8
- // node of the function the layer's function called on the way (a function node).
9
- // The same rule applies at every depth. Nodes whose call sites sit in the same
10
- // loop of the layer's function are drawn in one loop box, a nested loop's box
11
- // inside it; each box counts its own loop's passes (`flow[].loops[].pass`). Edges
12
- // are the tasks' `after` (data) and `created_from` (created after those results),
13
- // projected onto the layer's nodes; an edge from a task outside the layer is an
14
- // incoming stub. Inside each node, one mark per unit, in the same unit order
15
- // everywhere in the layer.
16
- //
17
- // The drawing is a layered (Sugiyama) layout of the compound graph, by container
18
- // (the layer's top level, then each loop box, a box being one item of its parent):
19
- // layers by longest path, with the edges that go back to a loop's next pass left
20
- // out; a point (`~...`) on every layer a long edge crosses, so no edge runs over a
21
- // node; crossings reduced by barycentre sweeps; then coordinates from the measured
22
- // sizes (`layoutGraph`), every edge routed through those points and bending only in
23
- // the gaps between layers. The order depends on structure only, never on states,
24
- // and keeps a previous order: nodes that appear later are appended to their layer.
25
- import { isPython } from '@contraagent/api';
26
- import { orderRows, push, rankLayers, isPoint } from './arrange.js';
27
- import { boxChain, cmpPasses, indexOf, instanceOf, loopsAt, passesAt, placeOf, shortName, startsWith } from './flow-index.js';
28
- import { worstOf, worstState } from './states.js';
29
- import { LOOP_SEGMENT, } from './types.js';
30
- /** Who runs a kind node's tasks: a coding agent, Python, or both (`mixed`). */
31
- function executorOf(ns) {
32
- const py = ns.filter(isPython).length;
33
- return py === 0 ? 'agent' : py === ns.length ? 'python' : 'mixed';
34
- }
35
- const CALL_STATE = { running: 'running', returned: 'done', raised: 'failed', closed: 'failed' };
36
- /** A flow call stopped with an error: it raised, or it was closed. */
37
- const callFailed = (c) => c?.state === 'raised' || c?.state === 'closed';
38
- export function taskMark(ts, unit) {
39
- const ns = ts.map((t) => t.n);
40
- const key = (ns.find((n) => n.state === 'running') ?? ns[ns.length - 1] ?? { key: '' }).key;
41
- return { key, unit, state: worstState(ns), count: ns.length, keys: ns.map((n) => n.key) };
42
- }
43
- /** A kind node's marks: one per unit, and one per task without a unit. */
44
- function kindMarks(ts) {
45
- const byUnit = new Map();
46
- const single = [];
47
- for (const t of ts) {
48
- if (t.n.unit)
49
- push(byUnit, t.n.unit, t);
50
- else
51
- single.push(taskMark([t], ''));
52
- }
53
- return { byUnit: new Map([...byUnit].map(([u, xs]) => [u, taskMark(xs, u)])), single };
54
- }
55
- function instances(ts, d, calls) {
56
- const by = new Map();
57
- for (const t of ts) {
58
- const { id, own } = instanceOf(t, d, calls);
59
- const x = by.get(id) ?? by.set(id, { id, own, tasks: [], unit: '' }).get(id);
60
- x?.tasks.push(t);
61
- }
62
- for (const x of by.values()) {
63
- const us = new Set(x.tasks.map((t) => t.n.unit || ''));
64
- x.unit = us.size === 1 ? [...us][0] : '';
65
- }
66
- return [...by.values()];
67
- }
68
- /**
69
- * A function node's marks: its flow calls, one mark per unit when a call's tasks share one unit, else one per call.
70
- * A call's state is the most severe of its own (raised or closed: failed) and its tasks' (those of the calls it
71
- * started included), so a call that caught a task's failure and returned still shows it.
72
- */
73
- export function flowMarks(ts, d, name, calls) {
74
- const markOf = (xs, unit) => {
75
- const own = xs.map((x) => (x.own ? calls?.get(x.id) : undefined));
76
- const states = xs.map((x, i) => {
77
- const c = own[i];
78
- const tasks = worstState(x.tasks.map((t) => t.n));
79
- return c && CALL_STATE[c.state] ? worstOf([CALL_STATE[c.state], tasks]) : tasks;
80
- });
81
- const tasks = xs.flatMap((x) => x.tasks);
82
- const keys = tasks.map((t) => t.n.key);
83
- const last = xs.find((_, i) => states[i] === 'running') ?? xs[xs.length - 1];
84
- const failed = own.find(callFailed);
85
- const mark = { key: last?.id ?? '', unit, state: worstOf(states), count: keys.length, keys, flow: name, counts: taskCounts(tasks) };
86
- return failed ? { ...mark, error: failed.error ?? '' } : mark;
87
- };
88
- const byUnit = new Map();
89
- const single = [];
90
- const xs = instances(ts, d, calls);
91
- for (const x of xs) {
92
- if (x.unit)
93
- push(byUnit, x.unit, x);
94
- else
95
- single.push(markOf([x], ''));
96
- }
97
- const errors = calls ? xs.filter((x) => x.own && callFailed(calls.get(x.id))).length : 0;
98
- return { byUnit: new Map([...byUnit].map(([u, ys]) => [u, markOf(ys, u)])), single, calls: xs.length, errors };
99
- }
100
- /** Tasks by state. */
101
- function taskCounts(ts) {
102
- const c = { total: ts.length, done: 0, failed: 0, running: 0, pending: 0, skipped: 0, blocked: 0 };
103
- for (const t of ts)
104
- c[t.n.state] += 1;
105
- return c;
106
- }
107
- /** The tasks of each unit's latest pass, by the passes of the loops around them at depth `d` (tasks without a unit count as one unit). */
108
- function latestPass(ts, d) {
109
- const most = new Map();
110
- for (const t of ts) {
111
- const u = t.n.unit || '';
112
- const had = most.get(u);
113
- if (!had || cmpPasses(passesAt(t, d), had) > 0)
114
- most.set(u, passesAt(t, d));
115
- }
116
- return ts.filter((t) => cmpPasses(passesAt(t, d), most.get(t.n.unit || '') ?? []) === 0);
117
- }
118
- /** How many passes each unit's tasks in a node ran in (distinct pass lists at depth `d`). */
119
- function passesByUnit(ts, d) {
120
- const seen = new Map();
121
- for (const t of ts) {
122
- const u = t.n.unit || '';
123
- (seen.get(u) ?? seen.set(u, new Set()).get(u))?.add(passesAt(t, d).join('.'));
124
- }
125
- return new Map([...seen].map(([u, s]) => [u, s.size]));
126
- }
127
- /** A mark with its pass count, when it is more than 1. */
128
- const withPasses = (m, n) => (n && n > 1 ? { ...m, passes: n } : m);
129
- export function project(plan, path, prev, down = false) {
130
- const ix = indexOf(plan);
131
- const d = path.length;
132
- const inside = ix.tasks.filter((t) => startsWith(t.path, path));
133
- const drafts = new Map();
134
- const nodeOfKey = new Map();
135
- for (const t of inside) {
136
- const p = placeOf(t, d);
137
- const x = drafts.get(p.id) ?? drafts.set(p.id, { ...p, tasks: [] }).get(p.id);
138
- x?.tasks.push(t);
139
- nodeOfKey.set(t.n.key, p.id);
140
- }
141
- const marks = new Map();
142
- const shownOf = new Map(); // node id -> the tasks it counts
143
- const boxOf = new Map(); // node id -> its innermost loop box
144
- const boxParent = new Map(); // loop box -> the box it nests in
145
- for (const x of drafts.values()) {
146
- const chain = boxChain(x.loops);
147
- const inner = chain[chain.length - 1] ?? null;
148
- chain.forEach((box, i) => boxParent.set(box, chain[i - 1] ?? null));
149
- if (inner)
150
- boxOf.set(x.id, inner);
151
- // In a loop box, a unit's mark is its latest pass, and counts the passes it ran in.
152
- const shown = inner ? latestPass(x.tasks, d) : x.tasks;
153
- shownOf.set(x.id, shown);
154
- const m = x.type === 'kind' ? kindMarks(shown) : flowMarks(shown, d, x.name, ix.calls);
155
- if (inner) {
156
- const per = passesByUnit(x.tasks, d);
157
- m.byUnit = new Map([...m.byUnit].map(([u, mk]) => [u, withPasses(mk, per.get(u))]));
158
- }
159
- marks.set(x.id, m);
160
- }
161
- const units = [...new Set([...marks.values()].flatMap((m) => [...m.byUnit.keys()]))].sort((a, b) => (ix.unitRank.get(a) ?? 0) - (ix.unitRank.get(b) ?? 0));
162
- // Each box's own loop: its last pass, and the passes each unit ran of it (its
163
- // distinct passes, those of the loops around it included).
164
- const boxLast = new Map();
165
- const boxRan = new Map();
166
- for (const x of drafts.values()) {
167
- const chain = boxChain(x.loops);
168
- for (const t of x.tasks) {
169
- const ps = passesAt(t, d);
170
- chain.forEach((box, i) => {
171
- boxLast.set(box, Math.max(boxLast.get(box) ?? 1, ps[i] ?? 1));
172
- const per = boxRan.get(box) ?? boxRan.set(box, new Map()).get(box);
173
- const u = t.n.unit || '';
174
- (per?.get(u) ?? per?.set(u, new Set()).get(u))?.add(ps.slice(0, i + 1).join('.'));
175
- });
176
- }
177
- }
178
- // The loop boxes an id sits in, innermost first (for a box id, itself first).
179
- const boxPath = (id) => {
180
- const out = [];
181
- let b = id.startsWith(LOOP_SEGMENT) ? id : (boxOf.get(id) ?? null);
182
- while (b) {
183
- out.push(b);
184
- b = boxParent.get(b) ?? null;
185
- }
186
- return out;
187
- };
188
- // The direct child of `container` (a box, or '' for the layer's top level) that holds a node `id`.
189
- const itemIn = (id, container) => {
190
- const bp = boxPath(id);
191
- if (container === '')
192
- return bp[bp.length - 1] ?? id;
193
- const i = bp.indexOf(container);
194
- return i < 0 ? undefined : i === 0 ? id : bp[i - 1];
195
- };
196
- // The deepest loop box holding both ends of an edge (the layer's top level when none).
197
- const commonBox = (a, b) => {
198
- const bp = boxPath(a);
199
- return bp.find((x) => boxPath(b).includes(x)) ?? '';
200
- };
201
- // The container a slot is in: a stub's is the top level.
202
- const containerOf = (id) => (id.startsWith('stub:') ? '' : (boxOf.get(id) ?? ''));
203
- // Edges, projected onto the layer's nodes; from outside it, stubs. An edge whose
204
- // every task joins a later pass of a loop around both ends goes back to the next pass.
205
- const inOrder = new Set();
206
- const pairs = new Map();
207
- const stubs = new Map();
208
- const outside = (o) => {
209
- let c = 0;
210
- while (c < d && o.path[c] === path[c])
211
- c++;
212
- const p = placeOf(o, c);
213
- return { id: `stub:${c}:${p.id}`, label: p.type === 'kind' ? (ix.labels.get(p.name) ?? p.name) : shortName(p.name) };
214
- };
215
- for (const t of inside) {
216
- const to = nodeOfKey.get(t.n.key);
217
- const link = (dep, type) => {
218
- const from = nodeOfKey.get(dep);
219
- if (from === to) {
220
- if (type === 'after')
221
- inOrder.add(to);
222
- return;
223
- }
224
- if (from !== undefined) {
225
- const o = ix.byKey.get(dep);
226
- const a = loopsAt(o, d);
227
- const b = loopsAt(t, d);
228
- let k = 0;
229
- while (k < a.length && a[k] === b[k])
230
- k++;
231
- const same = cmpPasses(passesAt(o, d).slice(0, k), passesAt(t, d).slice(0, k)) === 0;
232
- const key = `${from}\u0000${to}\u0000${type}`;
233
- const e = pairs.get(key) ?? pairs.set(key, { from, to, type, tasks: new Set(), samePass: false }).get(key);
234
- e?.tasks.add(t.n.key);
235
- if (e && same)
236
- e.samePass = true;
237
- return;
238
- }
239
- const o = ix.byKey.get(dep);
240
- if (!o)
241
- return; // not in the plan yet
242
- const s = outside(o);
243
- const k = `${s.id}\u0000${to}\u0000${type}`;
244
- (stubs.get(k) ?? stubs.set(k, { ...s, to, type, tasks: new Set() }).get(k))?.tasks.add(t.n.key);
245
- };
246
- for (const dep of t.n.after ?? [])
247
- link(dep, 'after');
248
- for (const dep of t.from)
249
- link(dep, 'created');
250
- }
251
- // A created_from edge is drawn only where no after edge joins the same two.
252
- const all = [...pairs.values()].filter((e) => e.type === 'after' || !pairs.has(`${e.from}\u0000${e.to}\u0000after`));
253
- const stubList = [...stubs.values()].filter((s) => s.type === 'after' || !stubs.has(`${s.id}\u0000${s.to}\u0000after`));
254
- // Layers, by container: the layer's top level, then each loop box (its own nodes
255
- // and the loop boxes nested in it). Each box is one item of its parent.
256
- const containers = ['', ...boxParent.keys()];
257
- const kidsOf = new Map(containers.map((c) => [c, []]));
258
- for (const id of drafts.keys()) {
259
- for (const c of containers) {
260
- const it = itemIn(id, c);
261
- if (it !== undefined && !kidsOf.get(c)?.includes(it))
262
- kidsOf.get(c)?.push(it);
263
- }
264
- }
265
- const lay = new Map();
266
- for (const c of containers) {
267
- const kids = kidsOf.get(c) ?? [];
268
- const prevRows = c === '' ? prev?.layers : prev?.boxes[c];
269
- const fixed = new Map();
270
- prevRows?.forEach((row, i) => row.forEach((id) => kids.includes(id) && fixed.set(id, i)));
271
- // An edge back to a loop's next pass does not set the layers.
272
- const es = all
273
- .filter((e) => e.samePass && commonBox(e.from, e.to) === c)
274
- .map((e) => [itemIn(e.from, c), itemIn(e.to, c)]);
275
- lay.set(c, rankLayers(kids, es, fixed));
276
- }
277
- // Stubs, in the top level: in the layer before the first they lead to (a new first layer when that is the first).
278
- const top = lay.get('');
279
- const stubIds = [...new Set(stubList.map((s) => s.id))];
280
- const prevTop = new Map();
281
- prev?.layers.forEach((row, i) => row.forEach((id) => prevTop.set(id, i)));
282
- const stubAt = new Map(stubIds.map((id) => [id, prevTop.get(id) ?? Math.min(...stubList.filter((s) => s.id === id).map((s) => top.get(itemIn(s.to, '')) ?? 0)) - 1]));
283
- if ([...stubAt.values()].some((l) => l < 0)) {
284
- for (const [id, l] of top)
285
- top.set(id, l + 1);
286
- for (const [id, l] of stubAt)
287
- stubAt.set(id, l + 1);
288
- }
289
- for (const [id, l] of stubAt)
290
- top.set(id, l);
291
- const layerOf = (c, id) => lay.get(c)?.get(id) ?? 0;
292
- const lastLayer = (c) => Math.max(0, ...(lay.get(c)?.values() ?? []));
293
- // Every edge whose ends are not in a later layer than its start goes back: not drawn.
294
- const isBack = (from, to) => {
295
- const c = commonBox(from, to);
296
- return layerOf(c, itemIn(from, c)) >= layerOf(c, itemIn(to, c));
297
- };
298
- const edges = all.map((e) => ({ from: e.from, to: e.to, tasks: e.tasks.size, type: e.type, back: isBack(e.from, e.to) }));
299
- // Each container's rows: its items by layer, a previous order kept, new items after it.
300
- const rows = new Map();
301
- for (const c of containers) {
302
- const prevRows = c === '' ? prev?.layers : prev?.boxes[c];
303
- const kept = (prevRows ?? []).flat();
304
- const ids = [...(c === '' ? [...stubIds] : []), ...(kidsOf.get(c) ?? [])];
305
- ids.sort((a, b) => {
306
- const ka = kept.indexOf(a);
307
- const kb = kept.indexOf(b);
308
- return (ka < 0 ? Infinity : ka) - (kb < 0 ? Infinity : kb);
309
- });
310
- const r = Array.from({ length: lastLayer(c) + 1 }, () => []);
311
- for (const id of ids)
312
- r[layerOf(c, id)]?.push(id);
313
- rows.set(c, r);
314
- }
315
- // Routes: the drawn edges through points on the layers they cross. The points of
316
- // edges from one place (of one type) are shared, so their lines run as one.
317
- const routes = [];
318
- const points = new Set();
319
- const point = (c, origin, type, l) => {
320
- const id = `~${c}|${origin}|${type}|${l}`;
321
- if (!points.has(id)) {
322
- points.add(id);
323
- rows.get(c)?.[l]?.push(id);
324
- }
325
- return { id, in: c };
326
- };
327
- // A point beside a box, in its layer of the container around it: an edge that leaves or
328
- // enters the box through its side, between two of its layers, passes there.
329
- const byPoint = (c, box, origin, type) => {
330
- const l = layerOf(c, box);
331
- const id = `~${c}|by:${box}|${origin}|${type}|${l}`;
332
- if (!points.has(id)) {
333
- points.add(id);
334
- rows.get(c)?.[l]?.push(id);
335
- }
336
- return { id, in: c };
337
- };
338
- // An edge enters a box at its near side only to reach the box's first layer (and,
339
- // top to bottom, not even then: the box's label is on that side); else through its
340
- // side, next to the layer it goes to. It leaves at the far side only from the box's
341
- // last layer, else through its side. So it runs inside a box only where it starts or ends.
342
- const route = (from, to, type) => {
343
- const c = from.startsWith('stub:') ? '' : commonBox(from, to);
344
- let curIn = containerOf(from);
345
- let cur = from;
346
- const steps = [{ id: from, in: curIn }];
347
- // Out of the boxes around the source, up to the common container.
348
- while (curIn !== c) {
349
- const up = boxParent.get(curIn) ?? '';
350
- steps.push({ id: curIn, in: up });
351
- if (layerOf(curIn, cur) < lastLayer(curIn))
352
- steps.push(byPoint(up, curIn, cur, type));
353
- cur = curIn;
354
- curIn = up;
355
- }
356
- // Across the common container, then into the boxes around the target.
357
- const target = itemIn(to, c);
358
- for (let l = layerOf(c, cur) + 1; l < layerOf(c, target); l++)
359
- steps.push(point(c, cur, type, l));
360
- const bp = boxPath(to);
361
- const inward = bp.slice(0, c === '' ? bp.length : bp.indexOf(c)).reverse();
362
- const origin = `>${c}:${cur}`;
363
- let k = c;
364
- for (const box of inward) {
365
- const n = itemIn(to, box);
366
- if (layerOf(box, n) > 0 || down)
367
- steps.push(byPoint(k, box, origin, type));
368
- steps.push({ id: box, in: k });
369
- k = box;
370
- }
371
- steps.push({ id: to, in: k });
372
- return steps;
373
- };
374
- for (const e of edges)
375
- if (!e.back)
376
- routes.push({ from: e.from, to: e.to, type: e.type, steps: route(e.from, e.to, e.type) });
377
- for (const s of stubList)
378
- routes.push({ from: s.id, to: s.to, type: s.type, steps: route(s.id, s.to, s.type) });
379
- // The order within each layer.
380
- const slots = {};
381
- for (const c of containers) {
382
- const links = [];
383
- const lv = new Map((rows.get(c) ?? []).flatMap((r, i) => r.map((id) => [id, i])));
384
- for (const r of routes)
385
- for (let i = 1; i < r.steps.length; i++) {
386
- const a = r.steps[i - 1];
387
- const b = r.steps[i];
388
- if (a.in === c && b.in === c && lv.get(a.id) !== lv.get(b.id))
389
- links.push([a.id, b.id]);
390
- }
391
- const hasPrev = c === '' ? !!prev : !!prev?.boxes[c];
392
- // A point beside a box is right after it.
393
- slots[c] = orderRows(rows.get(c) ?? [], links, hasPrev).map((row) => {
394
- const by = row.filter((id) => id.includes('|by:'));
395
- const rest = row.filter((id) => !id.includes('|by:'));
396
- return rest.flatMap((id) => [id, ...by.filter((p) => p.includes(`|by:${id}|`))]);
397
- });
398
- }
399
- const real = (r) => r.map((row) => row.filter((id) => !isPoint(id)));
400
- const boxes = [...boxParent.keys()].map((id) => {
401
- const spread = new Map();
402
- for (const [u, ran] of boxRan.get(id) ?? [])
403
- if (u)
404
- spread.set(ran.size, (spread.get(ran.size) ?? 0) + 1);
405
- return {
406
- id,
407
- loop: Number(id.slice(LOOP_SEGMENT.length).split('.').pop()),
408
- file: inside[0]?.frames[d - 1]?.file ?? '',
409
- parent: boxParent.get(id) ?? null,
410
- passes: boxLast.get(id) ?? 1,
411
- spread: [...spread].sort((a, b) => a[0] - b[0]),
412
- layers: real(slots[id] ?? []).filter((r) => r.length),
413
- };
414
- });
415
- const outerRows = real(slots[''] ?? []).map((row) => row.filter((id) => !id.startsWith('stub:')));
416
- const nodeOf = (x) => {
417
- const m = marks.get(x.id);
418
- const hasUnits = m.byUnit.size > 0;
419
- return {
420
- id: x.id,
421
- type: x.type,
422
- name: x.name,
423
- label: x.type === 'kind' ? (ix.labels.get(x.name) ?? x.name) : shortName(x.name),
424
- kinds: [...new Set(x.tasks.map((t) => t.n.kind))],
425
- executor: x.type === 'flow' ? null : executorOf(x.tasks.map((t) => t.n)),
426
- box: boxOf.get(x.id) ?? null,
427
- units: hasUnits ? units.map((u) => m.byUnit.get(u) ?? null) : [],
428
- single: m.single,
429
- inOrder: inOrder.has(x.id),
430
- counts: taskCounts(shownOf.get(x.id) ?? []),
431
- calls: m.calls ?? 0,
432
- errors: m.errors ?? 0,
433
- };
434
- };
435
- const byBox = new Map(boxes.map((b) => [b.id, b]));
436
- // Every node id, in drawing order: expand each loop box to the nodes nested in it.
437
- const expand = (ids) => ids.flatMap((id) => (id.startsWith(LOOP_SEGMENT) ? expand((byBox.get(id)?.layers ?? []).flat()) : [id]));
438
- return {
439
- graph: {
440
- path: [...path],
441
- nodes: expand(outerRows.flat()).map((id) => nodeOf(drafts.get(id))),
442
- layers: outerRows.filter((r) => r.length),
443
- boxes,
444
- edges,
445
- stubs: stubList.map((s) => ({ id: s.id, label: s.label, to: s.to, tasks: s.tasks.size, type: s.type })),
446
- units,
447
- slots,
448
- routes,
449
- order: { layers: real(slots[''] ?? []), boxes: Object.fromEntries(boxes.map((b) => [b.id, real(slots[b.id] ?? [])])) },
450
- },
451
- drafts,
452
- ix,
453
- };
454
- }
455
- //# sourceMappingURL=project.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../../src/elements/overview/graph/project.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- import type { PassMatrix } from './matrix.js';
2
- import type { GraphMark, GraphNode, LayerGraph, LoopBox, NodeCounts } from './types.js';
3
- /**
4
- * A mark's selection id: its node, the passes of its column in a loop's passes
5
- * (`|1.2`), and its unit, or its key for a mark without one (`kind:review@7#gamma`).
6
- */
7
- export declare const markSel: (node: string, m: Pick<GraphMark, "unit" | "key">, passes?: readonly number[]) => string;
8
- /** What a selection id names: a mark (with its node, and its column's passes in a loop's passes), a node or a loop box. */
9
- export type Selected = {
10
- type: 'mark';
11
- id: string;
12
- node: GraphNode;
13
- mark: GraphMark;
14
- passes: number[];
15
- } | {
16
- type: 'node';
17
- id: string;
18
- node: GraphNode;
19
- } | {
20
- type: 'box';
21
- id: string;
22
- box: LoopBox;
23
- };
24
- /**
25
- * What `sel` names in a layer's graph, or, with `matrix`, in a loop's passes (a mark
26
- * there names its column's passes); null when it names nothing there.
27
- */
28
- export declare function selected(g: LayerGraph, matrix: PassMatrix | null, sel: string): Selected | null;
29
- /** The tasks of a layer's nodes by state, added up. */
30
- export declare function layerCounts(nodes: readonly Pick<GraphNode, 'counts'>[]): NodeCounts;
31
- //# sourceMappingURL=selection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../../../src/elements/overview/graph/selection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExF;;;GAGG;AACH,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC,EAAE,SAAQ,SAAS,MAAM,EAAO,KAAG,MAC/B,CAAC;AAE7E,2HAA2H;AAC3H,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAChF;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC;AAE9C;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAsB/F;AAED,uDAAuD;AACvD,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,GAAG,UAAU,CAInF"}
@@ -1,44 +0,0 @@
1
- /**
2
- * A mark's selection id: its node, the passes of its column in a loop's passes
3
- * (`|1.2`), and its unit, or its key for a mark without one (`kind:review@7#gamma`).
4
- */
5
- export const markSel = (node, m, passes = []) => `${node}${passes.length ? `|${passes.join('.')}` : ''}#${m.unit || m.key}`;
6
- /**
7
- * What `sel` names in a layer's graph, or, with `matrix`, in a loop's passes (a mark
8
- * there names its column's passes); null when it names nothing there.
9
- */
10
- export function selected(g, matrix, sel) {
11
- if (!sel)
12
- return null;
13
- const hash = sel.indexOf('#');
14
- if (hash < 0) {
15
- const node = g.nodes.find((n) => n.id === sel);
16
- if (node)
17
- return { type: 'node', id: sel, node };
18
- const box = g.boxes.find((b) => b.id === sel);
19
- return box ? { type: 'box', id: sel, box } : null;
20
- }
21
- const [nodeId = '', pass] = sel.slice(0, hash).split('|');
22
- const who = sel.slice(hash + 1);
23
- const is = (m) => !!m && (m.unit ? m.unit === who : m.key === who);
24
- if (pass !== undefined) {
25
- if (!matrix)
26
- return null;
27
- const ci = matrix.columns.findIndex((c) => c.node.id === nodeId && c.passes.join('.') === pass);
28
- const col = matrix.columns[ci];
29
- const mark = matrix.rows.map((r) => r.cells[ci]).find(is);
30
- return col && mark ? { type: 'mark', id: sel, node: col.node, mark, passes: col.passes } : null;
31
- }
32
- const node = g.nodes.find((n) => n.id === nodeId);
33
- const mark = node ? [...node.units, ...node.single].find(is) : undefined;
34
- return node && mark ? { type: 'mark', id: sel, node, mark, passes: [] } : null;
35
- }
36
- /** The tasks of a layer's nodes by state, added up. */
37
- export function layerCounts(nodes) {
38
- const c = { total: 0, done: 0, failed: 0, running: 0, pending: 0, skipped: 0, blocked: 0 };
39
- for (const n of nodes)
40
- for (const k of Object.keys(c))
41
- c[k] += n.counts[k];
42
- return c;
43
- }
44
- //# sourceMappingURL=selection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"selection.js","sourceRoot":"","sources":["../../../../src/elements/overview/graph/selection.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { PlanNode, TaskState } from '@contraagent/api';
2
- export declare const SEVERITY: Record<TaskState, number>;
3
- /** The state a mark of several tasks shows: the most severe of them. */
4
- export declare const worstState: (nodes: readonly PlanNode[]) => TaskState;
5
- export declare const worstOf: (states: readonly TaskState[]) => TaskState;
6
- //# sourceMappingURL=states.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"states.d.ts","sourceRoot":"","sources":["../../../../src/elements/overview/graph/states.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE5D,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAA0E,CAAC;AAE1H,wEAAwE;AACxE,eAAO,MAAM,UAAU,GAAI,OAAO,SAAS,QAAQ,EAAE,KAAG,SACoC,CAAC;AAE7F,eAAO,MAAM,OAAO,GAAI,QAAQ,SAAS,SAAS,EAAE,KAAG,SAA4F,CAAC"}
@@ -1,5 +0,0 @@
1
- export const SEVERITY = { failed: 5, running: 4, blocked: 3, pending: 2, skipped: 1, done: 0 };
2
- /** The state a mark of several tasks shows: the most severe of them. */
3
- export const worstState = (nodes) => nodes.reduce((a, n) => (SEVERITY[n.state] > SEVERITY[a] ? n.state : a), 'done');
4
- export const worstOf = (states) => states.reduce((a, s) => (SEVERITY[s] > SEVERITY[a] ? s : a), 'done');
5
- //# sourceMappingURL=states.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"states.js","sourceRoot":"","sources":["../../../../src/elements/overview/graph/states.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,QAAQ,GAA8B,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAE1H,wEAAwE;AACxE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAA0B,EAAa,EAAE,CAClE,KAAK,CAAC,MAAM,CAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAE7F,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,MAA4B,EAAa,EAAE,CAAC,MAAM,CAAC,MAAM,CAAY,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC"}