@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,549 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { createExportClient, deriveRun, isRunLive, liveActivities, MonitorStore, hostOf, openExportFeed, runActivity, runIdOf, runRow, } from '@contraagent/api';
8
+ import { localized, msg, str } from '@lit/localize';
9
+ import { LitElement, html, nothing } from 'lit';
10
+ import { customElement, property, query, state } from 'lit/decorators.js';
11
+ import { LOCALE_NAMES, allLocales, chooseLocale, configureLocales, getLocale, isLocale } from '../../core/i18n.js';
12
+ import { LocalMemory, flushMemory, keepMemory, memoryOf } from '../../core/memory.js';
13
+ import { ScrollMemory } from '../../core/scroll.js';
14
+ import { ViewRouter } from '../../core/view-router.js';
15
+ import { LocaleController } from '../../controllers/locale.js';
16
+ import { ShortcutsController, isShortcutScope } from '../../controllers/shortcuts.js';
17
+ import { ThemeController } from '../../controllers/theme.js';
18
+ import { runLine, runLineAccounts, triesLine } from '../../words/index.js';
19
+ import { runMark } from '../../words/run-line.js';
20
+ import { exportTip, exportedLabel } from '../../words/export.js';
21
+ import { apiErrorLine } from '../../words/api-error.js';
22
+ import { accountsTip } from '../../words/quota.js';
23
+ import { hostFact, hostsLine, lastReport, noReportLabel } from '../../words/hosts.js';
24
+ import { pill } from '@contraagent/elements/primitives';
25
+ import { runTone } from '../../lib/tone.js';
26
+ import { RovingFocusController, toneAttr } from '@contraagent/elements';
27
+ import '@contraagent/elements/segmented/define';
28
+ import { base } from '@contraagent/elements/styles';
29
+ import { adoptThemes, hostThemeStyles, rememberTheme } from '@contraagent/elements/themes';
30
+ import { rowToast } from './ca-toasts.js';
31
+ import { monitorStyles } from './styles.js';
32
+ import { monitorTabs, moveTabIndicator, tabBar, tabId, tabStyles } from './tabs.js';
33
+ import { brand, connection, nowLine } from './header.js';
34
+ import { tabView } from './views.js';
35
+ import './ca-clock.js';
36
+ import './ca-hosts.js';
37
+ import './ca-run-picker.js';
38
+ import './ca-toasts.js';
39
+ import './ca-theme-switch.js';
40
+ import '../trends/ca-trends.js';
41
+ import { browserZone, runGroups, trendsQuery } from '../../lib/trends.js';
42
+ import { trendsTip, trendsTitle } from '../../words/trends.js';
43
+ /** Applies a typed filter to the URL after the reader stops typing, so the history is not written per key. */
44
+ const Q_DEBOUNCE_MS = 250;
45
+ /**
46
+ * The whole monitor: header, run switcher, tabs, filters and the views, live.
47
+ * It owns the data (`MonitorStore`) and the view route (`ViewRouter`); every view below
48
+ * it only renders what it is given and sends `ca-*` events back up.
49
+ */
50
+ let CaMonitor = class CaMonitor extends LitElement {
51
+ static { this.styles = [hostThemeStyles, base, tabStyles, monitorStyles]; }
52
+ constructor() {
53
+ super();
54
+ /**
55
+ * Where the monitor's API is served, such as `http://127.0.0.1:8787`, or a
56
+ * path of this page's origin, such as `/monitor` (`contraagent monitor
57
+ * --base-path` writes it into the page it serves); '' is this page's origin.
58
+ * A server on another origin must allow this page's
59
+ * (`contraagent monitor --cors-origin`). It takes effect whenever it is set,
60
+ * before or after the element connects: a change closes the old server's
61
+ * feeds and opens the run named by `run`, else the new server's newest run.
62
+ * A request that gets no JSON answer (a network error, a status outside 2xx,
63
+ * or an HTML page from a server without the API) is shown above the view,
64
+ * with its URL and cause, and written to the console.
65
+ */
66
+ this.baseUrl = '';
67
+ /**
68
+ * An export to read instead of a server (`contraagent monitor export`): its `data/`
69
+ * directory, relative to the page (`export="data/"`) or absolute. The monitor then
70
+ * makes no request to an API and opens no feed: it reads the export's files, which
71
+ * hold no transcripts and no processes. Set, it outranks `base-url`.
72
+ */
73
+ this.exportUrl = '';
74
+ /**
75
+ * `url`: the monitor is the page. The view route lives in the address bar (Back
76
+ * and reload return to it), and the monitor sets the page's title, `lang` and
77
+ * theme. `memory`: for a monitor embedded in another page. The view route, the
78
+ * scroll positions and the open sections live in the element, and the page's
79
+ * URL, history, title and `<html>` attributes stay the host's. A change after
80
+ * connecting takes effect at once: `memory` keeps the view route shown, `url`
81
+ * reads the address bar's.
82
+ */
83
+ this.history = 'url';
84
+ /**
85
+ * Where the single-key shortcuts (1 to 9 for the tabs, `r` for the runs, `/`
86
+ * for the filter) work: `page`, anywhere in the page except in a text field;
87
+ * `element`, only while the focus is inside the monitor; `off`, nowhere.
88
+ * Unset: `page` with `history="url"`, `element` with `history="memory"`.
89
+ */
90
+ this.shortcuts = '';
91
+ /**
92
+ * The run to open first (in `memory` mode, or when the URL names none). A
93
+ * change after connecting opens that run.
94
+ */
95
+ this.run = '';
96
+ /**
97
+ * The language to show (`en`, `ja`). Unset: the reader's earlier choice, else
98
+ * the browser's language. The header's switch changes it and remembers it.
99
+ */
100
+ this.locale = '';
101
+ /**
102
+ * The theme: `contraagent-dark`, `contraagent-light`, `system` (one of the two,
103
+ * as the system's colour scheme), `github-dark`, `github-light`, `one-dark`,
104
+ * `nord` or `high-contrast`. Unset: the reader's earlier choice, else
105
+ * `contraagent-dark`. The header's control changes it and remembers it. The
106
+ * theme shown is reflected as `data-ca-theme` (on `<html>` too, with `history="url"`).
107
+ */
108
+ this.theme = '';
109
+ /** Reflects whether the run is live (the logo moves). */
110
+ this.live = false;
111
+ this.pickerOpen = false;
112
+ /** The filter text as typed, ahead of the URL. */
113
+ this.qDraft = null;
114
+ this.themes = new ThemeController(this, { theme: () => this.theme, pageWide: () => this.history === 'url' });
115
+ /** One tab stop for the tab list, on the selected tab; the arrow keys, Home and End move between the tabs. */
116
+ this.tabFocus = new RovingFocusController(this, {
117
+ items: () => [...this.renderRoot.querySelectorAll('[role="tablist"] [role="tab"]')],
118
+ layout: 'horizontal',
119
+ wrap: true,
120
+ });
121
+ /** The `baseUrl` the store was made for, and the `history` the view router was. */
122
+ this.storeBase = '';
123
+ this.viewRouterMode = 'url';
124
+ /** Stop listening to the store. */
125
+ this.storeCleanups = [];
126
+ this.mainScroll = new ScrollMemory('main', () => memoryOf(this));
127
+ this.pendingScroll = null;
128
+ this.qTimer = null;
129
+ this.cleanups = [];
130
+ /** The scroll positions and open sections, with `history="memory"`. */
131
+ this.localMemory = new LocalMemory();
132
+ /** Closes the run picker on a click outside it; listened for on the document only while the picker is open. */
133
+ this.onOutsideClick = (e) => {
134
+ if (!e.composedPath().some((n) => n instanceof HTMLElement && (n.localName === 'ca-run-picker' || n.classList.contains('runbtn'))))
135
+ this.pickerOpen = false;
136
+ };
137
+ this.outsideClickOn = false;
138
+ this.navObserver = null;
139
+ this.navObserved = null;
140
+ /** Whether the elements can switch language: false when the page configured Lit Localize itself. */
141
+ this.locales = false;
142
+ this.language = new LocaleController(this, { locale: () => this.locale, pageWide: () => this.history === 'url' });
143
+ new ShortcutsController(this, (e) => this.onKey(e), () => this.shortcutScope);
144
+ }
145
+ /** The first paint waits for the reader's language: its module loads when first chosen. */
146
+ async scheduleUpdate() {
147
+ await this.language.ready;
148
+ return super.scheduleUpdate();
149
+ }
150
+ connectedCallback() {
151
+ // Set up here, not at import: a page that only imports the package keeps its own setup.
152
+ this.locales = configureLocales();
153
+ adoptThemes(this.ownerDocument);
154
+ super.connectedCallback();
155
+ this.openStore();
156
+ this.openViewRouter();
157
+ void this.store.start();
158
+ this.cleanups.push(() => {
159
+ this.listenOutside(false);
160
+ this.navObserver?.disconnect();
161
+ this.navObserver = null;
162
+ this.navObserved = null;
163
+ });
164
+ this.addEventListener('ca-open-task', (e) => {
165
+ this.navigate({ tab: 'stream', key: e.detail.key, ...(e.detail.view ? { view: e.detail.view } : {}) });
166
+ });
167
+ this.addEventListener('ca-navigate', (e) => {
168
+ const { replace, ...patch } = e.detail;
169
+ this.navigate(patch, { replace: replace === true });
170
+ });
171
+ this.addEventListener('ca-select-run', (e) => this.navigate({ run: e.detail.run, page: '' }));
172
+ this.addEventListener('ca-filter', (e) => this.navigate(e.detail));
173
+ this.addEventListener('ca-choose-theme', (e) => {
174
+ this.theme = e.detail.theme;
175
+ rememberTheme(e.detail.theme);
176
+ });
177
+ }
178
+ /** Where the store reads: an export's files, else the server at `baseUrl`. */
179
+ get source() {
180
+ return this.exportUrl ? `export:${this.exportUrl}` : this.baseUrl;
181
+ }
182
+ /** A store for the export, else for `baseUrl`, shown and listened to; not started. */
183
+ openStore() {
184
+ this.storeBase = this.source;
185
+ if (this.exportUrl) {
186
+ const client = createExportClient(new URL(this.exportUrl, this.ownerDocument.baseURI).href);
187
+ this.store = new MonitorStore({ client, openRunFeed: openExportFeed(client), runsEveryMs: 0 });
188
+ }
189
+ else
190
+ this.store = new MonitorStore({ baseUrl: this.baseUrl });
191
+ this.show(this.store.snapshot);
192
+ this.storeCleanups.push(this.store.subscribe((s) => {
193
+ this.show(s);
194
+ this.pickDefaultRun();
195
+ }), this.store.onNewRow((row) => this.toasts?.show(...rowToast(row, this.snap.run))));
196
+ }
197
+ closeStore() {
198
+ for (const fn of this.storeCleanups.splice(0))
199
+ fn();
200
+ this.store.stop();
201
+ }
202
+ /**
203
+ * A view router for `history`, started at the `run` property's run; when it replaces
204
+ * another view router, `memory` starts at the view route shown and `url` at the address bar's.
205
+ */
206
+ openViewRouter() {
207
+ this.viewRouterMode = this.history;
208
+ keepMemory(this, this.history === 'memory' ? this.localMemory : null);
209
+ const at = !this.viewRoute ? (this.run ? { run: this.run } : {}) : this.history === 'memory' ? this.viewRoute : {};
210
+ this.viewRouter = new ViewRouter(this.history, (viewRoute, cause) => this.onViewRoute(viewRoute, cause), at, flushMemory);
211
+ this.viewRouter.start();
212
+ }
213
+ /**
214
+ * A connection property changed while connected: a new `base-url` gets a new
215
+ * store (the feeds of the old one close) and the run named by `run`, else the
216
+ * newest of the new server's; a new `history` gets a new view router; a new `run` opens it.
217
+ */
218
+ willUpdate(changed) {
219
+ if (!this.isConnected || !this.store)
220
+ return;
221
+ if (this.source !== this.storeBase) {
222
+ this.closeStore();
223
+ this.openStore();
224
+ this.navigate({ run: this.run }, { replace: true });
225
+ this.store.selectRun(this.viewRoute.run);
226
+ void this.store.start();
227
+ }
228
+ if (this.history !== this.viewRouterMode) {
229
+ this.viewRouter.stop();
230
+ this.openViewRouter();
231
+ }
232
+ if (changed.has('run') && changed.get('run') !== undefined && this.run)
233
+ this.navigate({ run: this.run });
234
+ }
235
+ /** Show a new snapshot of the data, and whether the run is live; write a new API failure to the console. */
236
+ show(snap) {
237
+ // A new failure of the API goes to the console too, as the view says it.
238
+ if (snap.error && snap.error !== this.snap?.error)
239
+ console.error(apiErrorLine(snap.error));
240
+ this.snap = snap;
241
+ this.live = isRunLive(snap.state, runRow(snap.runs, snap.run));
242
+ }
243
+ /** Where the single-key shortcuts work now: the `shortcuts` property, else by `history`. */
244
+ get shortcutScope() {
245
+ return isShortcutScope(this.shortcuts) ? this.shortcuts : this.history === 'url' ? 'page' : 'element';
246
+ }
247
+ /** Listen for a click outside the run picker on the document (while it is open), or stop. */
248
+ listenOutside(on) {
249
+ if (on === this.outsideClickOn)
250
+ return;
251
+ this.outsideClickOn = on;
252
+ if (on)
253
+ document.addEventListener('click', this.onOutsideClick);
254
+ else
255
+ document.removeEventListener('click', this.onOutsideClick);
256
+ }
257
+ /** The theme shown now. */
258
+ get shownTheme() {
259
+ return this.themes.shown;
260
+ }
261
+ disconnectedCallback() {
262
+ super.disconnectedCallback();
263
+ for (const fn of this.cleanups.splice(0))
264
+ fn();
265
+ keepMemory(this, null);
266
+ this.viewRouter.stop();
267
+ this.closeStore();
268
+ this.mainScroll.detach();
269
+ }
270
+ /** Go elsewhere: the view route changes, and with it the URL (pushing an entry for a new place). */
271
+ navigate(patch, opts = {}) {
272
+ this.viewRouter.navigate(patch, opts);
273
+ }
274
+ onViewRoute(viewRoute, cause) {
275
+ const before = this.viewRoute;
276
+ this.viewRoute = viewRoute;
277
+ if (cause !== 'replace')
278
+ this.qDraft = null;
279
+ this.store.selectRun(viewRoute.run);
280
+ // Another tab of the same trends shows what is loaded already.
281
+ const sameTrends = before?.page === 'trends' && JSON.stringify(trendsQuery(before)) === JSON.stringify(trendsQuery(viewRoute));
282
+ if (viewRoute.page !== 'trends')
283
+ this.store.closeTrends();
284
+ else if (!sameTrends)
285
+ void this.store.loadTrends(trendsQuery(viewRoute));
286
+ this.pickDefaultRun();
287
+ if (cause !== 'replace')
288
+ this.pendingScroll = cause;
289
+ }
290
+ /**
291
+ * With no run named, open the most recent one (replacing the entry: it is a
292
+ * default, not a step). The hosts page names none; a monitor of one host has no hosts page.
293
+ */
294
+ pickDefaultRun() {
295
+ const { info, runs } = this.snap;
296
+ if (this.viewRoute.page === 'trends')
297
+ return;
298
+ if (this.viewRoute.page === 'hosts') {
299
+ if (!info.api_version || info.hosts)
300
+ return;
301
+ this.navigate({ page: '' }, { replace: true });
302
+ }
303
+ const first = runs[0];
304
+ if (!this.viewRoute.run && first)
305
+ this.navigate({ run: first.run }, { replace: true });
306
+ }
307
+ onKey(e) {
308
+ if (e.key === 'r') {
309
+ e.preventDefault();
310
+ this.pickerOpen = true;
311
+ }
312
+ else if (e.key === '/') {
313
+ e.preventDefault();
314
+ this.renderRoot.querySelector('.bar input')?.focus();
315
+ }
316
+ else if (/^[1-9]$/.test(e.key) && !this.viewRoute.page) {
317
+ const tab = monitorTabs(this.snap.info.panels)[Number(e.key) - 1];
318
+ if (tab)
319
+ this.navigate({ tab: tab.id });
320
+ }
321
+ }
322
+ /** The index of the selected tab in the tab list, or -1 (a custom view the run does not have). */
323
+ selectedTab() {
324
+ return monitorTabs(this.snap.info.panels).findIndex((t) => t.id === this.viewRoute.tab);
325
+ }
326
+ /** Close the run picker; the focus goes back to the button that opens it when it was in the picker. */
327
+ closePicker() {
328
+ const inside = this.picker?.matches(':focus-within');
329
+ this.pickerOpen = false;
330
+ if (inside)
331
+ this.runBtn?.focus();
332
+ }
333
+ updated() {
334
+ // A monitor that is the page names it, in its language.
335
+ if (this.history === 'url' && this.snap)
336
+ document.title = msg(str `${this.snap.info.title} monitor`);
337
+ // The click on the run button that opened the picker reaches the document after this: `onOutsideClick` passes it over.
338
+ this.listenOutside(this.isConnected && this.pickerOpen);
339
+ this.observeNav();
340
+ // Tab comes back into the tab list on the selected tab.
341
+ if (this.snap && this.viewRoute)
342
+ this.tabFocus.set(Math.max(0, this.selectedTab()));
343
+ moveTabIndicator(this.renderRoot);
344
+ if (this.main)
345
+ this.mainScroll.attach(this.main);
346
+ if (this.pendingScroll) {
347
+ // A new place starts at the top; Back, Forward and a reload return to where the reader was.
348
+ if (this.pendingScroll === 'push')
349
+ this.mainScroll.reset();
350
+ else
351
+ this.mainScroll.restore();
352
+ this.pendingScroll = null;
353
+ }
354
+ }
355
+ /** Move the line under the selected tab when the tab bar changes size. */
356
+ observeNav() {
357
+ const nav = this.renderRoot.querySelector('nav');
358
+ if (!nav || typeof ResizeObserver === 'undefined')
359
+ return;
360
+ if (this.navObserved === nav)
361
+ return;
362
+ if (!this.navObserver)
363
+ this.navObserver = new ResizeObserver(() => moveTabIndicator(this.renderRoot));
364
+ else
365
+ this.navObserver.disconnect();
366
+ this.navObserver.observe(nav);
367
+ this.navObserved = nav;
368
+ }
369
+ setQ(q) {
370
+ this.qDraft = q;
371
+ if (this.qTimer)
372
+ clearTimeout(this.qTimer);
373
+ this.qTimer = setTimeout(() => {
374
+ this.qTimer = null;
375
+ this.navigate({ q });
376
+ }, Q_DEBOUNCE_MS);
377
+ }
378
+ /** The header's language switch: switch now, and remember it for the next visit. */
379
+ pickLocale(locale) {
380
+ this.locale = locale;
381
+ void chooseLocale(locale);
382
+ }
383
+ render() {
384
+ if (!this.snap || !this.viewRoute)
385
+ return nothing;
386
+ const { snap, viewRoute } = this;
387
+ const acts = liveActivities(snap.state.procs);
388
+ const derived = deriveRun(snap.state.journal, snap.state.plan);
389
+ const tab = this.selectedTab();
390
+ const keys = this.shortcutScope !== 'off';
391
+ const hub = !!snap.info.hosts;
392
+ const hostsPage = viewRoute.page === 'hosts';
393
+ const trendsPage = viewRoute.page === 'trends';
394
+ return html `
395
+ <header>
396
+ ${brand(snap.info.title)}
397
+ <button type="button" class="runbtn" title=${keys ? msg('Switch run (r)') : msg('Switch run')} aria-haspopup="dialog" aria-expanded=${this.pickerOpen ? 'true' : 'false'}
398
+ @click=${() => (this.pickerOpen = !this.pickerOpen)}>
399
+ ${hostsPage ? this.hostsLabel() : trendsPage ? this.trendsLabel() : this.runLabel(hub, derived)}
400
+ <span class="chev" aria-hidden="true">▾</span>
401
+ </button>
402
+ <div class="hdr-right">
403
+ ${nowLine(this, acts)}
404
+ <ca-theme-switch .value=${this.themes.choice} .system=${this.themes.system}></ca-theme-switch>
405
+ ${this.locales
406
+ ? html `<cae-segmented class="langs" label=${msg('Language')} .value=${getLocale()}
407
+ .options=${allLocales.map((l) => ({ value: l, label: LOCALE_NAMES[l], lang: l }))}
408
+ @cae-change=${(e) => isLocale(e.detail.value) && this.pickLocale(e.detail.value)}></cae-segmented>`
409
+ : nothing}
410
+ ${snap.info.export
411
+ ? pill({ text: exportedLabel(snap.info.export), tone: 'muted', title: exportTip(snap.info.export) })
412
+ : connection(snap.connected)}
413
+ <ca-clock class="clock"></ca-clock>
414
+ </div>
415
+ <ca-run-picker .runs=${snap.runs} current=${viewRoute.run} ?open=${this.pickerOpen} ?hub=${hub} .hosts=${snap.hosts?.hosts ?? []} page=${viewRoute.page}
416
+ @ca-close=${() => this.closePicker()}></ca-run-picker>
417
+ </header>
418
+ ${hostsPage
419
+ ? html `${this.renderApiError()}<main id="main"><ca-hosts .hosts=${snap.hosts}></ca-hosts></main>`
420
+ : trendsPage
421
+ ? html `${this.renderApiError()}<main id="main"><ca-trends .view=${snap.trends} days=${viewRoute.days} from=${viewRoute.from} to=${viewRoute.to}
422
+ tz=${viewRoute.tz || browserZone()} group=${viewRoute.group} .groups=${runGroups(snap.runs)} .panels=${snap.info.panels}
423
+ tab=${viewRoute.trendsTab} ?exported=${!!snap.info.export}></ca-trends></main>`
424
+ : html `${this.renderTabs(derived, acts.length)} ${this.renderBar(derived)} ${this.renderApiError()}
425
+ <main id="main" class=${viewRoute.tab === 'stream' ? 'stream' : ''} role="tabpanel" aria-labelledby=${tab >= 0 ? tabId(tab) : nothing}
426
+ >${tabView({ snap, viewRoute, derived, q: this.qDraft ?? viewRoute.q, client: this.store.client, baseUrl: this.store.client.baseUrl })}</main>`}
427
+ <ca-toasts></ca-toasts>
428
+ `;
429
+ }
430
+ /**
431
+ * The run button's label for a run: its status dot, its name (on a hub,
432
+ * without the host, which follows it), no report from its host (a hub; before
433
+ * the run line, which the button may cut), its run line.
434
+ */
435
+ runLabel(hub, derived) {
436
+ const { snap, viewRoute } = this;
437
+ const summary = runRow(snap.runs, snap.run);
438
+ const activity = runActivity(summary, !!snap.state.procs?.alive);
439
+ const dot = runTone(activity, summary?.tasks);
440
+ const host = hub ? (summary?.host_id ?? '') : '';
441
+ return html `<span class="dot" data-tone=${toneAttr(dot)} aria-hidden="true"></span>
442
+ <span class="rn" title=${host ? viewRoute.run : nothing}>${summary && host ? runIdOf(summary) : viewRoute.run || '—'}</span>
443
+ ${host ? html `<span class="hostchip" title=${hostFact(host)}><span class="sr">${hostFact(host)}</span><span aria-hidden="true">${host}</span></span>` : nothing}
444
+ ${activity === 'unresponsive' ? pill({ text: noReportLabel(), tone: 'attention', title: lastReport(hostOf(snap.hosts?.hosts, summary)) }) : nothing}
445
+ ${runMark(summary) ? pill({ ...runMark(summary), tone: 'muted' }) : nothing}
446
+ <span class="rs" title=${summary ? accountsTip(runLineAccounts(snap.state, summary)) : ''}>${summary ? runLine(snap.state, summary, derived) : ''}</span>`;
447
+ }
448
+ /** The run button's label on the trends page: its name, and what it shows. */
449
+ trendsLabel() {
450
+ return html `<span class="dot" data-tone="neutral" aria-hidden="true"></span><span class="rn">${trendsTitle()}</span><span class="rs">${trendsTip()}</span>`;
451
+ }
452
+ /** The run button's label on the hosts page: the hosts in one line, attention while a host has no report. */
453
+ hostsLabel() {
454
+ const hosts = this.snap.hosts?.hosts ?? [];
455
+ return html `<span class="dot" data-tone=${toneAttr(hosts.some((h) => !h.up) ? 'attention' : 'neutral')} aria-hidden="true"></span>
456
+ <span class="rn">${msg('Hosts')}</span><span class="rs">${hostsLine(hosts)}</span>`;
457
+ }
458
+ /** A request to the API that got no JSON answer: its URL and cause. */
459
+ renderApiError() {
460
+ const { error } = this.snap;
461
+ return html `<p class="api-error" role="alert">${error ? html `<span class="ic" aria-hidden="true">✕</span> ${apiErrorLine(error)}` : nothing}</p>`;
462
+ }
463
+ renderTabs(d, busy) {
464
+ const { state } = this.snap;
465
+ const { tries } = d.tries;
466
+ const tasks = d.counts;
467
+ // A tab's count is a total: neutral, never coloured by its worst part. Only a count of what is running is.
468
+ const badge = (id) => id === 'tasks'
469
+ ? [tasks.total || '', 'neutral']
470
+ : id === 'journal'
471
+ ? [tries || '', 'neutral']
472
+ : id === 'procs'
473
+ ? [state.procs?.alive ? busy || '' : '', 'running']
474
+ : null;
475
+ return tabBar(monitorTabs(this.snap.info.panels), this.viewRoute.tab, badge, (id) => this.navigate({ tab: id }), 'main', this.shortcutScope !== 'off');
476
+ }
477
+ renderBar(d) {
478
+ const { viewRoute } = this;
479
+ if (viewRoute.tab !== 'tasks' && viewRoute.tab !== 'journal')
480
+ return nothing;
481
+ const { counts, kinds } = d;
482
+ const total = counts.total;
483
+ return html `<div class="bar">
484
+ <select title=${msg('Kind')} aria-label=${msg('Kind')} @change=${(e) => this.navigate({ kind: e.target.value })}>
485
+ <option value="" ?selected=${!viewRoute.kind}>${msg('All kinds')}</option>
486
+ ${kinds.map((k) => html `<option ?selected=${k === viewRoute.kind}>${k}</option>`)}
487
+ </select>
488
+ <input placeholder=${msg('Filter')} aria-label=${msg('Text filter')} size="22" title=${this.shortcutScope !== 'off' ? msg('Text filter (/)') : msg('Text filter')} .value=${this.qDraft ?? viewRoute.q}
489
+ @input=${(e) => this.setQ(e.target.value)} />
490
+ <span class="meta">${viewRoute.tab === 'journal'
491
+ ? triesLine(d.tries)
492
+ : total === 1 ? msg('1 task') : msg(str `${total} tasks`)}</span>
493
+ </div>`;
494
+ }
495
+ };
496
+ __decorate([
497
+ property({ attribute: 'base-url' })
498
+ ], CaMonitor.prototype, "baseUrl", void 0);
499
+ __decorate([
500
+ property({ attribute: 'export' })
501
+ ], CaMonitor.prototype, "exportUrl", void 0);
502
+ __decorate([
503
+ property()
504
+ ], CaMonitor.prototype, "history", void 0);
505
+ __decorate([
506
+ property()
507
+ ], CaMonitor.prototype, "shortcuts", void 0);
508
+ __decorate([
509
+ property()
510
+ ], CaMonitor.prototype, "run", void 0);
511
+ __decorate([
512
+ property()
513
+ ], CaMonitor.prototype, "locale", void 0);
514
+ __decorate([
515
+ property()
516
+ ], CaMonitor.prototype, "theme", void 0);
517
+ __decorate([
518
+ property({ type: Boolean, reflect: true })
519
+ ], CaMonitor.prototype, "live", void 0);
520
+ __decorate([
521
+ state()
522
+ ], CaMonitor.prototype, "snap", void 0);
523
+ __decorate([
524
+ state()
525
+ ], CaMonitor.prototype, "viewRoute", void 0);
526
+ __decorate([
527
+ state()
528
+ ], CaMonitor.prototype, "pickerOpen", void 0);
529
+ __decorate([
530
+ state()
531
+ ], CaMonitor.prototype, "qDraft", void 0);
532
+ __decorate([
533
+ query('main')
534
+ ], CaMonitor.prototype, "main", void 0);
535
+ __decorate([
536
+ query('ca-toasts')
537
+ ], CaMonitor.prototype, "toasts", void 0);
538
+ __decorate([
539
+ query('.runbtn')
540
+ ], CaMonitor.prototype, "runBtn", void 0);
541
+ __decorate([
542
+ query('ca-run-picker')
543
+ ], CaMonitor.prototype, "picker", void 0);
544
+ CaMonitor = __decorate([
545
+ customElement('ca-monitor'),
546
+ localized()
547
+ ], CaMonitor);
548
+ export { CaMonitor };
549
+ //# sourceMappingURL=ca-monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ca-monitor.js","sourceRoot":"","sources":["../../../src/elements/shell/ca-monitor.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,cAAc,EACd,YAAY,EACZ,MAAM,EACN,cAAc,EACd,WAAW,EACX,OAAO,EACP,MAAM,GAGP,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAuB,MAAM,KAAK,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAe,MAAM,oBAAoB,CAAC;AAChI,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAA4C,MAAM,2BAA2B,CAAC;AACjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAsB,MAAM,gCAAgC,CAAC;AAC1G,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAAE,OAAO,EAAa,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,wCAAwC,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAoC,MAAM,8BAA8B,CAAC;AAC7H,OAAO,EAAE,QAAQ,EAAiB,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACpF,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,eAAe,CAAC;AACvB,OAAO,eAAe,CAAC;AACvB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,gBAAgB,CAAC;AACxB,OAAO,sBAAsB,CAAC;AAC9B,OAAO,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE/D,8GAA8G;AAC9G,MAAM,aAAa,GAAG,GAAG,CAAC;AAE1B;;;;GAIG;AAGI,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,UAAU;aACvB,WAAM,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,CAAC,AAApD,CAAqD;IAuG3E;QACE,KAAK,EAAE,CAAC;QAtGV;;;;;;;;;;;WAWG;QACkC,YAAO,GAAG,EAAE,CAAC;QAClD;;;;;WAKG;QACgC,cAAS,GAAG,EAAE,CAAC;QAClD;;;;;;;;WAQG;QACS,YAAO,GAAmB,KAAK,CAAC;QAC5C;;;;;WAKG;QACS,cAAS,GAAuB,EAAE,CAAC;QAC/C;;;WAGG;QACS,QAAG,GAAG,EAAE,CAAC;QACrB;;;WAGG;QACS,WAAM,GAAgB,EAAE,CAAC;QACrC;;;;;;WAMG;QACS,UAAK,GAAqB,EAAE,CAAC;QACzC,yDAAyD;QACb,SAAI,GAAG,KAAK,CAAC;QAIxC,eAAU,GAAG,KAAK,CAAC;QACpC,kDAAkD;QACjC,WAAM,GAAkB,IAAI,CAAC;QAO7B,WAAM,GAAG,IAAI,eAAe,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC;QAEzH,8GAA8G;QAC7F,aAAQ,GAAG,IAAI,qBAAqB,CAAC,IAAI,EAAE;YAC1D,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAc,+BAA+B,CAAC,CAAC;YAChG,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;QAGH,mFAAmF;QAC3E,cAAS,GAAG,EAAE,CAAC;QACf,mBAAc,GAAmB,KAAK,CAAC;QAC/C,mCAAmC;QAClB,kBAAa,GAAmB,EAAE,CAAC;QACnC,eAAU,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QACrE,kBAAa,GAA0B,IAAI,CAAC;QAC5C,WAAM,GAAyC,IAAI,CAAC;QAC3C,aAAQ,GAAmB,EAAE,CAAC;QAC/C,uEAAuE;QACtD,gBAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QACjD,+GAA+G;QAC9F,mBAAc,GAAG,CAAC,CAAa,EAAQ,EAAE;YACxD,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,WAAW,IAAI,CAAC,CAAC,CAAC,SAAS,KAAK,eAAe,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC9J,CAAC,CAAC;QACM,mBAAc,GAAG,KAAK,CAAC;QACvB,gBAAW,GAA0B,IAAI,CAAC;QAC1C,gBAAW,GAAmB,IAAI,CAAC;QAE3C,oGAAoG;QAC5F,YAAO,GAAG,KAAK,CAAC;QAItB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC;QAClH,IAAI,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChF,CAAC;IAED,2FAA2F;IACxE,KAAK,CAAC,cAAc;QACrC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC1B,OAAO,KAAK,CAAC,cAAc,EAAE,CAAC;IAChC,CAAC;IAEQ,iBAAiB;QACxB,wFAAwF;QACxF,IAAI,CAAC,OAAO,GAAG,gBAAgB,EAAE,CAAC;QAClC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAChC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC,CAA8B,EAAE,EAAE;YACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzG,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAA8B,EAAE,EAAE;YACtE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,CAAC,CAA+B,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5H,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAA4B,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9F,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC,CAAiC,EAAE,EAAE;YAC7E,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5B,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,IAAY,MAAM;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IACpE,CAAC;IAED,sFAAsF;IAC9E,SAAS;QACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;YAC5F,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;QACjG,CAAC;;YAAM,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/B,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;YACzB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC,EACF,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CACjF,CAAC;IACJ,CAAC;IAEO,UAAU;QAChB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;YAAE,EAAE,EAAE,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACK,cAAc;QACpB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC;QACnC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACnH,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;QAC1H,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACgB,UAAU,CAAC,OAA6B;QACzD,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACzC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACzC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3G,CAAC;IAED,4GAA4G;IACpG,IAAI,CAAC,IAAqB;QAChC,yEAAyE;QACzE,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,EAAE,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3F,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,4FAA4F;IAC5F,IAAY,aAAa;QACvB,OAAO,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IACxG,CAAC;IAED,6FAA6F;IACrF,aAAa,CAAC,EAAW;QAC/B,IAAI,EAAE,KAAK,IAAI,CAAC,cAAc;YAAE,OAAO;QACvC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,EAAE;YAAE,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;;YAC3D,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAClE,CAAC;IAED,2BAA2B;IAC3B,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;IAEQ,oBAAoB;QAC3B,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC7B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAAE,EAAE,EAAE,CAAC;QAC/C,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,oGAAoG;IACpG,QAAQ,CAAC,KAAqB,EAAE,OAA8B,EAAE;QAC9D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAEO,WAAW,CAAC,SAAoB,EAAE,KAAqB;QAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpC,+DAA+D;QAC/D,MAAM,UAAU,GAAG,MAAM,EAAE,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/H,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ;YAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;aACrD,IAAI,CAAC,UAAU;YAAE,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IACtD,CAAC;IAED;;;OAGG;IACK,cAAc;QACpB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;QACjC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO;QAC7C,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK;gBAAE,OAAO;YAC5C,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,KAAK;YAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACzF,CAAC;IAEO,KAAK,CAAC,CAAgB;QAC5B,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;YAClB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC;aAAM,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;YACzB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAmB,YAAY,CAAC,EAAE,KAAK,EAAE,CAAC;QACzE,CAAC;aAAM,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACzD,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAClE,IAAI,GAAG;gBAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,kGAAkG;IAC1F,WAAW;QACjB,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1F,CAAC;IAED,uGAAuG;IAC/F,WAAW;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAEkB,OAAO;QACxB,wDAAwD;QACxD,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI;YAAE,QAAQ,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAA,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,CAAC;QACpG,uHAAuH;QACvH,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,wDAAwD;QACxD,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACpF,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,IAAI;YAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,4FAA4F;YAC5F,IAAI,IAAI,CAAC,aAAa,KAAK,MAAM;gBAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;;gBACtD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,0EAA0E;IAClE,UAAU;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,IAAI,OAAO,cAAc,KAAK,WAAW;YAAE,OAAO;QAC1D,IAAI,IAAI,CAAC,WAAW,KAAK,GAAG;YAAE,OAAO;QACrC,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;;YACjG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;IACzB,CAAC;IAEO,IAAI,CAAC,CAAS;QACpB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,IAAI,CAAC,MAAM;YAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC,EAAE,aAAa,CAAC,CAAC;IACpB,CAAC;IAED,oFAAoF;IAC5E,UAAU,CAAC,MAAc;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,KAAK,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAEQ,MAAM;QACb,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,OAAO,CAAC;QAClD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACjC,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC;QAC1C,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9B,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC;QAC7C,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC/C,OAAO,IAAI,CAAA;;UAEL,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;qDACqB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,yCAAyC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;mBAC7J,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;YACjD,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;;;;YAI7F,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;oCACK,IAAI,CAAC,MAAM,CAAC,MAAM,YAAY,IAAI,CAAC,MAAM,CAAC,MAAM;YACxE,IAAI,CAAC,OAAO;YACZ,CAAC,CAAC,IAAI,CAAA,sCAAsC,GAAG,CAAC,UAAU,CAAC,WAAW,SAAS,EAAE;2BAClE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;8BACnE,CAAC,CAAiC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB;YACvI,CAAC,CAAC,OAAO;YACT,IAAI,CAAC,IAAI,CAAC,MAAM;YAChB,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACpG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;;;+BAGT,IAAI,CAAC,IAAI,YAAY,SAAS,CAAC,GAAG,UAAU,IAAI,CAAC,UAAU,SAAS,GAAG,WAAW,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,SAAS,SAAS,CAAC,IAAI;sBACzI,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;;QAEtC,SAAS;YACT,CAAC,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc,EAAE,oCAAoC,IAAI,CAAC,KAAK,qBAAqB;YACjG,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc,EAAE,oCAAoC,IAAI,CAAC,MAAM,SAAS,SAAS,CAAC,IAAI,SAAS,SAAS,CAAC,IAAI,OAAO,SAAS,CAAC,EAAE;iBACrI,SAAS,CAAC,EAAE,IAAI,WAAW,EAAE,UAAU,SAAS,CAAC,KAAK,YAAY,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,MAAM;kBACjH,SAAS,CAAC,SAAS,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,sBAAsB;gBACnF,CAAC,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE;oCACtE,SAAS,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,oCAAoC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO;iBAChI,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,SAAS;;KAExJ,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,QAAQ,CAAC,GAAY,EAAE,OAAmB;QAChD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACjC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,OAAO,IAAI,CAAA,+BAA+B,QAAQ,CAAC,GAAG,CAAC;+BAC5B,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG;QAClH,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA,gCAAgC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,QAAQ,CAAC,IAAI,CAAC,mCAAmC,IAAI,gBAAgB,CAAC,CAAC,CAAC,OAAO;QAC7J,QAAQ,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;QACjJ,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;+BACnD,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;IAC/J,CAAC;IAED,8EAA8E;IACtE,WAAW;QACjB,OAAO,IAAI,CAAA,oFAAoF,WAAW,EAAE,2BAA2B,SAAS,EAAE,SAAS,CAAC;IAC9J,CAAC;IAED,6GAA6G;IACrG,UAAU;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAA,+BAA+B,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;yBACjF,GAAG,CAAC,OAAO,CAAC,2BAA2B,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC;IACxF,CAAC;IAED,uEAAuE;IAC/D,cAAc;QACpB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;QAC5B,OAAO,IAAI,CAAA,qCAAqC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA,gDAAgD,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC;IACpJ,CAAC;IAEO,UAAU,CAAC,CAAa,EAAE,IAAY;QAC5C,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC;QAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;QACvB,2GAA2G;QAC3G,MAAM,KAAK,GAAG,CAAC,EAAO,EAAkC,EAAE,CACxD,EAAE,KAAK,OAAO;YACZ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,SAAS,CAAC;YAChC,CAAC,CAAC,EAAE,KAAK,SAAS;gBAChB,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,SAAS,CAAC;gBAC1B,CAAC,CAAC,EAAE,KAAK,OAAO;oBACd,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC;oBACnD,CAAC,CAAC,IAAI,CAAC;QACf,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC;IACzJ,CAAC;IAEO,SAAS,CAAC,CAAa;QAC7B,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,IAAI,SAAS,CAAC,GAAG,KAAK,OAAO,IAAI,SAAS,CAAC,GAAG,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC;QAC7E,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,OAAO,IAAI,CAAA;sBACO,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAG,CAAC,CAAC,MAA4B,CAAC,KAAK,EAAE,CAAC;qCAC9G,CAAC,SAAS,CAAC,IAAI,IAAI,GAAG,CAAC,WAAW,CAAC;UAC9D,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAA,qBAAqB,CAAC,KAAK,SAAS,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC;;2BAE9D,GAAG,CAAC,QAAQ,CAAC,eAAe,GAAG,CAAC,aAAa,CAAC,oBAAoB,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,WAAW,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;iBAC3L,CAAC,CAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC,CAAC,MAA2B,CAAC,KAAK,CAAC;2BACnD,SAAS,CAAC,GAAG,KAAK,SAAS;YAC9C,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;YACpB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA,GAAG,KAAK,QAAQ,CAAC;WACrD,CAAC;IACV,CAAC;;AA3boC;IAApC,QAAQ,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;0CAAc;AAOf;IAAlC,QAAQ,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;4CAAgB;AAUtC;IAAX,QAAQ,EAAE;0CAAiC;AAOhC;IAAX,QAAQ,EAAE;4CAAoC;AAKnC;IAAX,QAAQ,EAAE;sCAAU;AAKT;IAAX,QAAQ,EAAE;yCAA0B;AAQzB;IAAX,QAAQ,EAAE;wCAA8B;AAEG;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;uCAAc;AAExC;IAAhB,KAAK,EAAE;uCAAgC;AACvB;IAAhB,KAAK,EAAE;4CAA+B;AACtB;IAAhB,KAAK,EAAE;6CAA4B;AAEnB;IAAhB,KAAK,EAAE;yCAAsC;AAEvB;IAAtB,KAAK,CAAC,MAAM,CAAC;uCAA4B;AACd;IAA3B,KAAK,CAAC,WAAW,CAAC;yCAA2B;AACpB;IAAzB,KAAK,CAAC,SAAS,CAAC;yCAAoC;AACrB;IAA/B,KAAK,CAAC,eAAe,CAAC;yCAA8B;AAtE1C,SAAS;IAFrB,aAAa,CAAC,YAAY,CAAC;IAC3B,SAAS,EAAE;GACC,SAAS,CA2crB"}
@@ -0,0 +1,71 @@
1
+ import { type HostSummary, type RunSummary } from '@contraagent/api';
2
+ import { LitElement } from 'lit';
3
+ import type { Page } from '../../core/view-route.js';
4
+ /**
5
+ * The run switcher: runs grouped by recency, searchable, keyboard driven. A
6
+ * dialog: its search field (a combobox) holds the focus while it is open (Tab
7
+ * stays in it), and the arrow keys move through the list
8
+ * (`aria-activedescendant`). Sends `ca-select-run` for a pick and `ca-close`
9
+ * when it should be closed (Escape, or a pick); the host returns the focus.
10
+ *
11
+ * While nothing is searched, the first options are the pages of no run: the
12
+ * trends, and on a hub the hosts. On a hub (`hub`), the runs are grouped by host,
13
+ * each group headed by its host's state; a host filter (a select, the dialog's
14
+ * second Tab stop) shows one host's runs.
15
+ *
16
+ * @fires ca-select-run - `{run}`: a run was picked
17
+ * @fires ca-navigate - `{page, run: ''}`: a page of no run was picked (`trends`, or on a hub `hosts`)
18
+ * @fires ca-close - the picker should close
19
+ */
20
+ export declare class CaRunPicker extends LitElement {
21
+ static styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
22
+ runs: RunSummary[];
23
+ /** The run shown now. */
24
+ current: string;
25
+ open: boolean;
26
+ /** The runs come from many hosts (`Info.hosts`): group them by host, with a host filter and the hosts page. */
27
+ hub: boolean;
28
+ /** The host list (a hub). */
29
+ hosts: HostSummary[];
30
+ /** The page of no run shown now (`trends`, `hosts`; it is the current option); '' while a run is shown. */
31
+ page: Page;
32
+ private q;
33
+ /** A hub: only this host's runs; '' for every host. */
34
+ private host;
35
+ /** The keyboard's place in the visible list; -1 for none. */
36
+ private kb;
37
+ private input;
38
+ private select;
39
+ connectedCallback(): void;
40
+ protected willUpdate(): void;
41
+ protected updated(changed: Map<string, unknown>): void;
42
+ /**
43
+ * The runs the search and the host filter leave, in groups, in list order:
44
+ * by host on a hub, each headed by its host's id, its state (attention once
45
+ * its reports stopped) and how many of its runs are listed; else by recency.
46
+ * Each group: its accessible name, its header, its runs.
47
+ */
48
+ private groups;
49
+ /** A run, or a page of no run. */
50
+ private pick;
51
+ private close;
52
+ /** The dialog's keys: Escape closes; Tab stays in the dialog, between the search field and (on a hub) the host filter. */
53
+ private onDialogKey;
54
+ /** The search field's keys: the arrow keys move through the options, Enter picks one. */
55
+ private onKey;
56
+ render(): import("lit").TemplateResult<1>;
57
+ /** The host filter: every host with runs. */
58
+ private hostFilter;
59
+ /** Tasks by how they ended, as the run's own page counts them, and how long it took: one line. */
60
+ private counts;
61
+ /** The run's state where its age goes: running, no report from its host (a hub), or how long ago it was last active. */
62
+ private when;
63
+ /** An option: a run, or a page of no run. */
64
+ private item;
65
+ }
66
+ declare global {
67
+ interface HTMLElementTagNameMap {
68
+ 'ca-run-picker': CaRunPicker;
69
+ }
70
+ }
71
+ //# sourceMappingURL=ca-run-picker.d.ts.map